DBMS - Sistema di archiviazione

I database vengono archiviati in formati di file che contengono record. A livello fisico, i dati effettivi vengono memorizzati in formato elettromagnetico su alcuni dispositivi. Questi dispositivi di archiviazione possono essere ampiamente classificati in tre tipi:

  • Primary Storage- La memoria che è direttamente accessibile alla CPU rientra in questa categoria. La memoria interna della CPU (registri), la memoria veloce (cache) e la memoria principale (RAM) sono direttamente accessibili alla CPU, poiché sono tutte posizionate sulla scheda madre o sul chipset della CPU. Questa memoria è in genere molto piccola, ultra veloce e volatile. La memoria primaria richiede un'alimentazione continua per mantenere il suo stato. In caso di interruzione di corrente, tutti i suoi dati vengono persi.

  • Secondary Storage- I dispositivi di archiviazione secondari vengono utilizzati per memorizzare i dati per un utilizzo futuro o come backup. La memoria secondaria include dispositivi di memoria che non fanno parte del chipset della CPU o della scheda madre, ad esempio dischi magnetici, dischi ottici (DVD, CD, ecc.), Dischi rigidi, unità flash e nastri magnetici.

  • Tertiary Storage- L'archiviazione terziaria viene utilizzata per archiviare enormi volumi di dati. Poiché tali dispositivi di archiviazione sono esterni al sistema del computer, sono i più lenti in velocità. Questi dispositivi di archiviazione vengono utilizzati principalmente per eseguire il backup di un intero sistema. I dischi ottici e i nastri magnetici sono ampiamente utilizzati come archiviazione terziaria.

Gerarchia della memoria

Un sistema informatico ha una gerarchia di memoria ben definita. Una CPU ha accesso diretto alla memoria principale e ai registri incorporati. Il tempo di accesso alla memoria principale è ovviamente inferiore alla velocità della CPU. Per ridurre al minimo questa discrepanza di velocità, viene introdotta la memoria cache. La memoria cache fornisce il tempo di accesso più veloce e contiene i dati a cui la CPU accede più di frequente.

La memoria con l'accesso più veloce è quella più costosa. I dispositivi di archiviazione più grandi offrono una velocità ridotta e sono meno costosi, tuttavia possono archiviare enormi volumi di dati rispetto ai registri della CPU o alla memoria cache.

Dischi magnetici

Le unità disco rigido sono i dispositivi di archiviazione secondari più comuni nei sistemi informatici attuali. Questi sono chiamati dischi magnetici perché usano il concetto di magnetizzazione per memorizzare le informazioni. I dischi rigidi sono costituiti da dischi di metallo rivestiti con materiale magnetizzabile. Questi dischi sono posizionati verticalmente su un mandrino. Una testina di lettura / scrittura si muove tra i dischi e viene utilizzata per magnetizzare o smagnetizzare il punto sottostante. Un punto magnetizzato può essere riconosciuto come 0 (zero) o 1 (uno).

I dischi rigidi sono formattati in un ordine ben definito per archiviare i dati in modo efficiente. Una piastra del disco rigido ha molti cerchi concentrici su di essa, chiamatitracks. Ogni traccia è ulteriormente suddivisa insectors. Un settore su un disco rigido in genere memorizza 512 byte di dati.

Array ridondante di dischi indipendenti

RAID o Redundant Array of Indipendente Disks, è una tecnologia per collegare più dispositivi di archiviazione secondari e utilizzarli come un unico supporto di archiviazione.

RAID è costituito da un array di dischi in cui più dischi sono collegati insieme per raggiungere obiettivi diversi. I livelli RAID definiscono l'uso degli array di dischi.

RAID 0

In questo livello, viene implementato un array di dischi con striping. I dati vengono suddivisi in blocchi e i blocchi vengono distribuiti tra i dischi. Ogni disco riceve un blocco di dati da scrivere / leggere in parallelo. Migliora la velocità e le prestazioni del dispositivo di archiviazione. Non sono presenti parità e backup nel livello 0.

RAID 1

RAID 1 utilizza tecniche di mirroring. Quando i dati vengono inviati a un controller RAID, invia una copia dei dati a tutti i dischi dell'array. Viene anche chiamato il livello RAID 1mirroring e fornisce una ridondanza del 100% in caso di guasto.

RAID 2

RAID 2 registra il codice di correzione degli errori utilizzando la distanza di Hamming per i suoi dati, con striping su dischi diversi. Come il livello 0, ogni bit di dati in una parola viene registrato su un disco separato ei codici ECC delle parole di dati vengono memorizzati su un diverso set di dischi. A causa della sua struttura complessa e del costo elevato, RAID 2 non è disponibile in commercio.

RAID 3

RAID 3 esegue lo striping dei dati su più dischi. Il bit di parità generato per la parola dati viene memorizzato su un disco diverso. Questa tecnica consente di superare i guasti del disco singolo.

RAID 4

In questo livello, un intero blocco di dati viene scritto su dischi dati e quindi la parità viene generata e memorizzata su un disco diverso. Si noti che il livello 3 utilizza lo striping a livello di byte, mentre il livello 4 utilizza lo striping a livello di blocco. Sia il livello 3 che il livello 4 richiedono almeno tre dischi per implementare RAID.

RAID 5

RAID 5 scrive interi blocchi di dati su dischi diversi, ma i bit di parità generati per lo stripe del blocco di dati vengono distribuiti tra tutti i dischi di dati anziché archiviarli su un disco dedicato diverso.

RAID 6

RAID 6 è un'estensione del livello 5. In questo livello, vengono generate due parità indipendenti e archiviate in modo distribuito tra più dischi. Due parità forniscono ulteriore tolleranza agli errori. Questo livello richiede almeno quattro unità disco per implementare RAID.