Tolleranza di errore ed efficienza di archiviazione in Spazi di archiviazione direttaFault tolerance and storage efficiency in Storage Spaces Direct

Si applica a: Windows Server 2016Applies to: Windows Server 2016

Questo argomento presenta le opzioni di resilienza disponibili in Spazi di archiviazione diretta e descrive i requisiti di scalabilità, l'efficienza di archiviazione, nonché i compromessi e i vantaggi generali di ogni soluzione.This topic introduces the resiliency options available in Storage Spaces Direct and outlines the scale requirements, storage efficiency, and general advantages and tradeoffs of each. Fornisce anche alcune istruzioni di base, nonché riferimenti a interessanti documenti, blog e contenuti aggiuntivi per ottenere altre informazioni.It also presents some usage instructions to get you started, and references some great papers, blogs, and additional content where you can learn more.

Se conosci già Spazi di archiviazione, puoi passare alla sezione Riepilogo.If you are already familiar with Storage Spaces, you may want to skip to the Summary section.

PanoramicaOverview

Al suo cuore, spazi di archiviazione sta per fornire la tolleranza di errore, spesso denominata "resilienza", per i dati.At its heart, Storage Spaces is about providing fault tolerance, often called 'resiliency', for your data. L'implementazione è simile a RAID, ad eccezione del fatto che la distribuzione avviene nei server e l'implementazione nel software.Its implementation is similar to RAID, except distributed across servers and implemented in software.

Come con RAID, ci sono diverse modalità d'uso di Spazi di archiviazione, che comportano compromessi diversi tra tolleranza di errore, efficienza di archiviazione e complessità di calcolo.As with RAID, there are a few different ways Storage Spaces can do this, which make different tradeoffs between fault tolerance, storage efficiency, and compute complexity. Questi rientrano in due categorie:' mirroring ' è parità', il secondo a volte denominato ' cancellazione codifica '.These broadly fall into two categories: 'mirroring' and 'parity', the latter sometimes called 'erasure coding'.

MirroringMirroring

Il mirroring fornisce tolleranza di errore grazie alla presenza di più copie di tutti i dati.Mirroring provides fault tolerance by keeping multiple copies of all data. Questa opzione è analoga a RAID-1.This most closely resembles RAID-1. Il modo in cui i dati vengono sottoposti a striping e posizionati non è semplice (vedere questo Blog per saperne di più), ma è assolutamente vero che tutti i dati archiviati con il mirroring vengono scritti, nel suo complesso, più volte.How that data is striped and placed is non-trivial (see this blog to learn more), but it is absolutely true to say that any data stored using mirroring is written, in its entirety, multiple times. Ogni copia viene scritta in un hardware fisico diverso (unità diverse in server diversi) che si presume abbiano esito negativo in modo indipendente.Each copy is written to different physical hardware (different drives in different servers) that are assumed to fail independently.

In Windows Server 2016, spazi di archiviazione offre due tipi di mirroring: "bidirezionale" e "a tre vie".In Windows Server 2016, Storage Spaces offers two flavors of mirroring – 'two-way' and 'three-way'.

Mirroring a 2 vieTwo-way mirror

Il mirroring a 2 vie scrive due copie di tutti gli elementi.Two-way mirroring writes two copies of everything. L'efficienza di archiviazione è pari al 50%: per scrivere 1 TB di dati sono necessari almeno 2 TB di capacità di archiviazione fisica.Its storage efficiency is 50% – to write 1 TB of data, you need at least 2 TB of physical storage capacity. Analogamente, sono necessari almeno due ' domini di errore hardware ' : con spazi di archiviazione diretta, ovvero due server.Likewise, you need at least two hardware 'fault domains' – with Storage Spaces Direct, that means two servers.

mirroring a 2 vie

Avviso

Se sono presenti più di due server, è consigliabile usare invece Mirorring a tre vie.If you have more than two servers, we recommend using three-way mirorring instead.

Mirroring a 3 vieThree-way mirror

Il mirroring a 3 vie scrive tre copie di tutti gli elementi.Three-way mirroring writes three copies of everything. L'efficienza di archiviazione è pari al 33,3%: per scrivere 1 TB di dati sono necessari almeno 3 TB di capacità di archiviazione fisica.Its storage efficiency is 33.3% – to write 1 TB of data, you need at least 3 TB of physical storage capacity. Analogamente, sono necessari almeno tre domini di errore hardware con Spazi di archiviazione diretta, ovvero tre server.Likewise, you need at least three hardware fault domains – with Storage Spaces Direct, that means three servers.

