Perché RAID 1 "Mirroring non fornisce miglioramenti delle prestazioni"?

4

Ho sempre usato RAID software, forniti da Apple, o tramite SoftRAID, ecc. Sto per ri-zhuzh i miei array e ho deciso di fare una piccola ricerca in anticipo ... e sul sito di Apple, c'è una dichiarazione, chiaro come giorno ...

RAID 1 (mirroring) per ridondanza del disco

Mirroring improves reliability by writing the same data to two or more disks. If one hard drive mechanism should fail, the second disk still contains all the data. At least two hard drives are required for mirroring. Mirroring does not provide performance improvements. If the hard disks are not the same capacity, the smaller size will be the amount of disk space used on both drives. Disk Utility determines this automatically.

Ho sempre avuto l'impressione che, poiché ci sono DUE platters per le operazioni READ, che le prestazioni READ con un mirror RAID1 2-Drive sarebbero un po 'migliorate . Ciò contrasta con la velocità di scrittura, che rimane lo SAME, poiché le unità devono scrivere gli stessi dati al momento del commit, in modo da sostenere una copia speculare dei dati. Tuttavia, durante la lettura, avevo pensato che l'array agisse in modo simile a un RAID0, che strisciava le letture su entrambe le unità .

In che modo RAID1 è supposto funzionare? Se è così, è Apple ..

  1. solo dicendo che non c'è improvvisazione per coprire i loro asini, o
  2. in realtà non stanno implementando il RAID 1 nella sua piena estensione? (SoftRaid 4.3 afferma di farlo?)

Secondo Wikipedia ...

In RAID 1 (mirroring without parity or striping), data is written identically to two drives, thereby producing a "mirrored set"; … The array continues to operate as long as at least one drive is functioning. With appropriate operating system support, there can be increased read performance, and only a minimal write performance reduction;…

Quindi è possibile, ma Apple dice che non c'è alcun vantaggio sulla velocità ... Ma in pratica, c'è un aumento misurabile della velocità delle letture con Software Raid 1 (tramite Utility Disco)?

    
posta alex gray 15.04.2012 - 23:24
fonte

4 risposte

3

La mia ipotesi sarebbe che Apple preferisca che una sola unità gestisca solo i processi di scrittura come backup e lettura / scrittura da chiunque consideri l'unità principale. Per quanto riguarda il motivo, non ne ho assolutamente idea. Sembra un po 'come una grande supervisione da parte loro. Ho sempre avuto la sensazione che il RAID software sia piuttosto basso nell'elenco delle priorità di Apple.

    
risposta data 15.04.2012 - 23:42
fonte
2

Questi sono quelli che chiamiamo dettagli di implementazione.

Puoi implementare RAID 1 in vari modi, Apple sceglie di implementarlo in un modo che non richiede guadagni di velocità.

    
risposta data 09.07.2013 - 14:43
fonte
2

Per ridondanza e prestazioni Apple ti guida verso RAID 10. Ho costruito un array di 4 dischi facendo una coppia di dischi a strisce specchiati che poi ho convertito in un volume di archiviazione principale per facilitare l'espansione successiva e FileVault.

Posso vedere i dati scritti su entrambe le strisce con iostat ma quando leggo, presumibilmente questo è astratto di cs , poiché vedo zero byte che escono dagli stessi dispositivi in lettura. Activity Monitor mostra il throughput di letture e scritture su tutti i volumi, iostat non mi consente di utilizzare un volume cs come dispositivo.

Se sei curioso di sapere come impostare il mio set RAID, il mio nome del volume finale sarà 'cornballer', così ho chiamato i dispositivi a strisce 'cb1' e 'cb2'.

Utility RAID Utility disco

