[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Write Cache e RAID (precisazione)



Riciao !

Ho riletto i vari quesiti ed in effetti la risposta è complessa.

Siamo in presenza di un RAID-5, quindi le stripe contenute su n-1 dischi hanno
un codice di ECC su una stripe sul disco "n".

Ora il discorso cache in write relativo SOLO al lato device (non avendo un
controller fisico farò riferimento alla cache fisica dei dischi).

Se si genera un poweroff forzato, magari immediatamente dopo o durante una
fase di write particolarmente intensa, cosa succede ?

La risposta è complessa perchè già i dischi rigidi dispongono internamente di
codici di ECC per i singoli settori. Ma qui stiamo parlando di stripe, quindi
di un insieme di settori validati, verificati e CORRETTI dal codice di ECC del
RAID-5.

A questo livello si sovrappone il FS, quindi si ha una concatenazione di
controlli e validazione dei dati.

Penso quindi che, per un controller RAID HW, dove la dimensione della cache
fisica inizia a stare sui 512, 1024 Mbyte inizi ad avere un senso disporre di
un sistema tampone, in effetti i controller che tipicamente utilizzo come gli
HP Smartarray non abilitano "l'accelerazione" (penso che sia un modo
coreografico per dire, non abilito la cache in write se non è presente il
modulo di batteria tampone (i modelli di fascia bassa ce l'hanno come optional).
Probabilmente per un RAID in "md" dove si fa affidamento alla cache dei dischi
rigidi.. (16-32-64 Mbyte ?), dove statisticamente si può calcolare una media
dei dati che rimangono in cache e per quanto tempo (in base alla strategia),
probabilmente si può dire, "ma si, dovrebbe andare bene così e nel caso
peggiore i vari codici di ECC o alla peggio il FS dovrebbero bastare a
recuperare la consistenza".

IMHO.

CIAO

Luca





Reply to: