El procesamiento in situ , también conocido como procesamiento en almacenamiento ( ISP , por sus siglas en inglés), es un término de la informática que se refiere al procesamiento de datos en el lugar donde se encuentran almacenados. In situ significa "situado en el lugar o posición original, natural o existente". Un proceso in situ procesa los datos donde están almacenados, como en unidades de estado sólido (SSD) o dispositivos de memoria como NVDIMM , en lugar de enviarlos a la unidad central de procesamiento (CPU) de un ordenador.
Esta tecnología utiliza motores de procesamiento integrados dentro de los dispositivos de almacenamiento para que puedan ejecutar aplicaciones de usuario directamente en ellos, de modo que los datos no necesitan salir del dispositivo para ser procesados. Si bien la tecnología no es nueva, la arquitectura moderna de las unidades SSD, así como la disponibilidad de potentes procesadores integrados, la hacen más atractiva para ejecutar aplicaciones de usuario directamente en el dispositivo. [ 1 ] Las unidades SSD ofrecen un mayor rendimiento de datos en comparación con los discos duros (HDD). Además, a diferencia de los HDD, las unidades SSD pueden gestionar múltiples comandos de E/S simultáneamente.
Las unidades SSD contienen una cantidad considerable de potencia de procesamiento para administrar la matriz de memoria flash y proporcionar una interfaz de alta velocidad a las máquinas host. Estas capacidades de procesamiento pueden proporcionar un entorno para ejecutar aplicaciones de usuario in situ. El término dispositivo de almacenamiento computacional ( CSD ) se refiere a una unidad SSD capaz de ejecutar aplicaciones de usuario in situ. En una arquitectura CSD eficiente, el subsistema de procesamiento integrado en el almacenamiento tiene acceso a los datos almacenados en la matriz de memoria flash a través de un enlace de baja potencia y alta velocidad. El despliegue de dichas unidades CSD en clústeres puede aumentar el rendimiento y la eficiencia generales de las aplicaciones de big data y computación de alto rendimiento (HPC). [ 1 ]
Reducción de los cuellos de botella en la transferencia de datos
Los diseñadores de centros de datos Webscale han estado intentando desarrollar arquitecturas de almacenamiento que favorezcan los hosts de alta capacidad. En la siguiente figura (de [ 1 ] ), se muestra un sistema de almacenamiento de este tipo donde 64 SSD están conectados a un host. Para simplificar, solo se muestran los detalles de un SSD. Los SSD modernos suelen contener 16 o más canales de memoria flash que pueden utilizarse simultáneamente para operaciones de E/S de la matriz de memoria flash. Considerando un ancho de banda de 512 MB/s por canal, el ancho de banda interno de un SSD con 16 canales de memoria flash es de aproximadamente 8 GB/s. Este enorme ancho de banda se reduce a aproximadamente 1 GB/s debido a la complejidad del software de interfaz del host y la arquitectura de hardware. En otras palabras, el ancho de banda acumulado de todos los canales internos de los 64 SSD alcanza el producto del número de SSD, el número de canales por SSD y 512 MB/s (ancho de banda de cada canal), lo que equivale a 512 GB/s. Si bien el ancho de banda acumulado de las interfaces externas de las unidades SSD es igual a 64 multiplicado por 1 GB/s (el ancho de banda de la interfaz del host de cada unidad SSD), es decir, 64 GB/s, para comunicarse con el host, todas las unidades SSD deben estar conectadas a un conmutador PCIe. Por lo tanto, el ancho de banda disponible del host se limita a 32 GB/s.

En general, existe una diferencia de 16 veces entre el ancho de banda interno acumulado de todas las unidades SSD y el ancho de banda disponible para el host. En otras palabras, para leer 32 TB de datos, el host necesita 16 minutos, mientras que los componentes internos de las unidades SSD pueden leer la misma cantidad de datos en aproximadamente 1 minuto. Además, en estos sistemas de almacenamiento, los datos deben moverse continuamente a través de la compleja pila de hardware y software entre los hosts y las unidades de almacenamiento, lo que impone un consumo energético considerable y reduce drásticamente la eficiencia energética de los grandes centros de datos. Por lo tanto, los arquitectos de almacenamiento deben desarrollar técnicas para disminuir el movimiento de datos, y la tecnología ISP se ha introducido para superar los desafíos mencionados al trasladar el proceso a los datos.
Eficiencia y utilización
La tecnología de almacenamiento computacional minimiza los movimientos de datos en un clúster y, además, aumenta su capacidad de procesamiento al incorporar motores de procesamiento de bajo consumo a todo el sistema. Esta tecnología puede aplicarse tanto a discos duros (HDD) como a unidades de estado sólido (SSD); sin embargo, la arquitectura SSD moderna ofrece mejores herramientas para su desarrollo. Las SSD que permiten ejecutar aplicaciones de usuario in situ se denominan dispositivos de almacenamiento computacional (CSD). Estas unidades de almacenamiento son recursos de procesamiento ampliables, lo que significa que no están diseñadas para reemplazar los procesadores de alto rendimiento de los servidores modernos. En cambio, colaboran con la CPU del host y aumentan su eficiente capacidad de procesamiento. El artículo científico «Almacenamiento computacional: una plataforma eficiente y escalable para aplicaciones de big data y computación de alto rendimiento» [ 1 ] , publicado por Springer Publishing bajo una política de acceso abierto (acceso público gratuito), muestra las ventajas de la utilización de CSD en los clústeres.
Ejemplos de procesamiento en almacenamiento se pueden observar en campos como la visualización [ 2 ] , la biología [ 3 ] y la química. Esto demuestra cómo esta tecnología permite visualizar acciones y resultados de manera más eficiente que mediante el movimiento de datos, independientemente del tipo de datos que se muevan. Las siguientes figuras (de [ 1 ] ) muestran cómo se pueden utilizar los CSD en un clúster Apache Hadoop y en un entorno distribuido basado en la interfaz de paso de mensajes .