AppleRAID sets (3 found)                                                                                                                                                                                                             [16/1799]
===============================================================================
Name:                 cbs1
Unique ID:            1E127495-1FDE-4521-A941-5E5DC31245DD
Type:                 Stripe
Status:               Online
Size:                 2.0 TB (1999721791488 Bytes)
Rebuild:              manual
Device Node:          -
-------------------------------------------------------------------------------
#  DevNode   UUID                                  Status     Size
-------------------------------------------------------------------------------
0  disk5s2   AA501823-4955-473B-A27E-0EEA9E75072A  Online     999860895744
1  disk6s2   A6486548-3E07-4C0F-8F88-BE909D23DC22  Online     999860895744
===============================================================================
===============================================================================
Name:                 Untitled
Unique ID:            C9E220C8-418B-4BF4-81A2-627CC95AB7B4
Type:                 Mirror
Status:               Online
Size:                 2.0 TB (1999721758720 Bytes)
Rebuild:              automatic
Device Node:          disk9
-------------------------------------------------------------------------------
#  DevNode   UUID                                  Status     Size
-------------------------------------------------------------------------------
0  -none-    1E127495-1FDE-4521-A941-5E5DC31245DD  Online     1999721758720
1  -none-    2B52C67D-801E-4481-A76B-F98FF28C13B5  Online     1999721758720
===============================================================================
===============================================================================
Name:                 cbs2
Unique ID:            2B52C67D-801E-4481-A76B-F98FF28C13B5
Type:                 Stripe
Status:               Online
Size:                 2.0 TB (1999721791488 Bytes)
Rebuild:              manual
Device Node:          -
-------------------------------------------------------------------------------
#  DevNode   UUID                                  Status     Size
-------------------------------------------------------------------------------
0  disk7s2   890A3BB9-94CB-4E02-8580-5F16D94890FF  Online     999860895744
1  disk8s2   71C4DE7E-6EC2-4660-9CDA-0ED31574925D  Online     999860895744
===============================================================================

Memoria principale:

CoreStorage logical volume groups (2 found)
|
+-- Logical Volume Group FA60C2D3-1129-46B1-BE53-5BC7882904EB
|   =========================================================
|   Name:         lindsayLVG
|   Status:       Online
|   Size:         1999721758720 B (2.0 TB)
|   Free Space:   0 B (0 B)
|   |
|   +-< Physical Volume C9E220C8-418B-4BF4-81A2-627CC95AB7B4
|   |   ----------------------------------------------------
|   |   Index:    0
|   |   Disk:     disk9
|   |   Status:   Online
|   |   Size:     1999721758720 B (2.0 TB)
|   |
|   +-> Logical Volume Family 135BA843-4D11-4DBE-82A4-4155B38FCC9D
|       ----------------------------------------------------------
|       Encryption Status:       Unlocked
|       Encryption Type:         AES-XTS
|       Conversion Status:       Complete
|       Conversion Direction:    -none-
|       Has Encrypted Extents:   Yes
|       Fully Secure:            Yes
|       Passphrase Required:     Yes
|       |
|       +-> Logical Volume CC7C3863-D3EE-495C-BDD5-06223560E072
|           ---------------------------------------------------
|           Disk:               disk16
|           Status:             Online
|           Size (Total):       1999402983424 B (2.0 TB)
|           Size (Converted):   -none-
|           Revertible:         No
|           LV Name:            cornballer
|           Volume Name:        cornballer
|           Content Hint:       Apple_HFS
|
    
risposta data 09.07.2013 - 17:12
fonte
1

Questa mancanza di prestazioni del miglioramento della lettura da un RAID-1 a 2 dischi è sicuramente una decisione di progettazione. Ho letteralmente misurato quasi il doppio del throughput di lettura sui sistemi OpenVMS con il software RAID-1, in particolare con i controller separati per ogni membro del set Mirror (che, FYI, OpenVMS chiama Shadow-set).

FYI: se il tuo obiettivo è solo migliorare la velocità di lettura, puoi farlo con un singolo controller (o canale I / O) che è più del doppio della velocità delle singole unità in Mirror (RAID-1); tuttavia, con i controller separati (canali I / O) si ottiene anche un po 'meglio tolleranza agli errori ... purché il sistema operativo supporti le operazioni continue quando un controller si guasta.

    
risposta data 20.10.2014 - 04:22
fonte

Leggi altre domande sui tag