Il mirroring a tre vie può tollerare in modo sicuro almeno due problemi hardware (unità o server) alla volta.Three-way mirroring can safely tolerate at least two hardware problems (drive or server) at a time. Se, ad esempio, si riavvia un server quando si verifica un errore in un'altra unità o server, tutti i dati rimangono protetti e continuamente accessibili.For example, if you're rebooting one server when suddenly another drive or server fails, all data remains safe and continuously accessible.

mirroring a 3 vie

ParityParity

La codifica di parità, spesso denominata ' cancellazione codifica ', fornisce tolleranza di errore usando operazioni aritmetiche bit per bit, che possono essere notevolmente complesse.Parity encoding, often called 'erasure coding', provides fault tolerance using bitwise arithmetic, which can get remarkably complicated. Il funzionamento è meno ovvio rispetto al mirroring e sono disponibili numerose risorse online (ad esempio la guida di terze parti Dummies Guide to Erasure Coding) che possono aiutarti a capirlo.The way this works is less obvious than mirroring, and there are many great online resources (for example, this third-party Dummies Guide to Erasure Coding) that can help you get the idea. È sufficiente notare che questo metodo offre maggiore efficienza di archiviazione senza compromettere la tolleranza di errore.Sufficed to say it provides better storage efficiency without compromising fault tolerance.

In Windows Server 2016, spazi di archiviazione offre due tipi di parità: parità "singola" e parità "doppia", il secondo uso di una tecnica avanzata chiamata "codici di ricostruzione locali" a scale più grandi.In Windows Server 2016, Storage Spaces offers two flavors of parity – 'single' parity and 'dual' parity, the latter employing an advanced technique called 'local reconstruction codes' at larger scales.

Importante

È consigliabile usare il mirroring per la maggior parte dei carichi di lavoro con distinzione delle prestazioni.We recommend using mirroring for most performance-sensitive workloads. Per altre informazioni su come bilanciare le prestazioni e la capacità a seconda del carico di lavoro, vedere pianificare i volumi.To learn more about how to balance performance and capacity depending on your workload, see Plan volumes.

Parità singolaSingle parity

La parità singola mantiene solo un simbolo di parità bit per bit, che offre tolleranza di errore solo per un errore alla volta.Single parity keeps only one bitwise parity symbol, which provides fault tolerance against only one failure at a time. Questa opzione è analoga a RAID-5.It most closely resembles RAID-5. Per usare la parità singola, sono necessari almeno tre domini di errore hardware con Spazi di archiviazione diretta, ovvero tre server.To use single parity, you need at least three hardware fault domains – with Storage Spaces Direct, that means three servers. Poiché il mirroring a 3 vie fornisce maggiore tolleranza di errore su scala analoga, l'uso della parità singola non è consigliabile.Because three-way mirroring provides more fault tolerance at the same scale, we discourage using single parity. Tuttavia, è disponibile se si insiste sull'uso di tale soluzione ed è completamente supportata.But, it's there if you insist on using it, and it is fully supported.

Avviso

Si sconsiglia l'uso della parità singola perché può tollerare solo un errore hardware alla volta: se si riavvia un server quando si verifica un errore in un'altra unità o server, si verificheranno tempi di inattività.We discourage using single parity because it can only safely tolerate one hardware failure at a time: if you're rebooting one server when suddenly another drive or server fails, you will experience downtime. Se hai solo tre server, ti consigliamo di usare il mirroring a 3 vie.If you only have three servers, we recommend using three-way mirroring. Se hai quattro o più server, vedi la sezione successiva.If you have four or more, see the next section.

Doppia paritàDual parity