Industria
En la industria del almacenamiento, ya existen implementaciones de varias compañías, entre ellas NGD Systems, [ 4 ] ScaleFlux [ 5 ] y Eideticom. [ 6 ] Otras compañías han intentado realizar un trabajo similar en el pasado, como Micron Technology [ 7 ] y Samsung . El enfoque de todas ellas apunta en la misma dirección: gestionar o procesar los datos donde se encuentran.
NGD Systems fue la primera empresa en crear almacenamiento de procesamiento in situ y ha producido dos versiones del dispositivo desde 2017. El Catalina-1 era un SSD independiente que ofrecía 24 TB de memoria flash junto con procesamiento. [ 4 ] Un segundo producto llamado Newport se lanzó en 2018 que ofrecía hasta 32 TB de memoria flash . [ 8 ] [ 9 ]
ScaleFlux utiliza un dispositivo NVMe CSS-1000 que utiliza recursos del host y cambios en el kernel para direccionar el dispositivo y usar recursos del host para administrar hasta 6,4 TB de memoria flash en el dispositivo, o SSD base. [ 10 ] Eideticom utiliza un dispositivo llamado dispositivo NVMe solo con DRAM sin carga como acelerador sin almacenamiento flash real para datos persistentes. [ 11 ] Micron llamó a su versión 'Scale In' en un evento Flash Memory Summit (FMS) en 2013, pero nunca pudo comercializarla y se basaba en un SSD SATA en producción. [ 7 ] Samsung ha trabajado en varias versiones de dispositivos de KV Store y otros. [ 12 ]
Referencias
- 1 2 3 4 5 Torabzadehkashi, Mahdi; Rezaei, Siavash; HeydariGorji, Ali; Bobarshad, Hossein; Alves, Vladimir; Bagherzadeh, Nader (15 de noviembre de 2019). "Almacenamiento computacional: una plataforma eficiente y escalable para aplicaciones de big data y HPC" . Journal of Big Data . 6 (100). doi : 10.1186/s40537-019-0265-5 .
- ^ Raffin, Bruno (diciembre de 2014). "In-Situ_2014" (PDF) . Servidor FTP ( FTP ).(Para ver los documentos, consulte Ayuda:FTP )
- ↑ "Biología estructural in situ" . Universidad de Utrecht . 17 de marzo de 2016. Consultado el 4 de junio de 2018 .
- 1 2 "El almacenamiento computacional toma el protagonismo en el nuevo SSD de NGD Systems" . Tech Target . 13 de febrero de 2020. Consultado el 7 de marzo de 2019 .
- ↑ "¿Y si te dijera que las unidades flash pueden realizar su propio procesamiento?" . The Register . 13 de febrero de 2020 . Consultado el 13 de febrero de 2018 .
- ↑ "IDC Innovators: Computational Storage, 2019" . IDC . 13 de febrero de 2020. Consultado el 1 de agosto de 2019 .
- 1 2 Doller, Ed (14 de agosto de 2013). "Escala micrométrica en la ponencia principal - FMS 2013" (PDF) . www.FlashMemorySummit.com .
- ↑ "NGD Systems lanza su primer SSD computacional NVMe U.2 de 16 TB" . Storage Review . 13 de febrero de 2020. Archivado del original el 14 de febrero de 2020. Consultado el 31 de octubre de 2018 .
- ↑ "20 millones de dólares para la empresa emergente de dispositivos de almacenamiento NGD" . Orange County Business Journal . 13 de febrero de 2020. Consultado el 10 de febrero de 2020 .
- ↑ "Solución de servidor de almacenamiento computacional basada en datos (solución de aceleración de computación y almacenamiento) : Inspur" . xeonscalable.inspursystems.com . Archivado del original el 4 de junio de 2018. Consultado el 4 de junio de 2018 .
- ↑ "Tecnologías de almacenamiento modernas en 2020: lo que necesitas saber" . Bigstep . 13 de febrero de 2020. Consultado el 10 de enero de 2020 .
- ↑ Do, Jaeyoung; Kee, Yang-Suk; Patel, Jignesh M.; Park, Chanik; Park, Kwanghyun; DeWitt, David J. (22 de junio de 2013). "Procesamiento de consultas en SSD inteligentes". Procesamiento de consultas en SSD inteligentes: oportunidades y desafíos . ACM. págs. 1221–1230 . doi : 10.1145/2463676.2465295 . ISBN 9781450320375. S2CID 12496095 .
- Almacenamiento de datos