paint-brush
Les principes à garder à l'esprit lors de la création d'un datalake moderne pour votre infrastructure d'IAby@minio
12,603
12,603

Les principes à garder à l'esprit lors de la création d'un datalake moderne pour votre infrastructure d'IA

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

Le jeu de l’IA est une question de performances à grande échelle, et cela nécessite de bonnes bases. Voici comment être intelligent lors de la création d’un datalake moderne et mettre en place les bonnes fondations.

People Mentioned

Mention Thumbnail
featured image - Les principes à garder à l'esprit lors de la création d'un datalake moderne pour votre infrastructure d'IA
MinIO HackerNoon profile picture
0-item


Au milieu de la ferveur en faveur de l’adoption de l’IA, il existe une vérité essentielle et souvent négligée : le succès de toute initiative d’IA est intrinsèquement lié à la qualité, à la fiabilité et aux performances de l’infrastructure de données sous-jacente. Si vous ne disposez pas des bases appropriées, vous êtes limité dans ce que vous pouvez construire et donc dans ce que vous pouvez réaliser.


Votre infrastructure de données est la base sur laquelle repose l’ensemble de votre infrastructure d’IA. C'est là que les données sont collectées, stockées, traitées et transformées. Les modèles de formation utilisant l'apprentissage supervisé, non supervisé et par renforcement nécessitent des solutions de stockage capables de gérer des données structurées, comme un entrepôt de données. En revanche, si vous formez des grands modèles linguistiques (LLM), vous devez gérer des données non structurées, c'est-à-dire des documents sous leur forme brute et traitée.


Un Datalake moderne, ou Lakehouse, constitue le fondement de ces deux types d’IA. Un Datalake moderne est constitué à moitié de Data Warehouse et à moitié de Data Lake et utilise le stockage d'objets pour tout. Plus récemment, nous avons assisté à l’essor des formats de tables ouvertes. Les formats de table ouverte (OTF) comme Apache Iceberg, Apache Hudi et Delta Lake facilitent l'utilisation du stockage d'objets dans un entrepôt de données.


Lac de données


Le reste de cet article examinera comment tirer parti des caractéristiques du Datalake moderne qui le différencient des solutions conventionnelles telles que les entrepôts de données et les appliances propriétaires. Pour jeter les bases d'une infrastructure d'IA, vous avez besoin des éléments suivants :


  • Désagrégation du calcul et du stockage
  • Évolutivité (pas vers le haut)
  • Logiciel défini
  • Nuage natif
  • Matériel de base


Si nous sommes d’accord sur ce qui précède, une série de bonnes pratiques émergent qui se concentrent sur deux domaines de performance. S’il est intégré, le Datalake moderne sera à la fois rapide et évolutif. Ces bonnes pratiques incluent :


  • Optimisation du prix et des performances du lecteur
  • Incorporer un réseau haut débit

Désagrégation du calcul et du stockage

La désagrégation du calcul et du stockage au sein de votre infrastructure de données signifie que des ressources distinctes sont utilisées pour le calcul et le stockage. Cela contraste avec les solutions de stockage conventionnelles, où tout est regroupé sur un seul serveur ou, pire encore, dans une appliance. Cependant, les Datalakes modernes portent la désagrégation à un autre niveau. Si le Data Lake et le Data Warehouse avaient des exigences de stockage complètement différentes, nous pourrions utiliser deux instances distinctes d'un magasin d'objets, comme indiqué ci-dessous.


Minio Datalake


De plus, si l'entrepôt de données doit prendre en charge des charges de travail nécessitant des configurations conflictuelles, vous pouvez utiliser plusieurs moteurs de traitement. Ceci est illustré ci-dessous.


Prise en charge des charges de travail


Une infrastructure composable vous permet de faire évoluer vos ressources de calcul et de stockage de manière indépendante. Cela signifie que vous pouvez allouer davantage de ressources à la partie de votre infrastructure qui en a le plus besoin plutôt que de mettre à niveau simultanément le calcul et le stockage. Il en résulte une mise à l’échelle rentable puisque vous investissez uniquement dans les ressources requises.

La mise à l'échelle n'est pas à la hauteur

Les charges de travail d'IA sont gourmandes en données, sont souvent réparties sur plusieurs processeurs ou GPU, utilisent une grande puissance de calcul pour la formation et nécessitent une inférence en temps réel. La mise à l'échelle, et non l'augmentation, permet d'optimiser les performances et de s'adapter aux réseaux à haut débit.


La mise à l'échelle et la mise à l'échelle sont deux approches différentes pour augmenter la capacité et les performances de votre infrastructure de données. Cependant, la mise à l'échelle s'avère être l'approche la plus viable à mesure que les progrès sont réalisés dans les plates-formes de clustering comme Kubernetes et que de plus en plus de solutions s'efforcent d'être cloud natives. La mise à l'échelle dans une infrastructure désagrégée permet :