La doppia parità implementa i codici di correzione degli errori Reed-Solomon per conservare due simboli di parità bit per bit, garantendo in tal modo la stessa tolleranza di errore del mirroring a tre vie, ovvero fino a due errori contemporaneamente, ma con maggiore efficienza di archiviazione.Dual parity implements Reed-Solomon error-correcting codes to keep two bitwise parity symbols, thereby providing the same fault tolerance as three-way mirroring (i.e. up to two failures at once), but with better storage efficiency. Questa opzione è analoga a RAID-6.It most closely resembles RAID-6. Per usare la doppia parità, sono necessari almeno quattro domini di errore hardware con Spazi di archiviazione diretta, ovvero quattro server.To use dual parity, you need at least four hardware fault domains – with Storage Spaces Direct, that means four servers. In questo caso, l'efficienza di archiviazione è pari al 50%: per archiviare 2 TB di dati sono necessari 4 TB di capacità di archiviazione fisica.At that scale, the storage efficiency is 50% – to store 2 TB of data, you need 4 TB of physical storage capacity.

doppia parità

L'efficienza di archiviazione della doppia parità aumenta con l'aumentare del numero di domini di errore hardware, dal 50% fino all'80%.The storage efficiency of dual parity increases the more hardware fault domains you have, from 50% up to 80%. Ad esempio, con sette domini di errore (con Spazi di archiviazione diretta, ovvero sette server) l'efficienza passa al 66,7%: per archiviare 4 TB di dati sono sufficienti 6 TB di capacità di archiviazione fisica.For example, at seven (with Storage Spaces Direct, that means seven servers) the efficiency jumps to 66.7% – to store 4 TB of data, you need just 6 TB of physical storage capacity.

doppia parità estesa

Vedi la sezione Riepilogo per informazioni sull'efficienza della doppia parità e dei codici di ricostruzione locali su qualsiasi scala.See the Summary section for the efficiency of dual party and local reconstruction codes at every scale.

Codici di ricostruzione localiLocal reconstruction codes

Spazi di archiviazione in Windows Server 2016 introduce una tecnica avanzata sviluppata da Microsoft Research denominata "codici di ricostruzione locali" o LRC.Storage Spaces in Windows Server 2016 introduces an advanced technique developed by Microsoft Research called 'local reconstruction codes', or LRC. Su ampia scala, la doppia parità usa i codici di ricostruzione locali per suddividere codifica/decodifica in alcuni gruppi più piccoli, per ridurre il sovraccarico in caso di scrittura o di ripristino dagli errori.At large scale, dual parity uses LRC to split its encoding/decoding into a few smaller groups, to reduce the overhead required to make writes or recover from failures.

Con le unità disco rigido (HDD) la dimensione del gruppo è di quattro simboli, mentre con le unità SSD è di sei simboli.With hard disk drives (HDD) the group size is four symbols; with solid-state drives (SSD), the group size is six symbols. Ecco, ad esempio, il layout con unità disco rigido e 12 domini di errore hardware (ovvero 12 server): ci sono due gruppi di quattro simboli di dati.For example, here's what the layout looks like with hard disk drives and 12 hardware fault domains (meaning 12 servers) – there are two groups of four data symbols. L'efficienza di archiviazione ottenuta è del 72,7%.It achieves 72.7% storage efficiency.

codici di ricostruzione locali

Si consiglia di eseguire una procedura dettagliata che consente di vedere come i codici di ricostruzione locali gestiscono diversi scenari di errore e il motivo per cui sono attraenti, in base a Claus Joergensen.We recommend this in-depth yet eminently readable walk-through of how local reconstruction codes handle various failure scenarios, and why they're appealing, by our very own Claus Joergensen.

Parità accelerata con mirrorMirror-accelerated parity

A partire da Windows Server 2016, un volume Spazi di archiviazione diretta può essere parte del mirroring e della parità della parte.Beginning in Windows Server 2016, a Storage Spaces Direct volume can be part mirror and part parity. Scrive il terreno prima nella parte con mirroring e viene spostato gradualmente nella parte di parità in un secondo momento.Writes land first in the mirrored portion and are gradually moved into the parity portion later. In effetti, viene usato il mirroring per accelerare la codifica della cancellazione.Effectively, this is using mirroring to accelerate erasure coding.

Per combinare mirroring a 3 vie e doppia parità, devi avere almeno quattro domini di errore, ovvero quattro server.To mix three-way mirror and dual parity, you need at least four fault domains, meaning four servers.

