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

Re: Sicurezza dei DB - hdparm, come usarlo?



Il giorno mar, 06/06/2006 alle 12.07 +0200, Davide Corio ha scritto:

> Il giorno mar, 06/06/2006 alle 12.04 +0200, Alessandro Pellizzari ha
> scritto:
> > La cache hardware del disco si puo` (anzi, credo convenga sempre farlo)
> > disabilitare. E` una piccola memoria (solitamente 1 o 2 Mb. Sui dischi
> > piu` recenti arriva a 8. Ma e` condivisa sia in lettura che in
> > scrittura).
> 
> Non ho capito bene quali siano i contro.

I contro sono che il kernel usa degli algoritmi per ottimizzare le
letture/scritture su disco (elevator e simili), e tiene in cache
abbastanza dati da poter sfruttare tali algoritmi, ma deve essere sicuro
che quando manda il comando di scrittura al disco, questo viene eseguito
nell'ordine giusto.

Se il disco ha un suo buffer di scrittura, appena il kernel manda il
comando, il disco risponde "fatto", ma ha i dati in cache, e applica un
suo algoritmo di scrittura (che puo` essere piu` "stupido", tipo "quando
il buffer e` pieno scrivi tutto partendo dall'inizio")

Quindi, oltre a esserci doppio lavoro, si richia di vanificare gli
sforzi dello scheduler interno del kernel.

Se ci aggiungi il jounaling, al "fatto" del disco, il kernel aggiorna il
file di journal. Se a quel punto il disco scrive il journal ma non ha
ancora scritto i dati e salta la corrente (e con 16 Mb di buffer puo`
capitare...), avrai un journal inconsistente ma valido, e danni che non
voglio nemmeno immaginare sulla struttura del filesystem.

Bye.

-- 
Alessandro Pellizzari




Reply to: