El sistema de archivos Babel - Voces de la UAM | La Crónica de Hoy
Facebook Twitter Youtube
El sistema de archivos Babel | La Crónica de Hoy

El sistema de archivos Babel

Voces de la UAM

Ricardo Marcelín Jiménez*

Imaginemos el servicio de radiología en un hospital, encargado de tomar un promedio de 100 mastografías diarias. Cada mastografía “pesa” alrededor de 100 megabytes, lo que significa que diariamente se producen cerca de 10 gigabytes de información. Supongamos ahora que el jefe del servicio decide almacenar los archivos usando memorias USB, con una capacidad de 1terabyte (TB) cada una. Por razones médicas y legales, se sabe que cada imagen debe conservarse y permanecer disponible por alrededor de cinco años. Lo anterior implica que, en el momento de llegar a su máxima capacidad, el servicio necesitaría administrar más de 20 dispositivos USB.

Podríamos pensar que ésta es una solución artificial que tiene su falla en el hecho de usar dispositivos relativamente pequeños y que puede resolverse utilizando otros recursos con mayores capacidades de almacenamiento. Sin embargo, aun en el caso de utilizar discos de, digamos 2 TB, no bastaría con 10 unidades para atender los problemas derivados del almacenamiento. La razón fundamental es que, hasta donde hemos considerado, cada imagen se guarda en un dispositivo solamente y, si éste fallara, entonces se cancelaría la posibilidad de recuperar cualquier archivo que se hubiese almacenado en él. Lo anterior significa que debemos utilizar alguna forma de almacenamiento redundante por ejemplo, guardar al menos otra copia de cada archivo en otro dispositivo. Ello significa que la capacidad efectiva de almacenamiento se reduce porque estamos guardando archivos duplicados, por lo que no bastan los 20 TB considerados.

Adicionalmente, tendríamos que llevar una base de datos donde se registren los dispositivos en los que se almacena cada uno de los archivos que se reciben. A esta base de datos la llamaremos los metadatos del sistema. Otro problema que debemos considerar es que los dispositivos de almacenamiento deben permanecer disponibles en todo momento, porque no se sabe de antemano cuál es el próximo dispositivo que va a consultarse. Al mismo tiempo, se tiene que cada disco podría ser accedido desde varias aplicaciones simultáneas.

Para complicar aún más las cosas, supongamos que justo antes de alcanzar el límite de su capacidad el servicio de radiología se amplía y, en consecuencia, debe escalarse también la capacidad de almacenamiento. De primera instancia podríamos pensar en incorporar más discos al conjunto original, pero esta medida por si sola es insuficiente.

Si queremos garantizar el desempeño de nuestro sistema deberíamos redistribuir la carga hasta ahora almacenada entre todas las unidades que integran el nuevo conjunto de dispositivos de almacenamiento. Por añadidura, esta solución debe ofrecer una interfaz única con la que pueda atenderse un número concurrente de solicitudes, bajo criterios de calidad.

Dos principios deben guiar el diseño de esta clase de soluciones: la alta disponibilidad y la escalabilidad. El primero implica que la información debe poder recuperarse aun a pesar de que existan componentes en falla. El segundo implica que, dicho de una manera muy coloquial, no es posible tirar a la basura un sistema sólo porque llego al límite de su capacidad inicial y construir otro más grande. Tampoco es posible construir sistemas gigantescos desde un inicio, porque les puede tomar tiempo en llenarse. Por razones de eficiencia en la gestión de recursos, un sistema debe poder crecer e incorporar nuevos dispositivos de almacenamiento, en la medida en que alcance ciertos umbrales de ocupación.