Haute disponibilité et tolérance aux pannes : si un nœud est occupé, un autre nœud peut prendre en charge une nouvelle demande, réduisant ainsi les temps d'attente et augmentant le débit. Si un nœud tombe en panne, la charge de travail peut être transférée vers d'autres nœuds, réduisant ainsi les temps d'arrêt et garantissant la continuité.


Performances et flexibilité : la mise à l'échelle peut offrir de meilleures performances en répartissant les charges de travail sur plusieurs nœuds ou serveurs pour gérer des volumes de données plus importants et davantage de requêtes simultanées. La mise à l'échelle est également plus flexible, car vous pouvez ajouter ou supprimer des nœuds selon vos besoins, ce qui facilite l'adaptation aux charges de travail fluctuantes ou aux variations saisonnières.


Efficacité opérationnelle et économe en ressources : la maintenance et les mises à niveau sont simplifiées lorsque vous évoluez. Au lieu de mettre hors ligne un système critique pour les mises à niveau, vous pouvez effectuer la maintenance sur des nœuds de stockage ou de calcul individuels sans perturber l'ensemble de l'infrastructure.

Cloud natif + logiciel défini

Le dernier élément permettant de tirer parti du Datalake moderne pour construire une base solide pour l’IA consiste à adopter une approche cloud native et définie par logiciel.


Les conteneurs comme Docker et les outils d'orchestration de conteneurs, comme Kubernetes, rendent possibles les architectures cloud natives. Tous les composants d'un Datalake moderne s'exécutent dans des conteneurs qui s'exécutent dans Kubernetes. Par conséquent, un Datalake moderne est natif du cloud.


« Défini par logiciel » fait référence à une approche dans laquelle un logiciel contrôle et gère la configuration, la fonctionnalité et le comportement des composants matériels, souvent dans le contexte des systèmes informatiques et des réseaux. Il s’agit de la pierre angulaire de l’infrastructure en tant que mouvement de code où l’accent est mis sur les logiciels intelligents et le matériel ultra-rapide. Le stockage défini par logiciel résume et gère les ressources de stockage via un logiciel, facilitant ainsi l'allocation et la gestion de la capacité de stockage sur différents appareils et supports de stockage.

Conçu pour la vitesse : NVMe et 100GbE

Pour tirer pleinement parti de votre matériel standard et de votre architecture définie par logiciel, vous avez besoin de deux éléments clés supplémentaires. Le premier concerne les disques NVMe. Les charges de travail modernes et axées sur les performances, la nature aléatoire de la lecture/écriture, l'essor des petits objets et la baisse des prix des SSD sont tous favorables à un Architecture centrée sur NVMe . Faites ce calcul, le montant initial peut être plus élevé, le TCO sera inférieur.


Le deuxième composant est le réseau 100GbE. Dans un monde défini par logiciel, le réseau s'avère être le goulot d'étranglement dans de nombreuses configurations, même à 100 GbE. Voici quelques-uns de ces scénarios :


Intensité en données : les charges de travail d'IA traitent souvent des ensembles de données volumineux, tels que des images, des vidéos, du texte en langage naturel et des données de capteurs. Les réseaux à haut débit peuvent transférer rapidement ces grands ensembles de données entre les unités de stockage et de traitement, réduisant ainsi les goulots d'étranglement dans le transfert de données.


Informatique distribuée – De nombreuses tâches d'IA impliquent une informatique distribuée sur plusieurs processeurs ou GPU. Les réseaux à haut débit permettent une communication et un échange de données efficaces entre ces appareils, garantissant ainsi un fonctionnement parallèle efficace des clusters informatiques.


Formation de modèles – La formation de modèles d'apprentissage profond, en particulier de LLM tels que les transformateurs ou les réseaux de neurones convolutifs, nécessite beaucoup de données et de puissance de calcul. Un réseau à haut débit permet un chargement et une synchronisation des données plus rapides entre les GPU distribués, ce qui peut accélérer considérablement les temps de formation.


Inférence en temps réel : les réseaux à faible latence et à haut débit sont essentiels pour les applications réactives qui intègrent l'IA. Un réseau à haut débit garantit un délai minimal entre une demande d'utilisateur et une réponse d'un modèle.

Concepts fondamentaux

En adhérant à ces principes : la désagrégation du calcul et du stockage, un matériel évolutif, non up, stupide et rapide et des logiciels natifs cloud intelligents, l'entreprise peut construire un Datalake moderne qui a les bases nécessaires pour répondre à ces exigences et pousser vos initiatives d'IA. avant.


Vous ne pouvez pas construire un bâtiment sur de mauvaises fondations, il suffit de demander aux anciens Égyptiens. Le jeu de l’IA est une question de performances à grande échelle, et cela nécessite de bonnes bases. Lésiner sur les fondations, c'est accumuler une dette technique qui fera tomber votre tour Jenga au bout de quelques minutes. Construisez intelligemment, mettez les fondations en place.