Un array NAS degradato può rallentare prima che inizi la ricostruzione perché il guasto ha già modificato il modo in cui vengono completate le normali letture e scritture. L'array può perdere una fonte speculare parallela, ricostruire i dati di parità mancanti su richiesta, ritentare un disco instabile o instradare più lavoro attraverso i membri sopravvissuti.
La ricostruzione è un carico di lavoro successivo che ripristina il membro mancante. L'operazione degradata inizia non appena l'array smette di fidarsi di un membro, quindi la latenza dell'applicazione può aumentare anche mentre il vano di sostituzione è vuoto e non è in esecuzione alcuna barra di avanzamento della ricostruzione.
Cosa cambia nel momento in cui un membro RAID manca?
La maggior parte degli array ridondanti continua a funzionare in modalità degradata, ma il loro percorso dati non è più quello sano usato quando ogni membro è disponibile.
Il controller dell'array o il livello software registra il membro come guasto, non disponibile o non più affidabile. Da quel momento in poi, ogni richiesta deve evitare la fonte mancante e preservare la coerenza con meno dispositivi.
La penalità esatta dipende dal livello RAID e dal blocco richiesto. Le letture che mirano ai dati sopravvissuti possono rimanere relativamente dirette, mentre quelle che richiedono il membro guasto necessitano di ricostruzione o di un'altra replica.
Perché le letture di parità richiedono più lavoro prima della ricostruzione?
Una richiesta di dati appartenenti al membro guasto diventa una lettura degradata. Durante questo processo, le letture degradate utilizzano la CPU per recuperare i dati dai pezzi di dati e parità sopravvissuti.
Invece di leggere un singolo blocco richiesto, l'array potrebbe aver bisogno di blocchi da diversi dischi sopravvissuti, eseguire un calcolo XOR o di codice di cancellazione e restituire il risultato ricostruito al client. Ciò aumenta la ramificazione del dispositivo e l'elaborazione per richiesta.
Poiché questa ricostruzione avviene in primo piano, gli utenti possono notare aperture di file più lente, letture di database, ricerche multimediali o avvii di applicazioni prima che venga aggiunto un disco di sostituzione.
Perché uno specchio perde il parallelismo di lettura?
I mirror sani possono distribuire le letture tra copie equivalenti. Dopo il guasto di un membro, il membro rimanente del mirror serve le letture da solo, eliminando il parallelismo di lettura e la distribuzione delle code che esistevano prima del guasto.
La velocità sequenziale può avvicinarsi alla capacità di un solo disco invece che al comportamento combinato della coppia mirror. Le richieste casuali si accumulano anche dietro una sola coda dispositivo invece di essere servite dalla replica meno occupata.
Questa penalità non richiede calcoli di parità. Deriva dalla perdita di una copia disponibile e dalla concentrazione del carico di lavoro sul membro sopravvissuto.
Perché un disco parzialmente guasto può essere più lento di un guasto netto?
Un disco che rimane visibile ma ha problemi con i settori può passare molto tempo a ritentare i comandi. Nel RAID software Linux, timeout lunghi di recupero errori possono bloccare l'array prima che il livello di storage rinunci e ricostruisca il blocco altrove.
Queste pause possono essere peggiori di un disco che fallisce in modo netto ed è rimosso dal percorso attivo. Le richieste aspettano il membro incerto, le code si accumulano dietro di esso e le applicazioni sperimentano latenze a coda lunga anche quando la velocità media sembra ancora accettabile.
Controller e piattaforme NAS differiscono nelle loro politiche di timeout, recupero errori e rimozione dei membri. Ecco perché due array con lo stesso livello RAID possono rispondere in modo molto diverso allo stesso disco marginale.
Come competono i carichi di lavoro NAS normali con l'I/O degradato?
I dischi sopravvissuti devono continuare a servire SMB, NFS, container, indicizzazione multimediale, backup e database applicativi, fornendo allo stesso tempo letture extra per i dati mancanti. la modalità degradata stressa i dischi rimanenti.
Una richiesta che una volta coinvolgeva uno o due dispositivi può ora interessare l'intero gruppo di parità. Questo consuma larghezza di banda, aumenta la profondità della coda e può espellere voci utili della cache con dati e metadati ricostruiti.
Il rallentamento diventa più evidente negli array HDD, nei sistemi multi-utente occupati e nei carichi di lavoro con molte operazioni I/O dipendenti di piccole dimensioni. Una singola copia sequenziale grande può nascondere la latenza che un database applicativo espone immediatamente.
Cosa cambia quando la ricostruzione finalmente inizia?
Aggiungere un disco sostitutivo inizia la seconda fase di prestazioni. Il sistema deve ripristinare la ridondanza e il traffico di ricostruzione può rallentare letture e scritture mentre le applicazioni in primo piano rimangono attive.
La ricostruzione legge i dati sopravvissuti, calcola il contenuto mancante e lo scrive sul sostituto. Quel vasto flusso in background compete con il lavoro degradato in primo piano che era già in corso.
La priorità di ricostruzione è quindi un compromesso. Una ricostruzione più aggressiva può ridurre la finestra vulnerabile ma consumare più larghezza di banda immediata, mentre una ricostruzione molto delicata preserva la reattività a costo di rimanere degradata più a lungo.
| Stato dell'array | Lavoro extra | Probabile effetto per l'utente |
|---|---|---|
| Mirror sano | Le letture possono usare una qualsiasi copia | Parallelismo e minore pressione sulla coda |
| Mirror degradato | Un membro serve tutte le letture | Minore throughput e maggiore latenza |
| Array di parità degradato | Blocchi mancanti ricostruiti su richiesta | Più letture del dispositivo e lavoro della CPU |
| Ricostruzione dell'array di parità | Ricostruzione in primo piano più flusso di recupero | Una seconda penalità di prestazioni, spesso maggiore |
Domande frequenti
Un array RAID degradato può essere lento anche quando non è in corso alcuna ricostruzione?
Sì. L'array potrebbe già ricostruire le letture mancanti, usare un membro rimasto del mirror o attendere i tentativi da un disco instabile.
Ogni lettura diventa più lenta in un array di parità degradato?
Non necessariamente. Le letture dei dati ancora disponibili direttamente sui membri sopravvissuti possono rimanere veloci, mentre le richieste che necessitano del contributo del membro guasto richiedono la ricostruzione.
Perché rimuovere un disco guasto a volte può migliorare la reattività?
Un disco marginale può trattenere i comandi durante ripetuti tentativi di recupero. Una volta che l'array smette di aspettarlo, il livello RAID può ricostruire le letture fallite in modo prevedibile dalla ridondanza.
La priorità di ricostruzione dovrebbe sempre essere impostata al massimo?
Non esiste un'impostazione universale adatta a ogni NAS. Una priorità più alta riduce il tempo di degrado ma può diminuire la reattività del servizio. La decisione dovrebbe riflettere l'importanza del carico di lavoro, la condizione dell'array e la prontezza del backup.
Conclusione finale
Un NAS non aspetta che la ricostruzione diventi degradata. Le prestazioni possono calare immediatamente perché il percorso di lettura sano è già scomparso: i mirror perdono una replica, gli array di parità ricostruiscono i blocchi mancanti e i dischi marginali possono trattenere le code in lunghi tentativi. La ricostruzione aggiunge un secondo carico di lavoro sopra quel percorso degradato, motivo per cui il rallentamento spesso inizia prima della barra di avanzamento e si intensifica dopo l'inizio.
Hub Tecnologico e AI
Altro da leggere

Perché Home Assistant offre prestazioni diverse sulla rete locale e con le connessioni remote?
Le sessioni di Home Assistant sulla LAN e da remoto utilizzano percorsi di rete diversi; la latenza da remoto aggiunge DNS, crittografia, WAN, proxy...

Home Assistant funziona in modo affidabile dietro CGNAT o doppio NAT?
CGNAT e doppio NAT di solito non influiscono sul controllo locale di Home Assistant; cambiano principalmente il modo in cui i client remoti possono...

In che modo la latenza di rete influisce su Home Assistant durante le interruzioni di Internet?
La perdita della connessione Internet e la latenza di rete sono problemi diversi: i percorsi dei dispositivi locali possono rimanere veloci mentre DNS, integrazioni...