El sistema de archivos Babel es un sistema de almacenamiento masivo, desarrollado en la UAM Iztapalapa, bajo encargo del Centro de Investigación e Innovación en Tecnologías de la Información y Comunicación (INFOTEC), dependiente del CONACyT. Babel toma su nombre del famoso cuento de Borges: La Biblioteca de Babel. El sistema se compone de un conjunto de máquinas con capacidades de almacenamiento y procesamiento, llamadas nodos, que se conectan mediante una red local formando un clúster. Los clientes de Babel se comunican con una sola máquina, denominada coordinador o proxy, que despacha las solicitudes de servicio (almacenamiento, búsqueda y recuperación de archivos) y administra los recursos. Por otro lado, los archivos se guardan de manera redundante. Esto quiere decir que se crea un exceso en la información que codifica a los archivos y este exceso se guarda de forma distribuida entre los diferentes dispositivos que componen al sistema.

El beneficio inmediato del almacenamiento distribuido es que se logra la independencia entre la información y el medio en que se aloja. Visto de otra forma, los archivos que se guardan en un repositorio colectivo no dependen de un solo dispositivo para su recuperación. Si un documento estuviera guardado en una sola máquina, entonces la falla de ésta cancelaría la recuperación del mismo. En tanto, el exceso de información constituye una forma de “respaldo” que ofrece garantías de tolerancia a fallas y mejora la disponibilidad del sistema.

En paralelo con la construcción de Babel, desarrollamos un par de aplicaciones para demostrar el potencial de nuestro sistema. Por un lado, construimos un sencillo cliente para almacenamiento de archivos personales. Por otro lado, en colaboración con el Instituto Nacional de Rehabilitación (INR) construimos un PACS (Picture Archiving and Communications System) o sistema para gestión y almacenamiento de imágenes médicas, conectado a Babel. El primero resuelve el almacenamiento de una memoria corporativa. El segundo, pone de manifiesto la viabilidad de Babel como alternativa para el almacenamiento de archivos con fuertes restricciones de disponibilidad. Es importante recalcar cómo esta última observación no sólo aplica al caso de los archivos médicos, sino que puede extenderse a otros ámbitos, como colecciones documentales, imágenes de satélite y, en general, datos científicos.

El término “Big Data” (BD) se refiere a aquellos conjuntos de datos cuyo tamaño excede la capacidad de manejo de las herramientas de bases de datos típicas para capturar, almacenar, administrar y analizar su contenido. Los retos que se enfrentan en esta tecnología emergente incluyen aspectos técnicos tales como el registro de datos, su curado o preparación, el almacenamiento, transferencia, análisis, visualización, así como aspectos legales, tales como el manejo de información privada o sensible.

En 2011, la firma de consultoría MacKinsey comisionó a su centro de investigaciones a desarrollar un estudio prospectivo sobre el impacto que esta tecnología emergente puede tener en las distintas áreas de la actividad humana. La investigación en BD es una fuerza que está transformando la economía global e incluso los propios métodos de la ciencia.

La información se ha convertido en un activo estratégico de las organizaciones, cuyo volumen y tasas de crecimiento obligan a revisar los mecanismos para su gestión. Entendida esta última como las herramientas para su almacenamiento, consulta, transporte e incluso, generación de conocimiento. El análisis de costo-beneficio debe considerar un horizonte de mediano y largo plazo en donde, la disponibilidad de la información y la escalabilidad de su almacenamiento, resultan elementos claves en la toma de decisiones. Este escenario, relacionado con el almacenamiento de las organizaciones, es el contexto en donde se inscribe la propuesta del sistema Babel. 

El modelo de almacenamiento propuesto, es una tecnología emergente pensada para tomar ventaja de la infraestructura existente de Internet y ofrecer cómputo de altas prestaciones. Con ello se espera mejorar la competitividad de las organizaciones.

En el sector público existen muchas entidades que podrían beneficiarse de este desarrollo: los centros de investigación, las secretarías de estado, el poder judicial o el poder legislativo. Incluso, los gobiernos estatales o municipales tendrían la posibilidad de reorganizar su capacidad instalada y aprovecharla de manera más eficiente.

Tenemos ante nosotros la oportunidad de redimensionar el papel de la información electrónica, buscando construir una memoria colectiva que extienda nuestras capacidades para preservar, transmitir e, incluso, generar conocimiento.

* Profesor-investigador del Departamento de Ingeniería Eléctrica de la Unidad Iztapalapa de la UAM–INFOTEC

Imprimir

Comentarios