1.1 VISIÓN GENERAL DE LOS MEDIOS DE ALMACENAMIENTO Existen varios tipos de almacenamiento de datos que pueden clasificarse según la Velocidad con la que se puede acceder a los datos, Coste de adquisición del medio por unidad de datos y la fiabilidad del medio. El almacenamiento se puede diferenciar en, almacenamiento volátil en el cual se pierde el contenido cuando se apaga el equipo y almacenamiento no volátil en el mismo el contenido persiste incluso cuando se apaga el equipo, en este último se incluye incluye almacenamiento secundario y terciario, así como copias de seguridad. Dentro de los medios se tiene:
Estos discos son útiles para el almacenamiento de archivos así como para la distribución de datos. Los cambiadores automáticos (jukebox) contienen unas cuantas unidades y numerosos discos que pueden cargarse de manera automática en una de las unidades (mediante un brazo robotizado) a petición del usuario.
Organizarse en una jerarquía Figura 1.1 Los diferentes medios de almacenamiento pueden organizarse en una jerarquía (Figura 1.1) de acuerdo con su velocidad y su coste. Los niveles superiores son de coste elevado, pero rápidos. A medida que se desciende por la jerarquía el coste por bit disminuye, mientras que el tiempo de acceso aumenta. Los medios de almacenamiento más rápidos (por ejemplo, caché y memoria principal) se denominan almacenamiento primario. Los medios del siguiente nivel de la jerarquía (por ejemplo, los discos magnéticos) se conocen como almacenamiento secundario o almacenamiento en conexión. Los medios del nivel inferior de la jerarquía —por ejemplo, cinta magnética y los cambiadores automáticos de discos ópticos— se denominan almacenamiento terciario o almacenamiento sin conexión.
1.2. DISCOS MAGNÉTICOS Figura 1.2 1.2.1. Características físicas de los discos Físicamente, los discos son relativamente sencillos (Figura 1.2). Cada plato del disco tiene una forma circular plana. Sus dos superficies están cubiertas por un material magnético y la información se graba en ellas. Los platos están hechos de metal rígido o de vidrio y están cubiertos (generalmente por los dos lados) con material magnético para grabaciones. Mientras se está utilizando el disco, un motor lo hace girar a una velocidad constante elevada (generalmente 60, 90 o 120 y algunos llegan a 250 revoluciones por segundo). Hay una cabeza de lectura y escritura ubicada justo encima de la superficie del plato. La superficie del disco se divide a efectos lógicos en pistas, que se subdividen en sectores. Un sector (normalmente de 512 bytes) es la unidad mínima de información que puede leerse o escribirse en el disco. Hay alrededor de 16000 pistas en cada disco y de dos a cuatro platos por disco. Las pistas internas (más cercanas al eje) son de menor longitud, y en los disco de la generación actual, las pistas exteriores contienen más sectores que las pistas internas; normalmente hay alrededor de 200 sectores por pista en las pistas internas y alrededor de 400 sectores por pistas en las pistas externas. La cabeza de lectura y escritura guarda magnéticamente la información en los sectores en forma de inversiones de la dirección de magnetización del material magnético. Cada cara de un plato del disco tiene una cabeza de lectura y escritura que se desplaza por el plato para tener acceso a las diferentes pistas. Un disco suele contener muchos platos y las cabezas de lectura y escritura de todas las pistas están montadas en un solo dispositivo denominado brazo del disco y se desplazan conjuntamente. El conjunto de los platos del disco montados sobre un eje y las cabezas montadas en el brazo del disco se denomina dispositivo cabeza-disco. Dado que las cabezas de todos las platos se desplazan conjuntamente, cuando la cabeza de un plato se halle en la pista i-ésima, las cabezas de todos las demás platos también se encontrarán en la pista i-ésima de sus platos respectivos. Por consiguiente, las pistas i-ésimas de todos los platos se denominan conjuntamente cilindro i-ésimo. Las cabezas de lectura y escritura se mantienen tan próximas como sea posible a la superficie de los discos para aumentar la densidad de grabación. A menudo la cabeza flota o vuela a sólo micras de la superficie del disco; las revoluciones del disco crean una pequeña brisa y el dispositivo de cabezas se manufactura de forma que la brisa mantenga la cabeza flotando sobre la superficie del disco. ¿Problemas de choque de cabezas? Discos de cabezas fijas y discos con varios brazos en sistemas de alto rendimiento. Un controlador de disco actúa como interfaz entre el sistema informático y el hardware concreto de la unidad de disco. Acepta las órdenes de alto nivel para leer o escribir en un sector e inicia las acciones, como desplazar el brazo del disco a la pista adecuada y leer o escribir realmente los datos. Los controladores de disco también añaden comprobación de suma a cada sector. Otra labor interesante llevada a cabo por los controladores de disco es la reasignación de los sectores dañados. Si el controlador detecta que un sector está dañado cuando se da formato al disco por primera vez, o cuando se realiza un intento de escribir en el sector, puede reasignar lógicamente el sector a una ubicación física diferente (escogida de entre un grupo de sectores extra preparado con esta finalidad). La reasignación se anota en disco o en memoria no volátil y la escritura se realiza en la nueva ubicación. Figura 1.3 En la Figura 1.3 se muestra la manera en que los discos se conectan a un sistema informático. Al igual que otras unidades de almacenamiento, los discos se conectan a un sistema informático o a un controlador mediante una conexión de alta velocidad. En los sistemas de disco modernos, las funciones de menor nivel del controlador de disco, como el control del brazo, el cálculo y verificación de la comprobación de suma y la reasignación de los sectores dañados se implementan en la unidad de disco. La interfaz ATA(ATAttachment) (que es una versión más rápida que la interfaz electrónica de dispositivos integrados [IDE, Integrated Drive Electronics]) y la interfaz de conexión para sistemas informáticos pequeños (SCSI, Small Computer-System Interconnect Interface, pronunciado «escasi») se usan habitualmente para conectar los discos con las computadoras personales y las estaciones de trabajo. Los grandes sistemas y los sistemas servidores suelen disponer de una interfaz más rápida y cara, como las versiones de alta capacidad de la interfaz SCSI, y la interfaz Fibre Channel. Los discos se conectan por lo general directamente al controlador de disco mediante cables, pero también pueden estar situados en una ubicación remota y estar conectados mediante una red de alta velocidad al controlador de disco. En una arquitectura de red de área de almacenamiento (Storage-Area Network, SAN), se conecta un gran número de discos mediante una red de alta velocidad a varias computadoras servidoras. Los discos generalmente se organizan localmente usando una técnica de organización del almacenamiento denominada “disposición redundante de discos independientes (Redundant Array of Independent Disks, RAID)” para dar a los servidores una vista lógica de un disco de gran tamaño y muy fiable. 1.2.2. Medidas del rendimiento de los discos Las principales medidas de la calidad de un disco son la capacidad, el tiempo de acceso, la velocidad de transferencia de datos y la fiabilidad. El tiempo de acceso es el tiempo transcurrido desde que se formula una solicitud de lectura o de escritura hasta que comienza la transferencia de datos. Para tener acceso (es decir, para leer o escribir) a los datos en un sector dado del disco, primero se debe desplazar el brazo para que se ubique sobre la pista correcta y luego hay que esperar a que el sector aparezca bajo el brazo por acción de la rotación del disco. El tiempo para volver a ubicar el brazo se denomina tiempo de búsqueda y aumenta con la distancia que deba recorrer el brazo. Los tiempos de búsqueda típicos varían de dos a treinta milisegundos, en función de la distancia de la pista a la posición inicial del brazo. Los discos de menor tamaño tienden a tener tiempos de búsqueda menores, dado que la cabeza tiene que recorrer una distancia menor. El tiempo medio de búsqueda es la media de los tiempos de búsqueda medido en una sucesión de solicitudes aleatorias (uniformemente distribuidas). Si todas las pistas tienen el mismo número de sectores y despreciando el tiempo requerido para que la cabeza inicie su movimiento y lo detenga, se puede demostrar que el tiempo medio de búsqueda es un tercio del peor de los tiempos de búsqueda posibles. Teniendo en cuenta estos factores, el tiempo medio de búsqueda es alrededor de la mitad del tiempo máximo de búsqueda. Los tiempos medios de búsqueda varían actualmente entre cuatro y diez milisegundos, dependiendo del modelo de disco. Una vez ha tenido lugar la búsqueda, el tiempo que se pasa esperando a que el sector al que hay que tener acceso aparezca bajo la cabeza se denomina tiempo de latencia rotacional. Las velocidades rotacionales típicas de los discos actuales varían de 5400 rotaciones por minuto (90 rotaciones por segundo) hasta 15000 rotaciones por minuto (250 rotaciones por segundo) o, lo que es lo mismo, de 4 a 11.1 milisegundos por rotación. En media hace falta la mitad de una rotación del disco para que aparezca bajo la cabeza el comienzo del sector deseado. Por tanto, el tiempo de latencia medio del disco es la mitad del tiempo empleado en una rotación completa del disco. El tiempo de acceso es la suma del tiempo de búsqueda y del tiempo de latencia y varía de 8 a 20 milisegundos. Una vez que se ha ubicado bajo la cabeza el primer sector de datos, comienza su transferencia. La velocidad de transferencia de datos es la velocidad a la que se pueden recuperar o guardar datos en el disco. Los sistemas de disco actuales anuncian que permiten velocidades máximas de transferencia de 25 a 40 megabytes por segundo, aunque las velocidades de transferencia reales pueden ser significativamente menores, alrededor de 4 a 8 megabytes por segundo. La última de las medidas de los discos utilizadas con frecuencia es el tiempo medio entre fallos, que es una medida de la fiabilidad del disco. El tiempo medio entre fallos de un disco (o de cualquier otro sistema) es la cantidad de tiempo que, en media, se puede esperar que el sistema funcione de manera continua sin tener ningún fallo. De acuerdo con los anuncios de los fabricantes, el tiempo medio entre fallos de los discos actuales varía de 30000 a 1200000 horas (de 3,4 a 136 años). En la práctica, el tiempo medio entre fallos anunciado se calcula en términos de la probabilidad de fallo cuando el disco es nuevo (este escenario significa que dados 1000 discos relativamente nuevos, si el tiempo medio entre fallos es 1200000 horas, uno de ellos fallará en media en 1200 horas). Un tiempo medio entre fallos de 1200000 horas no implica que se espere que el disco vaya a funcionar 136 años. La mayoría de los discos tienen un periodo de vida esperado de cinco años, y tienen significativamente más fallos cuando son algunos años más viejos. ® Medidas del rendimiento de los discos a la fecha. ® Discos de estado solido “Flash Drives”. 1.2.3. Optimización del acceso a los bloques del disco Las solicitudes de E/S al disco las generan tanto el sistema de archivos como el gestor de la memoria virtual que se halla en la mayor parte de los sistemas operativos. Cada solicitud especifica la dirección del disco a la que hay que hacer referencia; esa dirección está en la forma de un número de bloque. Un bloque es una secuencia continua de sectores de una sola pista de un plato. Los tamaños de los bloques varían de 512 bytes a varios kilobytes. Los datos se transfieren entre el disco y la memoria principal en unidades de bloques. Los niveles inferiores del gestor del sistema de archivos transforman las direcciones de los bloques en cilindro, superficie y número de sector del nivel de hardware. Dado que el acceso a los datos del disco es varias órdenes de magnitud más lento que el acceso a la memoria principal, se ha prestado mucha atención a la mejora de la velocidad de acceso a los bloques del disco.
|
DOCENCIA UNIVERSITARIA > Sistemas de Bases de Datos II > Teoría de Sistemas de Bases de Datos II >