paint-brush
Los principios a tener en cuenta al construir un lago de datos moderno para su infraestructura de IAby@minio
12,603
12,603

Los principios a tener en cuenta al construir un lago de datos moderno para su infraestructura de IA

MinIO5m2024/02/06
Read on Terminal Reader
Read this story w/o Javascript

El juego de la IA se trata de rendimiento a escala, y esto requiere una base adecuada. A continuación se explica cómo ser inteligente al crear un lago de datos moderno y establecer las bases adecuadas.

People Mentioned

Mention Thumbnail
featured image - Los principios a tener en cuenta al construir un lago de datos moderno para su infraestructura de IA
MinIO HackerNoon profile picture
0-item


En medio del fervor por adoptar la IA, hay una verdad crítica y a menudo pasada por alto: el éxito de cualquier iniciativa de IA está intrínsecamente ligado a la calidad, la confiabilidad y el rendimiento de la infraestructura de datos subyacente. Si no tienes la base adecuada, estás limitado en lo que puedes construir y, por lo tanto, en lo que puedes lograr.


Su infraestructura de datos es la base sobre la que se construye toda su infraestructura de IA. Es donde se recopilan, almacenan, procesan y transforman los datos. Los modelos de capacitación que utilizan aprendizaje supervisado, no supervisado y reforzado requieren soluciones de almacenamiento que puedan manejar datos estructurados, como un almacén de datos. Por otro lado, si está entrenando modelos de lenguajes grandes (LLM), debe administrar datos no estructurados: documentos en su forma sin procesar y procesada.


Un Datalake moderno, o Lakehouse, es la base de estos dos tipos diferentes de IA. Un Datalake moderno es mitad almacén de datos y mitad lago de datos y utiliza almacenamiento de objetos para todo. Más recientemente, hemos visto el aumento de los formatos de mesa abierta. Los formatos de tabla abierta (OTF) como Apache Iceberg, Apache Hudi y Delta Lake facilitan el uso del almacenamiento de objetos dentro de un almacén de datos.


lago de datos


El resto de este artículo examinará cómo aprovechar las características del Modern Datalake que lo diferencian de las soluciones convencionales como los almacenes de datos y los dispositivos propietarios. Para construir una base para la infraestructura de IA, necesita lo siguiente:


  • Desagregación de Computación y Almacenamiento
  • Escalar horizontalmente (no aumentar)
  • Definido por software
  • Nativo de la nube
  • Hardware básico


Si coincidimos en lo anterior, surgen una serie de mejores prácticas que se centran en dos áreas de desempeño. Si se incorpora, el Datalake moderno será rápido y escalable. Estas mejores prácticas incluyen:


  • Optimización del precio y el rendimiento de la unidad
  • Incorporar una red de alta velocidad

Desagregación de computación y almacenamiento

La desagregación de la computación y el almacenamiento dentro de su infraestructura de datos significa que se utilizan recursos separados para la computación y el almacenamiento. Esto contrasta con las soluciones de almacenamiento convencionales, donde todo viene empaquetado en un único servidor o, peor aún, en un dispositivo. Sin embargo, los Modern Datalakes llevan la desagregación a otro nivel. Si Data Lake y Data Warehouse tuvieran requisitos de almacenamiento completamente diferentes, podríamos usar dos instancias separadas de un almacén de objetos, como se muestra a continuación.


Minio lago de datos


Además, si el almacén de datos necesita soportar cargas de trabajo que requieren configuraciones conflictivas, entonces podría utilizar más de un motor de procesamiento. Esto se muestra a continuación.


Cargas de trabajo de soporte


Una infraestructura componible le permite escalar sus recursos informáticos y de almacenamiento de forma independiente. Esto significa que puede asignar más recursos a la parte de su infraestructura que más los necesita en lugar de actualizar tanto la computación como el almacenamiento juntos. Da como resultado un escalamiento rentable ya que solo se invierte en los recursos necesarios.

El escalamiento horizontal no ha aumentado

Las cargas de trabajo de IA requieren un uso intensivo de datos, a menudo se distribuyen en varias CPU o GPU, utilizan una gran potencia informática para el entrenamiento y requieren inferencias en tiempo real. La ampliación, no la ampliación, ayuda a optimizar el rendimiento y a adaptarse a las redes de alta velocidad.


La ampliación y la ampliación son dos enfoques diferentes para aumentar la capacidad y el rendimiento de su infraestructura de datos. Sin embargo, la ampliación está demostrando ser el enfoque más viable a medida que se realizan avances en plataformas de clustering como Kubernetes y cada vez más soluciones se esfuerzan por ser nativas de la nube. El escalamiento horizontal en una infraestructura desagregada proporciona:


Alta disponibilidad y tolerancia a fallos : si un nodo está ocupado, otro nodo puede aceptar una nueva solicitud, lo que reduce los tiempos de espera y aumenta el rendimiento. Si un nodo falla, la carga de trabajo se puede trasladar a otros nodos, lo que reduce el tiempo de inactividad y garantiza la continuidad.


Rendimiento y flexibilidad : la ampliación horizontal puede proporcionar un mejor rendimiento al distribuir cargas de trabajo entre múltiples nodos o servidores para manejar mayores volúmenes de datos y más solicitudes simultáneas. El escalamiento horizontal también es más flexible porque puede agregar o eliminar nodos según sea necesario, lo que facilita el ajuste a cargas de trabajo fluctuantes o para adaptarse a variaciones estacionales.


Eficiencia operativa y de recursos : el mantenimiento y las actualizaciones se simplifican cuando se escala horizontalmente. En lugar de desconectar un sistema crítico para realizar actualizaciones, puede realizar el mantenimiento de almacenamiento individual o nodos de computación sin interrumpir toda la infraestructura.

Nativo de la nube + definido por software

El último componente del aprovechamiento de Modern Datalake para construir una base sólida para la IA es adoptar un enfoque definido por software, nativo de la nube.


Contenedores como Docker y herramientas de orquestación de contenedores, como Kubernetes, hacen posibles las arquitecturas nativas de la nube. Todos los componentes de un Datalake moderno se ejecutan en contenedores que se ejecutan en Kubernetes. Por lo tanto, un Datalake moderno es nativo de la nube.


"Definido por software" se refiere a un enfoque en el que el software controla y gestiona la configuración, la funcionalidad y el comportamiento de los componentes de hardware, a menudo en el contexto de sistemas informáticos y redes. Este es el componente básico de la infraestructura como movimiento de código donde el énfasis está en el software inteligente y el hardware rápido y tonto. El almacenamiento definido por software abstrae y administra los recursos de almacenamiento a través del software, lo que facilita la asignación y administración de la capacidad de almacenamiento entre diferentes dispositivos y medios de almacenamiento.

Diseñado para la velocidad: NVMe y 100 GbE

Para aprovechar al máximo su arquitectura definida por hardware y software, necesita dos piezas clave más. El primero son las unidades NVMe. Las cargas de trabajo modernas orientadas al rendimiento, la naturaleza aleatoria de la lectura/escritura, el aumento de objetos pequeños y la caída de los precios de los SSD favorecen una Arquitectura centrada en NVMe . Haga esos cálculos, el pago inicial puede ser mayor, el TCO será menor.


El segundo componente son las redes de 100 GbE. En un mundo definido por software, la red resulta ser el cuello de botella en muchas configuraciones, incluso a 100 GbE. Éstos son algunos de esos escenarios:


Uso intensivo de datos : las cargas de trabajo de IA a menudo procesan conjuntos de datos masivos, como imágenes, videos, texto en lenguaje natural y datos de sensores. Las redes de alta velocidad pueden transferir rápidamente estos grandes conjuntos de datos entre unidades de almacenamiento y procesamiento, lo que reduce los cuellos de botella en la transferencia de datos.


Computación distribuida : muchas tareas de IA implican computación distribuida en múltiples CPU o GPU. Las redes de alta velocidad permiten una comunicación eficiente y el intercambio de datos entre estos dispositivos, asegurando que los grupos informáticos funcionen en paralelo de manera efectiva.


Entrenamiento de modelos : el entrenamiento de modelos de aprendizaje profundo, especialmente LLM como transformadores o redes neuronales convolucionales, requiere una gran cantidad de datos y potencia computacional. Una red de alta velocidad permite una carga y sincronización de datos más rápida entre GPU distribuidas, lo que puede acelerar significativamente los tiempos de entrenamiento.


Inferencia en tiempo real : las redes de baja latencia y alto rendimiento son esenciales para las aplicaciones responsivas que incorporan IA. Una red de alta velocidad garantiza un retraso mínimo entre la solicitud de un usuario y la respuesta de un modelo.

Conceptos fundamentales

Al adherirse a estos principios: la desagregación de la computación y el almacenamiento, la ampliación horizontal, no la ampliación, el hardware tonto y rápido y el software nativo de la nube inteligente, la empresa puede construir un Datalake moderno que tenga la base adecuada para cumplir con estos requisitos e impulsar sus iniciativas de IA. adelante.


No se puede construir un edificio sobre unos cimientos pobres; pregúntenle a los antiguos egipcios. El juego de la IA se trata de rendimiento a escala, y esto requiere una base adecuada. Escatimar en los cimientos es acumular una deuda técnica que derribará tu torre Jenga al cabo de unos minutos. Construya de manera inteligente, establezca las bases.