L'efficienza di archiviazione della parità con accelerazione del mirroring è compresa tra quello che si otterrebbe dall'uso di tutti i mirror o di tutte le parità e dipende dalle proporzioni scelte.The storage efficiency of mirror-accelerated parity is in between what you'd get from using all mirror or all parity, and depends on the proportions you choose. La demo di questa presentazione, in corrispondenza del minuto 37, mostra ad esempio diverse combinazioni per ottenere un'efficienza pari al 46%, 54% e 65% con 12 server.For example, the demo at the 37-minute mark of this presentation shows various mixes achieving 46%, 54%, and 65% efficiency with 12 servers.

Importante

È consigliabile usare il mirroring per la maggior parte dei carichi di lavoro con distinzione delle prestazioni.We recommend using mirroring for most performance-sensitive workloads. Per altre informazioni su come bilanciare le prestazioni e la capacità a seconda del carico di lavoro, vedere pianificare i volumi.To learn more about how to balance performance and capacity depending on your workload, see Plan volumes.

RiepilogoSummary

Questa sezione riepiloga i tipi resilienza disponibili in Spazi di archiviazione diretta, i requisiti di scala minimi per ogni tipo, il numero di errori che ogni tipo può tollerare e l'efficienza di archiviazione corrispondente.This section summarizes the resiliency types available in Storage Spaces Direct, the minimum scale requirements to use each type, how many failures each type can tolerate, and the corresponding storage efficiency.

Tipi di resilienzaResiliency types

ResilienzaResiliency Tolleranza di erroreFailure tolerance Efficienza di archiviazioneStorage efficiency
Mirroring a 2 vieTwo-way mirror 11 50.0%50.0%
Mirroring a 3 vieThree-way mirror 22 33,3%33.3%
Doppia paritàDual parity 22 50% - 80%50.0% - 80.0%
MixedMixed 22 33,3% - 80%33.3% - 80.0%

Requisiti di scala minimiMinimum scale requirements

ResilienzaResiliency Domini di errore minimi necessariMinimum required fault domains
Mirroring a 2 vieTwo-way mirror 22
Mirroring a 3 vieThree-way mirror 33
Doppia paritàDual parity 44
MixedMixed 44

Suggerimento

A meno che tu non usi la tolleranza di errore tramite chassis o rack, il numero di domini di errore indica il numero di server.Unless you are using chassis or rack fault tolerance, the number of fault domains refers to the number of servers. Il numero di unità in ogni server non influisce sui tipi di resilienza che puoi usare, a patto che siano soddisfatti i requisiti minimi per Spazi di archiviazione diretta.The number of drives in each server does not affect which resiliency types you can use, as long as you meet the minimum requirements for Storage Spaces Direct.

Efficienza della doppia parità per le distribuzioni ibrideDual parity efficiency for hybrid deployments

Questa tabella mostra l'efficienza di archiviazione della doppia parità e dei codici di ricostruzione locali per distribuzioni ibride di dimensioni diverse contenenti sia unità disco rigido (HDD) che unità SSD.This table shows the storage efficiency of dual parity and local reconstruction codes at each scale for hybrid deployments which contain both hard disk drives (HDD) and solid-state drives (SSD).

Domini di erroreFault domains LayoutLayout EfficienzaEfficiency
22
33
44 RS 2+2RS 2+2 50.0%50.0%
55 RS 2+2RS 2+2 50.0%50.0%
66 RS 2+2RS 2+2 50.0%50.0%
77 RS 4+2RS 4+2 66,7%66.7%
88 RS 4+2RS 4+2 66,7%66.7%
99 RS 4+2RS 4+2 66,7%66.7%
1010 RS 4+2RS 4+2 66,7%66.7%
1111 RS 4+2RS 4+2 66,7%66.7%
1212 LRC (8, 2, 1)LRC (8, 2, 1) 72,7%72.7%
1313 LRC (8, 2, 1)LRC (8, 2, 1) 72,7%72.7%
1414 LRC (8, 2, 1)LRC (8, 2, 1) 72,7%72.7%
1515 LRC (8, 2, 1)LRC (8, 2, 1) 72,7%72.7%
1616 LRC (8, 2, 1)LRC (8, 2, 1) 72,7%72.7%

Efficienza della doppia parità per le distribuzioni all-flashDual parity efficiency for all-flash deployments

