Fundamentos de Almacenamiento Digital: Discos Duros, Memorias Flash y Estructura de Datos
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 3,47 KB
Componentes y Mecanismos de Almacenamiento Digital
Discos Duros (HDD)
Emplean un sistema de **grabación magnética** para almacenar datos digitales. Se componen de uno o más **platos**, unidos por un mismo eje que gira. Sobre cada plato se sitúa un **cabezal de lectura/escritura** que flota sobre una delgada lámina de aire generada por la rotación de los discos. Cada plato está compuesto de **pistas** y **sectores**.
Memorias Flash (SSD)
Las **NAND flash memories** están formadas por semiconductores, con densidades que varían entre 10 y 70 (se asume que se refiere a capas o generaciones). Están compuestas por:
- Una memoria **RAM para caché (DRAM)**.
- Memorias **NAND** controladas por la **Controladora**, que gestiona el intercambio de datos con las memorias flash, simulando el comportamiento de un disco duro.
Optimización de Acceso
El **algoritmo del ascensor** es una técnica de optimización de los accesos que consiste en reducir en lo posible los movimientos de cambio de pista. Para ello, la cabeza se va moviendo a lo largo de las pistas con un movimiento de vaivén, como un ascensor que va atendiendo las peticiones a medida que pasa por los pisos con movimiento de subida y bajada.
Estructura Fundamental de un Bloque de Datos
Son cinco partes fundamentales las que conforman un **bloque de datos**:
1. Cabecera
En esta sección del bloque se almacena la información general y de control del bloque, como:
- Tipo de segmento (de tabla, índice, LOB, rollback, clúster, etc.).
- Información de la ubicación del bloque.
- Número de sincronización.
2. Directorio de Tabla
Contiene información de la tabla relacionada a la fila almacenada en el bloque.
3. Directorio de Fila
Contiene información de las filas almacenadas en el bloque (dirección para cada fila de la tabla almacenada en el bloque).
4. Espacio Libre
Esta sección está destinada para los **nuevos datos** o **actualizaciones de datos** que requieran otorgar (siempre y cuando exista disponibilidad de espacio en el bloque). Para el caso de una actualización, esta puede incrementar o decrementar el espacio disponible del bloque.
5. Datos
Esta es la sección en donde se almacena la los datos de las tablas o índices. Los datos de un registro pueden encontrarse en la necesidad de ocupar más de un bloque; esto puede suceder por dos situaciones: **Encadenamiento** y **Migración de Filas**.
Jerarquía de Almacenamiento Lógico y Físico
El **Tablespace** abstrae a los dos elementos siguientes; un tablespace puede contener muchos **segmentos** y puede almacenarse en varios **datafiles**.
Los datos son almacenados **lógicamente** en **Segmentos** y **físicamente** en **Datafiles**.
Datafile
Es un archivo físico, compuesto por un número de bloques del Sistema Operativo (SO); por tal razón, dependen directamente del sistema de archivos que se esté utilizando.
Segment
Cualquier objeto que almacena datos y requiere de espacio: tablas, índices, etc. Representa todos los objetos existentes en un esquema.
Oracle Block
El **Oracle block** es la unidad de I/O para la base de datos. Los datafiles son formateados en bloques consecutivos de Oracle, típicamente de **8Kb**.
Nota sobre Secuencias
E0…: Es un conjunto consecutivo y numerado de **Oracle Block** de 1 datafile.