Sie sind auf Seite 1von 4

Sabiendo, de antemano que el sistema operativo Linux soporta varios sistemas de archivos,

se ha elegido un sistema de archivos entre tres posibles candidatos, los cuales todos son un sistema
de archivos “Journaling”.

Sistema de archivos Journaling


Un sistema de archivos Journaling, se puede definir como un sistema que sirve para darles
más seguridad e integridad a los datos, y los metadatos, que están en el disco. Se recomienda para
sistemas de alta disponibilidad. Y si en la “nueva característica” que poseen es la de las
“transacciones”, que hacen que el sistema se recupere “normalmente”, por ejemplo, ante las caídas
inesperadas.
Un sistema de archivos journaling es útil cuando se apaga mal el equipo, pues con un 99%
de probabilidad el sistema de archivos no se corrompe ya que las transacciones al disco que no
fueron completadas, fueron registradas anteriormente en el “journal” de manera que al reiniciar el
equipo éstas son realizadas, por lo tanto el sistema de archivos se “sincroniza” de vuelta sin perder
datos. En otros sistemas de archivos (por ejemplo FAT32), si sucediera esto, se podrían perder
muchos datos.

Journaling
Journaling es la capacidad que tienen estos sistemas de archivos para recordar las
operaciones parciales que conforman una actualización.
Ext2 es, o era, el sistema de archivos estándar para Linux, éste fue creado por Wayne Davidson.
Este sistema de archivos no es un sistema de archivos “Journaling”.
Linux, además de este sistema de archivos, soporta varios más, por ejemplo: XFS de Silicon
Graphics, JFS de IBM, ReiserFS de Namesys, y el Ext3 desarrollado por uno de los desarrolladores
del anterior Ext2.
Según pruebas, ReiserFS es rápido con archivos “medianamente pequeños”, mientras que XFS,
es muy rápido con archivos “relativamente grandes”, mientras más grandes sean los archivos que se
van a manejar con XFS, mejor.

• XFS: La versión 1.0 se libero el 1º de Mayo del 2001. Principalmente éste sistema de
archivos fue creado para el sistema operativo UNIX de la Silicon Graphics, llamado IRIX.
Ahora está disponible bajo el esquema de licencia GPL de GNU y va en la versión 1.2,
aunque a principios de Agosto se espera la versión 1.3. Éste sistema de archivos es usado
por muchas instituciones, las cuales no han reportado ningún problema. Por ejemplo, el
departamento de astronomía de la universidad de Wisconsin tiene 31 equipos corriendo
Linux con XFS, con acerca de 2.6 TeraBytes de disco cada uno.
• Ext3: Éste sistema es básicamente un Ext2 al cual se le agregaron extensiones para
transformarlo en un sistema de archivos journaling. Este nuevo sistema de archivos fue
creado por Stephen Tweedie, uno de los desarrolladores del Ext2.
Lo malo de este sistema de archivos, es que no posee las características del resto de los
sistemas de archivos journaling, como por ejemplo, mejorar la rapidez en la manipulación
de datos, algoritmos de balanceo, atributos como ACL, capacidad para manejar archivos
grandes, etc.“
• ReiserFS: Este fue el primer sistema de archivos journaling en estar disponible para Linux,
aunque en un principio tuvo fallas muy importantes que llevaron a cuestionar su inclusión
nativa en el kernel de linux. Posee una estructura de datos “b-trees” y es especialmente
rápido con archivos pequeños, todo lo contrario al XFS. La “empresa” que creó este sistema
de archivos se llama Namesys, y en su página web se puede encontrar mucha información,
FAQs, otros documentos, y por supuesto bajar el software necesario para usar ReiserFS.
Reiser actualmente es estable, pero carece de muchas características que ya están presentes
en XFS, como quotas y POSIX ACL.
Para poder decidir cual de estos tres sistemas de archivos se usará en el traffic Shaper, es
necesario que se hagan unas pruebas para medir velocidad, ya que es necesario medir la velocidad
del sistema de archivos en la máquina que se usará como shaper, debido a que las pruebas
mostradas por los fabricantes son hechas en máquinas y condiciones ideales.
Para ello se efectuaron dos pruebas con los sistemas de archivos en cuestión y un testigo, el cual es
un sistema de archivos de uso común en la mayoría de los computadores a lo largo de todo el
mundo, con lo que se tiene una noción de las capacidades de los diferentes sistemas de archivos.

Primera Prueba
Escritura, lectura y borrado de un archivo relativamente grande (256 MegaBytes). Los
comandos utilizados han sido éstos:

linux # dd if=/dev/zero of=./prueba bs=1M count=256


linux # dd if=./prueba of=/dev/null bs=1M count=256
linux # rm –f ./prueba

Tiempos (en segundos):


Sistema de Archivos Escritura Lectura Borrado
ReiserFS 18.5 23.41 0.4
Ext3 20.3 21.38 0.57
XFS 16.32 19.42 0.26
FAT32 (testigo) 43.65 27.98 1.59

Segunda Prueba
Esta se ha basado en el código fuente del kernel de Linux en su versión 2.4.21 (el cual se usa en
el traffic shaper). Se ha bajado el código fuente comprimido en gzip y empaquetado con tar (linux-
2.4.21.tar.gz) de más de 100 megabytes. Los comandos empleados fueron:

linux # cp linux-2.4.21.tar prueba.tar


linux # tar –xvf prueba.tar
linux # rm –f prueba.tar
linux # rm –rf linux

Tiempos (en segundos):


Sistema de Archivos Copia Extracción Borrado .tar Borrado Directorio
ReiserFS 38.48 58.44 0.45 10.09
Ext3 21.31 59.19 2.88 11.12
XFS 16.21 35.44 0.18 21.96
FAT32 (testigo) 39.76 134.19 1.2 6.7

