Ensayo
ALMACENAMIENTO Y ESTRUCTURA DE ARCHIVOS
rativo que la escritura se completó con éxito. El controlador escribe los datos en su destino en el disco en cualquier momento en que el disco no tenga otras solicitudes o cuando la memoria intermedia de RAM no volátil se llene. Cuando el sistema de bases de datos solicita la escritura de un bloque sólo percibe un retraso si la memoriaintermedia de RAM no volátil se encuentra llena. Durante la recuperación de una caída del sistema se vuelven a escribir en el disco todas las escrituras que se hallan pendientes en la memoria intermedia de RAM no volátil. El grado en el que la RAM no volátil aumenta el rendimiento se ilustra en el siguiente ejemplo. Supóngase que las solicitudes de escritura se reciben de manera aleatoria y que eldisco se halla ocupado el 90 por ciento del tiempo como media1. Si se dispone de una memoria intermedia de RAM no volátil de cincuenta bloques, las solicitudes de escritura sólo encontrarán la memoria intermedia llena, en media, una vez por minuto (y tendrán, por tanto, que esperar a que concluya un proceso de escritura en el disco). Duplicar la memoria intermedia a cien bloques resulta en encontrarla memoria intermedia llena sólo una vez por hora. Por tanto, en la mayoría de los casos, las escrituras a disco se pueden ejecutar sin que el sistema de bases de datos espere debido a una búsqueda o a la latencia rotacional. • Disco de registro histórico. Otro enfoque para reducir las latencias de escritura es utilizar un disco de registro histórico (de manera muy parecida a la memoriaintermedia RAM no volátil). Todos los accesos al disco de registro histórico son secuenciales, lo que elimina principalmente el tiempo de búsqueda y, así, pueden escribirse simultáneamente varios bloques consecutivos, lo que hace que los procesos de escritura en el disco sean varias veces
más rápidos que los procesos de escritura aleatorios. Igual que ocurría anteriormente también hay que escribir losdatos en su ubicación verdadera en el disco, pero este proceso de escritura puede llevarse a cabo sin que el sistema de bases de datos tenga que esperar a que se complete. Más aún, el disco de registro histórico puede reordenar las escrituras para reducir el movimiento del brazo. Si el sistema cae antes de que se hayan realizado algunas escrituras en la ubicación real del disco, cuando el sistemase recupere lee el disco de registro histórico para encontrar las escrituras que no se han realizado y entonces las completa. Los sistemas de archivo que soportan los discos de registro histórico mencionados se denominan sistemas de archivos de diario. Los sistemas de archivos de diario se pueden implementar incluso sin un disco de registro histórico aislado, guardando los datos y el registrohistórico en el mismo disco. Al hacerlo así se reduce el coste económico a expensas de un menor rendimiento. El sistema de archivos basado en registro histórico es una versión extrema del enfoque del disco de registro histórico. Los datos no se vuelven a escribir en su ubicación original en el disco; en su lugar, el sistema de archivos hace un seguimiento del lugar del disco de registro histórico en quese escribieron los bloques más recientemente y los recupera desde esa ubicación. El propio disco de registro histórico se compacta de manera periódica, por lo que se pueden eliminar los procesos de escritura antiguos que se han sobrescrito posteriormente. Este enfoque mejora el rendimiento de los procesos de escritura pero genera un elevado grado de fragmentación de los archivos que se actualizancon frecuencia. Como se señaló anteriormente, esa fragmentación aumenta el tiempo de búsqueda en la lectura secuencial de los archivos.
1 1 . 3 . R A ID
Los requisitos de almacenamiento de datos de algunas aplicaciones (en particular las aplicaciones Web, de bases de datos y multimedia) han estado creciendo tan rápidamente que se necesita un gran número de discos para almacenar sus datos,...
Regístrate para leer el documento completo.