CunoFS lleva el acceso a archivos Posix a la capacidad de almacenamiento de objetos de S3

La capacidad infinita de almacenamiento de objetos en la nube con acceso a archivos compatible con Posix: esa es la promesa de CunoFS, de PetaGene, con sede en Cambridge, que tiene como objetivo resolver el desafío cada vez más generalizado de cómo combinar computación de alto rendimiento y grandes cantidades de datos almacenados.

Es un desafío para las cargas de trabajo como la inteligencia artificial (IA), la producción de videos, la investigación médica y la detección de anomalías de seguridad, que para funcionar mejor a menudo necesitan actualizar datos con frecuencia y rapidez de fuentes profundas o ampliamente distribuidas. Por lo general, leer y escribir rápidamente mientras se accede a grandes volúmenes de almacenamiento es una propuesta costosa.

“Para ahorrar costos en capacidad, la solución es usar el almacenamiento de objetos, localmente o en la nube”, dijo Dan Greenfield, cofundador y director ejecutivo de PetaGene, en un reciente evento IT Press Tour en Berlín al que asistieron LeMagIT. “El problema es que, a menudo, las aplicaciones no están diseñadas para el almacenamiento de objetos. Se abren, guardan, etc., como archivos, generalmente en NAS [network-attached storage]. No envían solicitudes HTTP según sea necesario en [Amazon] S3.”

Poner acceso a archivos en depósitos S3

Greenfield proporcionó algunos ejemplos: “En AWS [Amazon Web Services]1 TB [terabyte] de almacenamiento S3 de acceso frecuente cuesta $ 276 por mes. Con el servicio NAS de AWS, EFS, la factura asciende a 3600 USD al mes. Y si desea el mismo tipo de acceso paralelo que se ofrece en S3, necesitaría AWS FSx Lustre, y por 1 TB cuesta $7200 al mes”.

Aun así, no es probable que muchas empresas conviertan las aplicaciones para que funcionen en S3 como lo hacen en el modo de archivo. Dejando de lado las diferencias de protocolo de comunicación (API REST versus acceso a través del sistema operativo host), también sería necesario cambiar los algoritmos existentes y los hábitos de los usuarios.

Más contenido para leer:  Retailers and customers alike open to AI, but calls for caution

En el almacenamiento de objetos, no existe el concepto de directorios, no hay gestión de usuarios o grupos de usuarios de Posix, no hay modificaciones, solo la creación de nuevas versiones. En resumen, el proceso de migración de archivo a objeto es largo y costoso.

El enfoque tradicional para lidiar con los costos elevados del acceso a NAS ha sido colocar una puerta de enlace frente al almacenamiento de objetos y convertir NFS o SMB sobre la marcha. Un ejemplo de puerta de enlace es el s3fs de código abierto basado en Python.

“El problema con este tipo de arquitectura es que la puerta de enlace crea un cuello de botella, que pone en un solo archivo todo el acceso que los servidores pueden dar en paralelo”, dijo Greenfield, que estarían en S3. “Nuestra solución es implementar una puerta de enlace de archivos/objetos en cada servidor que ejecuta una aplicación”.

CunoFS está montado en servidores con la ruta Posix “/cuno/s3” y apunta al depósito especificado en las preferencias. Eso hace posible navegar por directorios de pensamientos usando el comando “cd”, extraer archivos a través de “tar”, cambiar los derechos de acceso con “chmod”, filtrar contenidos con “grep”, etc.

Mucho más rápido que el NAS tradicional

CunoFS no solo evita el cuello de botella de una única puerta de enlace, sino que también acelera el acceso más allá de lo que es posible con el NAS tradicional.

Según las cifras de rendimiento de PetaGene, CunoFS instalado en un servidor virtual de AWS escribirá el código fuente del kernel de Linux en 128 segundos en el almacenamiento S3 y lo leerá en 21 segundos.

Más contenido para leer:  Escenario Nightmare Log4Shell evitado por una acción rápida y profesional

El uso de un servidor de aplicaciones para escribir en el EFS NAS de AWS toma, respectivamente, seis y 10,5 minutos. Aquí, la escritura es más rápida que la lectura porque EFS usa caché.

Pasar a través de un NAS externo/puerta de enlace de objetos como s3fs para escribir el mismo código desde el mismo servidor al mismo almacenamiento S3 toma un poco más de dos horas, mientras que la lectura toma alrededor de 15 minutos.

También es probable que sean un caso de uso apropiado para un número cada vez mayor de empresas los marcos de IA. Por lo tanto, un servidor PyTorch alojado en Google Cloud Platform (GCP) escribirá a 260 Mbps en un servicio de almacenamiento de objetos a través de una puerta de enlace s3fs y 350 Mbps en NAS sin conversión. Con CunoFS en el servidor PyTorch, eso salta a 20 Gbps.

¿Cómo logra CunoFS lecturas/escrituras en archivos más rápido que un NAS que no necesita lidiar con solicitudes HTTP? Simplemente porque CunoFS no es solo una puerta de enlace local, sino que también es una herramienta eficiente para la compresión sobre la marcha. Es más rápido porque transfiere muchos menos datos.

CunoFS: una variante de PetaSuite

PetaGene comenzó como un proveedor de herramientas de compresión para laboratorios de genómica, PetaSuite, que podía lograr tasas de reducción del 60% al 90%.

A PetaSuite le siguió la biblioteca PetaLink, que permitió la compresión y rehidratación de archivos sobre la marcha en los servidores de aplicaciones. Fue esto lo que permitió lecturas y escrituras aceleradas en NAS.

Más contenido para leer:  Los minoristas ponen en orden la TI y la gestión de datos críticas para el negocio

En 2018, la plataforma obtuvo la capacidad de almacenar archivos en cubos S3 con conversión sobre la marcha al modo objeto, pero pasaron cuatro años más antes de que el módulo se usara para algo más que datos genómicos.

“Inicialmente, PetaSuite Cloud Edition fue muy eficiente para guardar archivos muy grandes en la nube, pero el rendimiento fue muy decepcionante en archivos de tamaño más habitual”, dijo Greenfield. “Comprendimos que resolver este problema nos permitiría expandir nuestra base de clientes a todos aquellos que desean procesar una gran cantidad de archivos”.

Da la casualidad de que PetaGene se dio cuenta de que había cometido el error de almacenar los metadatos de Posix (directorios, derechos de acceso) con los otros metadatos almacenados en S3 (nombre del autor, tipo de contenido).

“Los metadatos de Posix son mucho más simples que los metadatos de S3”, dijo Greenfield. “Es mucho más comprimible y podemos federarlo entre varios archivos. Por lo tanto, es posible tratarlo por separado y así es como PetaSuite Cloud Edition se convirtió en CunoFS”.

Desde 2022, CunoFS ha ejercido su hechizo en algunos grandes jugadores de almacenamiento, sobre todo Dell y NetApp, que han visto en él una forma de acelerar sus soluciones.

Además, PeteGene espera extender la compatibilidad de CunoFS a servidores Linux, con una versión de cliente para Windows y MacOS, así como un controlador CSI para clústeres de Kubernetes. Se espera una versión compatible con servidores ARM para finales de este año.

Nuestro objetivo fué el mismo desde 2004, unir personas y ayudarlas en sus acciones online, siempre gratis, eficiente y sobre todo fácil!

¿Donde estamos?

Mendoza, Argentina

Nuestras Redes Sociales