Questa tabella mostra l'efficienza di archiviazione della doppia parità e dei codici di ricostruzione locali per distribuzioni all-flash di dimensioni diverse contenenti solo unità SSD.This table shows the storage efficiency of dual parity and local reconstruction codes at each scale for all-flash deployments which contain only solid-state drives (SSD). Il layout con parità può usare gruppi con dimensioni maggiori e ottenere maggiore efficienza di archiviazione in una configurazione all-flash.The parity layout can use larger group sizes and achieve better storage efficiency in an all-flash configuration.

Domini di erroreFault domains LayoutLayout EfficienzaEfficiency
22
33
44 RS 2+2RS 2+2 50.0%50.0%
55 RS 2+2RS 2+2 50.0%50.0%
66 RS 2+2RS 2+2 50.0%50.0%
77 RS 4+2RS 4+2 66,7%66.7%
88 RS 4+2RS 4+2 66,7%66.7%
99 RS 6+2RS 6+2 75.0%75.0%
1010 RS 6+2RS 6+2 75.0%75.0%
1111 RS 6+2RS 6+2 75.0%75.0%
1212 RS 6+2RS 6+2 75.0%75.0%
1313 RS 6+2RS 6+2 75.0%75.0%
1414 RS 6+2RS 6+2 75.0%75.0%
1515 RS 6+2RS 6+2 75.0%75.0%
1616 LRC (12, 2, 1)LRC (12, 2, 1) 80%80.0%

EsempiExamples

A meno che tu non abbia solo due server, ti consigliamo di usare il mirroring a 3 vie e/o la doppia parità, perché offrono una migliore tolleranza di errore.Unless you have only two servers, we recommend using three-way mirroring and/or dual parity, because they offer better fault tolerance. In particolare, garantiscono che tutti i dati siano sicuri e sempre accessibili, anche nel caso in cui si verifichino errori contemporaneamente in due domini di errore con Spazi di archiviazione diretta, ovvero due server.Specifically, they ensure that all data remains safe and continuously accessible even when two fault domains – with Storage Spaces Direct, that means two servers - are affected by simultaneous failures.

Esempi di casi in cui tutti i componenti rimangono onlineExamples where everything stays online

Questi sei esempi mostrano le situazioni che possono essere tollerate dal mirroring a 3 vie e/o dalla doppia parità.These six examples show what three-way mirroring and/or dual parity can tolerate.

  • 1. Perdita di un'unità (incluse unità cache)1. One drive lost (includes cache drives)
  • 2. Perdita di un server2. One server lost

esempi 1 e 2 relativi alla tolleranza di errore

  • 3. Perdita di un server e un'unità3. One server and one drive lost
  • 4. Perdita di due unità in server diversi4. Two drives lost in different servers

esempi 3 e 4 relativi alla tolleranza di errore

  • 5. Perdita di più di due unità, con un massimo di due server interessati5. More than two drives lost, so long as at most two servers are affected
  • 6. Perdita di due server6. Two servers lost

esempi 5 e 6 relativi alla tolleranza di errore

...in tutti i casi, tutti i volumi rimangono online....in every case, all volumes will stay online. Assicurati che il cluster mantenga il quorum.(Make sure your cluster maintains quorum.)

Esempi di casi in cui tutti i componenti passano offlineExamples where everything goes offline

Nel tempo, Spazi di archiviazione può tollerare un numero qualsiasi di errori, perché ripristina la resilienza completa dopo ognuno di essi, a condizione che ci sia un tempo sufficiente per farlo.Over its lifetime, Storage Spaces can tolerate any number of failures, because it restores to full resiliency after each one, given sufficient time. Tuttavia, in un momento specifico sono tollerati errori in un massimo di due domini di errore.However, at most two fault domains can safely be affected by failures at any given moment. Gli esempi seguenti mostrano le situazioni che non possono essere tollerate dal mirroring a 3 vie e/o dalla doppia parità.The following are therefore examples of what three-way mirroring and/or dual parity cannot tolerate.

  • 7. Perdita di unità in tre o più server contemporaneamente7. Drives lost in three or more servers at once
  • 8. tre o più server persi contemporaneamente8. Three or more servers lost at once

esempi 7 e 8 relativi alla tolleranza di errore

UsoUsage

Vedere creazione di volumi in spazi di archiviazione diretta.Check out Creating volumes in Storage Spaces Direct.

Altri riferimentiAdditional References

Ognuno dei link seguenti è presente anche nel corpo di questo argomento.Every link below is inline somewhere in the body of this topic.