DBMS - Sistema de almacenamiento

Las bases de datos se almacenan en formatos de archivo, que contienen registros. A nivel físico, los datos reales se almacenan en formato electromagnético en algún dispositivo. Estos dispositivos de almacenamiento se pueden clasificar en tres tipos:

  • Primary Storage- El almacenamiento de memoria que es directamente accesible a la CPU se incluye en esta categoría. La memoria interna de la CPU (registros), la memoria rápida (caché) y la memoria principal (RAM) son directamente accesibles a la CPU, ya que todas están ubicadas en la placa base o en el chipset de la CPU. Este almacenamiento suele ser muy pequeño, ultrarrápido y volátil. El almacenamiento primario requiere un suministro de energía continuo para mantener su estado. En caso de un corte de energía, todos sus datos se pierden.

  • Secondary Storage- Los dispositivos de almacenamiento secundarios se utilizan para almacenar datos para uso futuro o como respaldo. El almacenamiento secundario incluye dispositivos de memoria que no forman parte del chipset de la CPU o de la placa base, por ejemplo, discos magnéticos, discos ópticos (DVD, CD, etc.), discos duros, unidades flash y cintas magnéticas.

  • Tertiary Storage- El almacenamiento terciario se utiliza para almacenar grandes volúmenes de datos. Dado que dichos dispositivos de almacenamiento son externos al sistema informático, son los más lentos en velocidad. Estos dispositivos de almacenamiento se utilizan principalmente para realizar copias de seguridad de un sistema completo. Los discos ópticos y las cintas magnéticas se utilizan ampliamente como almacenamiento terciario.

Jerarquía de la memoria

Un sistema informático tiene una jerarquía de memoria bien definida. Una CPU tiene acceso directo a su memoria principal, así como a sus registros incorporados. El tiempo de acceso a la memoria principal es obviamente menor que la velocidad de la CPU. Para minimizar esta discrepancia de velocidad, se introduce la memoria caché. La memoria caché proporciona el tiempo de acceso más rápido y contiene datos a los que la CPU accede con más frecuencia.

La memoria con el acceso más rápido es la más costosa. Los dispositivos de almacenamiento más grandes ofrecen una velocidad lenta y son menos costosos; sin embargo, pueden almacenar grandes volúmenes de datos en comparación con los registros de la CPU o la memoria caché.

Discos magnéticos

Las unidades de disco duro son los dispositivos de almacenamiento secundario más comunes en los sistemas informáticos actuales. Estos se denominan discos magnéticos porque utilizan el concepto de magnetización para almacenar información. Los discos duros consisten en discos de metal recubiertos con material magnetizable. Estos discos se colocan verticalmente en un eje. Un cabezal de lectura / escritura se mueve entre los discos y se usa para magnetizar o desmagnetizar el punto debajo de él. Un punto magnetizado se puede reconocer como 0 (cero) o 1 (uno).

Los discos duros están formateados en un orden bien definido para almacenar datos de manera eficiente. Una placa de disco duro tiene muchos círculos concéntricos, llamadostracks. Cada pista se divide a su vez ensectors. Un sector en un disco duro normalmente almacena 512 bytes de datos.

Matriz redundante de discos independientes

RAID o Rabundante Array de Iindependiente Disks, es una tecnología para conectar varios dispositivos de almacenamiento secundarios y utilizarlos como un único medio de almacenamiento.

RAID consta de una serie de discos en los que se conectan varios discos entre sí para lograr diferentes objetivos. Los niveles de RAID definen el uso de matrices de discos.

RAID 0

En este nivel, se implementa una matriz de discos seccionados. Los datos se dividen en bloques y los bloques se distribuyen entre discos. Cada disco recibe un bloque de datos para escribir / leer en paralelo. Mejora la velocidad y el rendimiento del dispositivo de almacenamiento. No hay paridad ni respaldo en el nivel 0.

RAID 1

RAID 1 utiliza técnicas de duplicación. Cuando se envían datos a un controlador RAID, envía una copia de los datos a todos los discos de la matriz. El nivel RAID 1 también se denominamirroring y proporciona un 100% de redundancia en caso de fallo.

RAID 2

RAID 2 registra el código de corrección de errores utilizando la distancia de Hamming para sus datos, seccionados en diferentes discos. Al igual que en el nivel 0, cada bit de datos de una palabra se registra en un disco separado y los códigos ECC de las palabras de datos se almacenan en un conjunto de discos diferente. Debido a su compleja estructura y alto costo, RAID 2 no está disponible comercialmente.

RAID 3

RAID 3 reparte los datos en varios discos. El bit de paridad generado para la palabra de datos se almacena en un disco diferente. Esta técnica hace que supere las fallas de un solo disco.

RAID 4

En este nivel, se escribe un bloque completo de datos en discos de datos y luego la paridad se genera y se almacena en un disco diferente. Tenga en cuenta que el nivel 3 usa bandas a nivel de bytes, mientras que el nivel 4 usa bandas a nivel de bloque. Tanto el nivel 3 como el nivel 4 requieren al menos tres discos para implementar RAID.

RAID 5

RAID 5 escribe bloques de datos completos en diferentes discos, pero los bits de paridad generados para la banda de bloques de datos se distribuyen entre todos los discos de datos en lugar de almacenarlos en un disco dedicado diferente.

RAID 6

RAID 6 es una extensión del nivel 5. En este nivel, se generan y almacenan dos paridades independientes de forma distribuida entre varios discos. Dos paridades proporcionan tolerancia a fallos adicional. Este nivel requiere al menos cuatro unidades de disco para implementar RAID.