Découvrez ce que sont les lacs de données, leurs caractéristiques, leurs avantages et leur rôle dans l'IA/ML. Apprenez comment ils transforment la gestion et l'analyse des mégadonnées.
Un lac de données est un référentiel de stockage centralisé conçu pour contenir une grande quantité de données dans leur format natif et brut. Contrairement à un entrepôt de données hiérarchique traditionnel qui stocke les données dans des fichiers ou des dossiers, un lac de données utilise une architecture plate pour stocker les données, généralement dans un stockage d'objets. pour stocker les données, généralement dans un stockage d'objets. Cette approche permet aux organisations de stocker des données structurées structurées provenant de bases de données relationnelles, des données semi-structurées (comme CSV, logs, XML, JSON), et des données non structurées (comme les courriels, les documents et les PDF) ainsi que des données binaires (images, audio, vidéo) sans traitement préalable. Pour les professionnels travaillant dans les domaines de l'intelligence artificielle (IA) et l 'apprentissage automatique (ML), cette architecture offre la flexibilité nécessaire pour accéder à des ensembles de données massifs à des fins d'expérimentation et d'analyse.
Le principal avantage d'un lac de données pour les data scientists est la possibilité d'appliquer "schéma à la lecture". Dans les bases de données traditionnelles, la structure (schéma) doit être définie avant que les données ne soient stockées (schéma en écriture). (schéma sur l'écriture). Dans un lac de données, les données brutes sont d'abord stockées, et la structure n'est appliquée que lorsque les données sont lues pour traitement. lues pour être traitées. C'est essentiel pour flux de travail d'apprentissage profond (DL) où les où les exigences de prétraitement changent souvent au fur et à mesure que les modèles évoluent.
Les ingénieurs ont souvent recours à des services informatiques en nuage comme Amazon S3 ou Azure Data Lake Storage pour créer ces référentiels. Ces plateformes s'intègrent de manière transparente à des cadres de traitement tels que Apache Spark, ce qui permet d'effectuer des requêtes et des sur des ensembles de données à l'échelle du pétaoctet.
Voici un exemple simple de la façon dont un script Python peut lancer une formation en utilisant un fichier de configuration de jeu de données qui pointe vers des données extraites de l'environnement du lac. vers des données extraites d'un environnement lacustre :
from ultralytics import YOLO
# Initialize the latest YOLO11 model
model = YOLO("yolo11n.pt")
# Train on a dataset. The 'coco8.yaml' file defines paths to images
# and labels that may have been ingested from a data lake.
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)
Les lacs de données sont l'épine dorsale des initiatives modernes de Big Data dans divers secteurs d'activité.
Il est important de différencier le lac de données des autres concepts de stockage :
La mise en œuvre d'un lac de données offre une grande évolutivité, permettant aux organisations d'augmenter leur capacité de stockage à moindre coût par rapport aux entrepôts traditionnels. de stockage à moindre coût par rapport aux entrepôts traditionnels. Il favorise la démocratisation des données, en donnant l'accès à la même source de données brutes à différentes fins, de la visualisation des données à la recherche avancée. la visualisation des données à la recherche avancée.
Toutefois, les défis à relever sont les suivants confidentialité des données et la conformité, surtout lorsqu'il s'agit de stocker des informations personnelles sensibles (PII). En outre, en l'absence de pipelines de prétraitement des données et de de prétraitement des données et d'outils de gouvernance comme Databricks Unity Catalog, il est difficile de trouver des de données brutes, il peut s'avérer difficile de trouver des informations utiles.