RAID 0 (striping) con due dischi rigidi SSD ha senso?


9

Ho un notebook (Dell M6500, 16GB Ram, I7-940M) con controller RAID (controller raid hardware). Al momento ho due HDD SATA in RAID 0 (stripe) per le migliori prestazioni.

Voglio comprare SSD (Samsung 840 pro).

RAID 0 (striping) con due dischi SSD ha senso o è sufficiente un solo disco?

Quindi 1 ssd da 512 GB (nessun raid) o 2 ssd da 256 GB (raid 0 stripe)?


1
È uno spreco, rovinando le latenze facendo ciò, che è in primo luogo una delle ragioni principali dell'SSD.
nerdwaller,

No. Il sistema operativo richiede 2 SSD anziché due HDD. Non vedo menzione del mixaggio di un HDD e un SSD in una striscia.
Hennes,

Quanta velocità è sufficiente? Sembri abbastanza esperto da provarlo tu stesso! Salva i tuoi dischi rigidi e prova le installazioni con uno o 2 SSD. Vedi se questo fa la differenza. Ricorda che se un SSD fallisce, perderai tutti i dati sul volume se esegui lo striping.
G Koe,

Oops, ho letto male la domanda.
allquixotic,

So che in una configurazione stripe se un SSD fallisce, perderò tutti i dati sul volume (voglio prestazioni, per il backup ho un'altra soluzione). Proprio come ora (2 dischi in raid 0 stripe). La domanda è se le prestazioni migliori sono 1 ssd da 512 GB (nessun raid) o 2 ssd da 256 GB (raid 0 stripe).
Andrea

Risposte:


12

Devi leggere correttamente la domanda.

Sta chiedendo di RAID0 STRIPE, non di RAID1 MIRROR.

La mia risposta: SÌ, avrai un significativo miglioramento della velocità.

rif: http://staff.science.uva.nl/~delaat/rp/2009-2010/p30/presentation.pdf

Velocità: Le mie stazioni di lavoro eseguono Linux Mint utilizzando il software raid (mdadm) e eseguo 4 unità in una striscia con XFS come filesystem. Una volta che ti siedi su tale workstation, non vuoi tornare ai vecchi tempi con UN disco piatto.

Effettua il backup giornaliero della tua workstation con backup incrementale, settimanalmente un backup completo nel caso in cui un SSD si blocchi.

La tua velocità è ottima ma se ONE ssd si blocca, perdi molti dati. Quindi sei avvisato.

Eseguire il backup e utilizzare il cloud per archiviare file aggiuntivi.

Archiviazione: il mio NAS sta semplicemente eseguendo FreeBSD ZFS ZRAID2 per l'archiviazione con 2 + 4 unità da 3 TB, quindi ho 12 TB e 2 unità da 3 TB forniscono ridondanza, quindi posso perdere 2 unità alla volta senza perdere dati. Il mio NAS funziona su unità normali.

ZFS è attualmente il miglior filesystem per i dischi, sicuramente per l'archiviazione. Puoi cercare FreeBSD o una soluzione software NAS dedicata come FreeNAS, ZFSguru, NexentaStor ... Ho scelto ZFSguru perché mi piace rovinare il sistema FreeBSD. Uso le condivisioni iSCSI e SMB / NFS su di esso.

server:

Il mio preferito è usare i piatti per ZFS e usare SSD per ZIL in ZFS. Ma è arte oscura.

NOTA 1:

Cerca di evitare i raid hardware, in caso di guasto Devi avere di nuovo lo stesso hardware. Non utilizzare i controller raid economici sulle schede madri dei clienti. Prova a utilizzare il raid software supportato dal sistema operativo, solo per motivi di recupero, poiché il sistema operativo ha più modi di gestire il raid come il software di raid più scadente in quei controller hardware.

NOTA 2:

Quando si utilizza ZFS, evitare a tutti i costi i controller raid hardware. Cerca schede madri con abbastanza porte SATA per collegare le tue unità. Esistono controller dedicati senza funzionalità raid.

Imposta il raid usando ZFS

NOTA 3:

Gli SSD non si ridimensionano più dopo 4 dischi Gli HDD continuano a ridimensionarsi dopo 5 dischi

NOTA 4:

Esistono diversi tipi di SSD

Hai SSD SLC e MLC. I primi sono i più costosi ma i più veloci e i migliori per le operazioni di lettura / scrittura pesanti.


3

Sì, la velocità di scrittura aumenta. Sto eseguendo un raid 0 su 4 SSD a 30 GB ciascuno, la mia velocità di scrittura spinge a 600 Mbps. Presto eseguirò l'aggiornamento a 2x 256 unità SSD Raid 0 SSD SATA3, con un solo disco che gira a 300 Mbps, quindi dipende da te, dipende anche da la valutazione SATA se hai 2 SSD SATA 3 puoi scrivere anche 900MbPS ma ciò richiede anche una configurazione Raid 0. Quindi dipende completamente da te se preferisci esibirti. Sì, è più veloce e sì, perderai tutti i dati, ma se è solo per i giochi puoi ricostruirli in meno di un giorno. Inoltre, se le tue opzioni fossero di ottenere 2 SSD da 256 GB o 1x SSD da 512, sceglierei l'SSD da 2x 256, per velocità di scrittura molto più elevate.


1
Inoltre, le velocità di scrittura hanno un limite massimo a seconda della classificazione SATA, ma puoi sempre andare con i dischi rigidi PCI OCZ per le prestazioni. : D
Eryper

2

Ecco il test che ho fatto. puoi decidere tu stesso guardando il risultato.

ambiente

  • CPU: CPU Intel Xenon E5-2650 v3 a 2,30 GHz (core 10, processore logico 20)
  • RAM: 32 GB
  • File: sample.rar (dimensione 13,5 GB)
  • Windows 10

Test

La mia workstation include.

  • 2x SSD da 1 TB configurati come unità RAID0
  • Disco rigido da 1 TB
  • Terminale Cygwin usato cpe timecomandi
  • Se non siete famiglie con timecomando, usa "tempo reale" per confrontare ogni caso

Ecco il tempo di copia del file per ogni situazione

Da RAID0 a RAID0

real    0m17.089s
user    0m0.140s
sys     0m10.686s

Da RAID0 a HDD

real    1m25.302s
user    0m0.437s
sys     0m21.078s

Da HDD a HDD

real    1m17.935s
user    0m0.265s
sys     0m14.921s

Da HDD a SSD

real    1m29.908s
user    0m0.359s
sys     0m13.281s

Nota: nella mia stazione di lavoro utilizzo questa unità RAIDO per compilare progetti C ++ / C # di grandi dimensioni da 150 GB. Questo mi ha fatto risparmiare più di due ore a causa della configurazione RAID0. Se hai bisogno di come configurare RAID0, dai un'occhiata al post sul blog che ho scritto http://codeketchup.blogspot.sg/2016/03/how-to-setup-raid-0-with-ssd.html


1
È difficile dire se i risultati qui sono dovuti allo striping o alle prestazioni SSD vs HDD. Per completezza, è necessario includere SSD senza striping su SSD.
Drew Noakes,

1

Sebbene sia possibile RAID 0 due SSD e in alcuni scenari vedere velocità di lettura / scrittura molto più elevate (vedere questa recensione da TechReport per un esempio estremo con 4 unità in RAID 0). Un singolo SSD offrirà prestazioni abbastanza buone che non lo consiglierei. Due unità in RAID 0 significano che se una di esse fallisce, perderai tutti i tuoi dati.

TechReport ha anche questa recensione confrontando il ridimensionamento SSD in una famiglia di unità che può aiutare a confrontare il delta delle prestazioni con unità più grandi.

Gran parte della risposta a questa domanda dipenderà dall'uso previsto. Sviluppo, fotoritocco, giochi, ecc. Possono avere diversi modelli di accesso allo storage. La scommessa migliore legge le recensioni sui migliori siti tecnologici.


Con Dropbox e altre buone pratiche di backup / gestione dei dati, perdere il mio disco rigido primario non mi dà molto fastidio.
James Mertz,

0

Il mio computer di lavoro è un Dell M6500 e sto eseguendo un SSD Corsair da 240 GB. L'M6500 ha un'interfaccia SATA 2, quindi non si ottiene la massima velocità delle unità SATA 3. Dirò che è molto più veloce del mio personal computer, un M6400 con 2 hdd da 160 GB in una striscia RAID 0. Credo che vedresti un impulso con 2 SSD, ma non il doppio di quello che otterresti con 1 solo SSD.


0

stai cercando la velocità e non ti importa della ridondanza ... quindi risponderò solo a questo. Il raid 0 può offrire lievi miglioramenti, quindi se il costo di 2 SSD da 256 GB non è diverso da 1 SSD da 512 GB, procedi.


0

Ciò richiede un parere, ma:

Ha senso se il tuo obiettivo è una prestazione pura per un singolo volume.

Se non ha senso se:

  1. L'accesso al disco è abbastanza veloce (e anche un singolo SSD moderno sarà abbastanza veloce per quasi tutto. Soprattutto se gli altri potenziali colli di bottiglia sono componenti del laptop).
  2. Se hai bisogno di un consumo minimo di energia (farai causa in continuazione a due unità. Un SSD consuma meno energia di un HDD, ma sarà comunque più che in modalità sleep / standby).
  3. Se è necessaria l'affidabilità (Ma poi di nuovo, lo stesso vale per due dischi rotanti in un RAID 0 / stripe)

Tutto questo presuppone che "con uno sufficiente" intendi "È sufficiente un SSD (non in uno stripe). La miscelazione di un SSD e un HDD dovrebbe tecnicamente funzionare, ma a seconda del RAID potrebbe produrre il peggio di entrambi i mondi.


0

2X o Nx possono accelerare solo se non saturi il bus, alcune schede madri condividono la banda con tutte le porte sata che hanno, mentre altre ti permettono di raggiungere quella banda con ciascuna porta contemporaneamente.

E ricorda ... la velocità di lettura non è la stessa della velocità di scrittura ... normalmente la velocità di scrittura è molto più lenta della lettura (prova a scrivere velocemente su un SSD 32GiB di fila) la maggior parte di essi andrà molto velocemente di alcuni megabyte e poi scendono a 25MiB / s o meno (usano la cache interna con una memoria DDR3 all'interno dell'SSD, una volta riempiti non possono continuare a ricevere dati ad una velocità così alta, quindi le scritture diventano più lente).

A volte devi fare benchmark, se vuoi un avvio veloce (leggere è importante, non scrivere così tanto), se vuoi scrivere file enormi con dati casuali assicurati che il tuo benchmark scriva almeno qualche GiB il più velocemente possibile, alcuni SSD hanno 1 o 2 GiB di RAM all'interno dell'SSD per la cache di scrittura ... quindi meglio riempirla per fare il benchmark.

Informazioni sugli IOP: questa è la cosa più importante in QUALSIASI tipo di archiviazione (usb, stick, dischi piatti, ssd, ecc.), Ad esempio per file di piccole dimensioni, o meglio, per piccoli blocchi di dati scritti / letti, assicurarsi (per SSD ) dice più di ... valore.

Ora rispondi alla tua domanda: -Se il 'grande' ha meno di 2x di IOP rispetto a uno di 'piccoli', non comprare il 'grande' ... acquista quello che ti dà gli IOP 'max'

Credetemi, gli IOP sono molto più importanti delle velocità di lettura / scrittura che arrivano in "specifiche" ... perché: -sono che il valore più alto raggiunto (per la velocità di scrittura usano RAM interna sull'SSD e non scrivono abbastanza dati per riempire esso ... e alcuni usano anche la RAM del PC come cache di scrittura, quindi dicono una certa velocità di scrittura di GiB / s, tale velocità è la RAM principale del PC, i dati non sono ancora a filo sull'SSD)

ORA, per tutti quelli che dicono Raid0 ti faranno perdere ...

Se lo fai, nulla si perde: 1.- Usa RAID 0 per il sistema operativo 2.- Crea un clone del sistema operativo su un contenitore USB (meglio se USB 3.1 Gen 2 ... 10Gib / s)

Se un disco si guasta, si estrae quello guasto, si inserisce uno nuovo, si ripristina il clone e in pochi minuti il ​​sistema si riavvia.

Ora come rendere veloce l'avvio anche dopo che uno o più dischi su un RAID 0 muoiono: 1.- Dopo aver ottenuto il sistema operativo come desideri, crea un clone su USB 2.- Elimina che due o più dischi in RAID 0 e metterli in un luogo sicuro 3.- Mettere sul PC nuovi e recuperare il clone

Quando un disco muore, hai gli altri pronti per essere posizionati e avviati ... solo pochi secondi per fare lo scambio e riavviare ... quindi creare un altro set per metterlo in un posto sicuro.

Funziona con qualsiasi tipo di RAID software Linux ... Dischi piatti e anche SSD.

Il costo: avere il doppio dei dischi ... alcuni funzionanti, altri preparati con i dati e pronti per l'avvio da essi.

Ora per i dati (non di sistema) in RAID 0 e zero zero in caso di errore (tranne le modifiche apportate prima del backup): 1.- Dopo ogni scrittura, eseguo il backup delle modifiche su supporto esterno (uso personalmente 5 copie diverse in diversi tipi di supporto , SSD, disco fisso, dvd, schede di memoria e chiavette USB) 2.- Prima di spegnere il sistema assicurarsi che i backup siano sincronizzati

Ricorda che RAID 0 è ottimo per la "velocità" mentre lo usi ... ma qualsiasi errore e tutto ciò che è SOLO si perderà (la chiave è quella parola: SOLO).

Pensa di avere un clone del sistema su una custodia USB esterna ... perdere il sistema non è un problema, avvia un Live Linux e ripristina il clone sullo stesso disco (errore software del case) o su nuovi diks (errore hardware del case).

Pensa di avere tutti i tuoi dati su alcuni BackUP (più di una copia), perdere i dati all'interno dell'inseguimento non è un problema, copia semplicemente i dati dal BackUP dopo aver risolto la causa del fallimento (sostituisci i dischi, ecc.).

Ora pensa anche che non vuoi aspettare una simile 'copia indietro' ... che può essere fatta avendo un secondo set di dischi in uno stato pronto per l'uso.

E infine pensa a ... dopo un fallimento, mentre lavori fai un'attività in background per ricreare questo secondo set di "pronto per l'uso".

Se prendi questo habbit ... non userai mai più Linux RAID 0 ...

... tranne quando hai molta RAM e puoi usare ZFS.

Guadagni principali di ZFS: 1.- Checksum in lettura / scrittura, quindi in grado di rilevare le modifiche ai bit in stato spento 2.- Ha un parametro che può farti avere più di una copia di ogni file o cartella che desideri (con e senza livelli RAIDZ ) 3.- Se puoi permetterti di perdere il 50% o più dello spazio, puoi utilizzare copie ZFS = N su un solo disco (notebook) e nel caso in cui alcuni dati vengano danneggiati mentre sono in modalità off, ZFS può comunque leggere correttamente (esso memorizza più copie sullo stesso disco) ... inoltre puoi usarlo in parallelo con livelli RAIDZ di ZFS .. sta facendo più ridondanza.

Copie ZFS = N è come il vecchio livello RAID 1 ma con checksum e correzione automatica in caso di rilevamento di dati errati.

Avvertenza su ZFS: il bit della RAM non riesce su alcune parti ZFS può rovinare tutto ZFS e perdere tutti questi dati ... quindi non usare mai uno solo uno ZFS per archiviare i dati ... avere il backup di tutti e averlo sempre.


0

Non avevo testato mdadmo hardware raid0, ma ho provato con stripping LVM.

La risposta breve è che la velocità di lettura combinata è inferiore rispetto a un solo spead di lettura SSD, se si utilizzano strisce corte (per banda eample 4KiB).

Sembra una condizione di gara, sembra che LVM stia inviando una richiesta di blocco a ciascun SSD alla volta, non in parallelo.

Pertanto, se il tempo necessario per elaborare la richiesta è maggiore di quello necessario all'SSD per inviare i dati alla RAM, 2 o più SSD non invieranno i dati alla RAM, saranno per lo più in attesa di comandi ed elaborando tali comandi.

Solo quando comincio a inserire strisce di grandi dimensioni, la velocità di lettura combinata inizia ad andare più in alto rispetto al singolo SSD e amo parlare di strisce da 1 MiB; il guadagno era circa da 1,3 a 1,5 volte più veloce con 2xSSD di un solo.

Quindi, prima, controlla quanto è buono il tuo SSD in 4KiB con una profondità di coda di uno, se è davvero buono, non provare a spogliarlo con strisce di piccole dimensioni, meglio non fare lo stripping.

Avevo anche testato in due processi paralleli, entrambi i ddcomandi per vedere se la lettura da entrambi allo stesso tempo ne riduce la velocità, la riduzione è minima.

Quindi è molto meglio usarli per cose diverse (OS / APPS) piuttosto che rimuoverli.

Se i dischi non erano SSD ma rotazionali, lo striping ottiene un enorme guadagno.

È in qualche modo che il sistema operativo invia la richiesta a un disco alla volta e mentre il sistema operativo invia la richiesta al disco successivo nel set di stripping, il precedente ha inviato tutti i dati a ram in tale momento, quindi deve attendere senza fare nulla, in attesa per la prossima richiesta.

Quindi penso che la banda LVM sia mal implementata e possa essere migliorata inviando una coda di richieste di strisce, quindi ogni SSD ha più dati da inviare a ram su ogni richiesta.

L'equazione matematica è: il tempo di iniziare a inviare i dati rispetto al tempo di inviare i dati al ram.

Se la prima parte è maggiore della seconda parte dell'equazione, lo stripping rende le cose più lente rispetto al solo utilizzo di una, per ottenere un miglioramento davvero grande la seconda parte dell'equazione deve essere molto più grande della prima parte.

Per GOOD SSD, la prima parte (su LVM) è più grande della seconda parte. Per l'HDD a rotazione BUONA, la prima parte (su LVM) è molto più piccola della seconda parte.

Questo si basa sui miei test fatti con LVM2 su due SSD veloci (> 35Mib / S su 4KiB con una profondità di coda di uno), ho testato con strisce di 4KiB fino a 1MiB; fino alla dimensione della striscia di 128 KiB la velocità combinata era inferiore rispetto all'utilizzo di un solo SSD, quindi la velocità combinata è un po 'più grande fino a 1 MiB che era il massimo (1,3 volte più veloce con 2 SSD rispetto a uno solo)

Quindi solo un guadagno del 30%, mentre se li uso in parallelo su compiti diversi (non striping) ho un guadagno del 96% (posso usare la velocità di lettura del 98% su ciascuno contemporaneamente).

Detto questo in numeri, una lettura lineare SSD a 386 MiB / s, lettura lineare a strisce 2xSSD LVM2 4KiB a 186 MiB / s, quindi è molto, molto più lenta rispetto all'utilizzo di un solo SSD; 2xSSD LVM2 1MiB striscia lineare letta a 487MiB / s; lettura lineare da entrambi allo stesso (senza stripping) in un processo diverso ottengo 374 MiB / s da ciascuno, quindi combinato è 2x374 = 738 MiB / s

Quindi la mia conclusione sulla base dei risultati dei test è: con LVM2 il guadagno è molto basso su dimensioni di strisce enormi (1 MiB) e una grande perdita con dimensioni di strisce normali (4KiB fino a 64 KiB).

Nota che ho letto con il ddcomando dal dispositivo di massa (/ dev / sda, / dev / sdb) e dal volume logico di massa (/ dev / mapper / test-test), con status=progresse una dimensione del blocco di 1 MiB con un conteggio di 10000, quindi ho letto 10GiB; e faccio un riavvio dopo ogni test per evitare completamente le cache, ecc.

Uso SystemRescueCD versione live di Linux per evitare differenze di riavvio, come l'avvio da un disco non modificabile (supporto di sola lettura).

Spero che un giorno diventerò noto per usare Linux mdadmper testare con un raid software.


0

tl; dr benchmarking di base suggerisce che RAID 0 (striping) può migliorare significativamente il throughput per le unità SSD.

Configurazione benchmark

  • 2 SSD da 1 TB (SanDisk X600 SD9TB8W-1T00-1001, unità con crittografia automatica da 2,5 "7 mm)
  • Windows 10, software RAID
  • Workstation Lenovo P720, Intel Xeon Silver 4110 2.10GHz
  • ATTO Disk Benchmark 4.00.0f2

RAID 0 (striping)

inserisci qui la descrizione dell'immagine

RAID 1 (mirroring)

inserisci qui la descrizione dell'immagine

Disco singolo

inserisci qui la descrizione dell'immagine


-1

Penso che sia una domanda difficile a cui rispondere. Se stavi parlando di un PC desktop con un buon controller raid hardware, otterrai sicuramente prestazioni migliori. In un laptop che esegue un raid software, potresti scoprire di creare un collo di bottiglia nella CPU che impedirà gran parte delle prestazioni. A seconda dell'età del laptop, è possibile che le prestazioni siano limitate dal bus SATA se è in esecuzione SATA II che può essere sfruttato al massimo da un moderno SSD. Ho il sospetto che otterresti un aumento delle prestazioni ma forse non abbastanza per giustificare lo sforzo, non lo saprai a meno che non lo provi.


Ho un laptop con controller raid hardware.
Andrea

Ciò renderà sicuramente più probabile che tu abbia una spinta.
Col
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.