Conclusiones
Ha sorprendido la velocidad del XFS, pues en la primera prueba que se hizo (un solo
experimento) no parecía tan rápido. Para lectura, escritura y borrado de archivos grandes
(secuencialmente) es el más rápido. Aunque el ReiserFS le sigue de cerca, y además, según los
benchmarks de los desarrolladores éste debería ser más rápido que el XFS.
En cuanto a las pruebas con el código fuente del kernel de Linux la copia del archivo .tar ha
dado unos resultados un tanto raros. A primera el más rápido ha sido el XFS, luego Ext3, ReiserFS
y finalmente FAT32. Esto mirando los promedios. Una cosa curiosa, que hace dudar de la fiabilidad
del ReiserFS, es que la varianza de los tiempos usando este sistema de archivos ha sido demasiado
grande, oscilando entre 16.94 y 63.48 segundos. Lo que resulta inexplicable, pues se repitió la
prueba 6 veces y no se estabilizó el resultado.
La extracción de los archivos desde al archivo .tar, (que implica la lectura de una archivo grande
intercalada con la creación de un gran directorio con muchos archivos) ha sido fulminante para
FAT32, mientras que XFS lo ha hecho rápidamente y sin ningún problema, y ReiserFS con Ext3 han
sido regulares (casi tardan lo mismo). Si en la prueba anterior era destacable la varianza en el
tiempo de la copia de archivos en el ReiserFS, en esta prueba ha llamado la atención la consistencia
de los resultados de XFS (idénticos en los 3 experimentos).
En cuanto al borrado de un archivo grande el más rápido ha sido nuevamente el XFS. Pero en el
borrado de una estructura de directorios completa el XFS es mucho más lento que los demás, y
como sorpresa el FAT32 ha sido el más rápido en hacerlo.
Debido a los resultados de las pruebas, se ha decidido por usar el sistema de archivos XFS
en el traffic shaper, pues es el que mejor satisface las necesidades de rapidez y consistencia
necesarios, ReiserFS era un buen candidato por su velocidad, pero la diferencia de resultados entre
una misma prueba dejo a ver una falta de consistencia que no era buena para un shaper que controla
una red entera, pues en caso de falla de energía eléctrica y/o cualquier otro tipo de falla, se necesita
un equipo que se reinicie o se recupere de la forma más rápida posible, más que en borrado de
archivos, sino en lectura, XFS cumple con todos los requisitos necesarios para ser el sistema de
archivos del traffic shaper.

El journaling es un mecanismo por el cual un sistema informático puede implementar


transacciones. También se le conoce como "registro por diario".
Se basa en llevar un journal o registro de diario en el que se almacena la información necesaria para
restablecer los datos afectados por la transacción en caso de que ésta falle.
El procedimiento es básicamente el siguiente:
1. Se bloquean las estructuras de datos afectadas por la transacción para que ningún otro
proceso pueda modificarlas mientras dura la transacción.
2. Se reserva un recurso para almacenar el journal. Por lo general suelen ser unos bloques de
disco, de modo que si el sistema se para de forma abrupta (corte eléctrico, avería, fallo del
sistema operativo...) el journal siga disponible una vez reiniciado el sistema.
3. Se efectúan una a una las modificaciones en la estructura de datos. Para cada una:
1. Se apunta en el journal como deshacer la modificación y se asegura de que esta
información se escribe físicamente en el disco.
2. Se realiza la modificación.
4. Si en cualquier momento se quiere cancelar la transacción se deshacen los cambios uno a
uno leyéndolos y borrándolos del journal.
5. Si todo ha ido bien, se borra el journal y se desbloquean las estructuras de datos afectadas.
Las aplicaciones más frecuentes de los sistemas de journaling se usan para implementar
transacciones de sistemas de bases de datos y, más recientemente, para evitar la corrupción de las
estructuras de datos en las que se basan los sistemas de archivos modernos.
En el caso concreto de los sistemas de archivos, el journaling se suele limitar a las operaciones que
afectan a las estructuras que mantienen información sobre:
• Estructuras de directorio.
• Bloques libres de disco.
• Descriptores de archivo (tamaño, fecha de modificación...)
El hecho de que no se suela implementar el journaling de los datos concretos de un archivo suele
carecer de importancia, puesto que lo que persigue el journaling de sistemas de archivos es evitar
los engorrosos y largos chequeos de disco que efectúan los sistemas al apagarse bruscamente, ya
que el sistema al arrancar solo deberá deshacer el journal para tener un sistema coherente de nuevo.
El término «metadatos» no tiene una definición única. Según la definición más difundida
metadatos son «datos sobre datos». También hay muchas declaraciones como «informaciones sobre
datos»,[4] «datos sobre informaciones»[5] e «informaciones sobre informaciones».[6]
Otra clase de definiciones trata de precisar el término como «descripciones estructuradas y
opcionales que están disponibles de forma pública para ayudar a localizar objetos»[7] o «datos
estructurados y codificadas que describen características de instancias conteniendo informaciones
para ayudar a identificar, descubrir, valorar y administrar las instancias descritas».[8] Esta clase
surgió de la crítica de que las declaraciones más simples son tan difusas y generales que dificultarán
la tarea de acordarse de estándares, pero estas definiciones no son muy comunes.
Distinción entre datos y metadatos [editar]
La mayoría de las veces no es posible diferenciar entre datos y metadatos. Por ejemplo, un poema
es un grupo de datos, pero también puede ser un grupo de metadatos si está adjuntado a una canción
que lo usa como texto.
Muchas veces, los datos son tanto "datos" como "metadatos". Por ejemplo, el título de un texto es
parte del texto como a la vez es un dato referente al texto(Dato como Metadato)

Das könnte Ihnen auch gefallen