Qu'est-ce qu'un lac de données ?

Les lacs de données stockent de grandes quantités de données dans un format non hiérarchique.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Définir ce qu'est un « lac de données »
  • Comprendre comment les lacs de données sont utilisés dans le stockage d'objets
  • Comparer les lacs de données et les entrepôts de données

Copier le lien de l'article

Qu'est-ce qu'un lac de données ?

Un lac de données est un type de référentiel dans lequel sont stockées des données dans leur format naturel (ou brut). Également appelés « pools de données », les lacs de données forment un mécanisme de stockage d'objets. Il s'agit d'un système de stockage basé sur le cloud conçu pour manipuler de grandes quantités de données structurées ou non.

La structure non hiérarchique des lacs de données en fait une option plus flexible et plus évolutive que les systèmes de stockage plus traditionnels basés sur des fichiers. Cependant, la conception organisationnelle et la complexité de la tarification du trafic sortant des lacs de données sont telles que l'organisation et l'extraction des données peuvent s'avérer lentes et coûteuses.

Comment les lacs de données stockent-ils les données ?

Pour comprendre comment les lacs de données stockent les données, il importe de commencer par comprendre le fonctionnement du stockage d'objets. Contrairement au stockage traditionnel basé sur les fichiers, dans lequel les données sont stockées selon une hiérarchie de dossiers et de fichiers, le stockage d'objets rassemble des données individuelles (ou objets) dans un même emplacement et associe à chacunes des métadonnées personnalisables.

Ces métadonnées, à savoir les informations utilisées pour identifier un fichier (par ex. nom, type, taille ou identifiants uniques), aide les utilisateurs ou les applications à localiser et à récupérer les données sans avoir à suivre un chemin spécifique de dossier en dossier. Les lacs de données étant conçus pour contenir de grandes quantités de données, les métadonnées attribuées à chaque objet peuvent être très détaillées, ce qui permet une recherche plus rapide.

Pour illustrer la différence entre les stockages hiérarchique et non hiérarchique des données, imaginons que Bob souhaite stocker des milliers de disques vinyle. Grâce à un système de stockage hiérarchique, il a pu trier les disques dans de grands bacs (ou dossiers) classés par genre musical. Cela lui permet de localiser rapidement n'importe quel album, mais il risque de manquer de place dans le bac s'il achète d'autres disques du même genre. Cette méthode est similaire au stockage basé sur des fichiers, dans lequel les données doivent être organisées et stockées à un endroit spécifique.

Le système de stockage non hiérarchique quant à lui permettrait à Bob de placer tous ses documents dans une pièce (ou un lac de données), dans l'ordre qu'il souhaite. Chaque disque serait marqué d'une étiquette indiquant son genre. Cette méthode ralentirait le processus d'identification d'un seul disque, mais permettrait à Bob d'ajouter de nombreux disques à sa collection sans avoir à les stocker dans un bac spécifique. Cette méthode est similaire au stockage d'objets, dans lequel de plus grandes quantités de données peuvent être stockées au même endroit.

Pour une explication approfondie de ce processus, lisez Qu'est-ce que le stockage d'objets ?

Qu'est-ce que l'architecture en lac de données ?

L'architecture en lac de données fait référence aux processus et outils utilisés pour stocker, transformer, accéder et sécuriser les données au sein d'un lac de données. Qu'elle se trouve sur site ou dans le cloud, cette architecture partage souvent plusieurs des éléments suivants :

  • Sources de données : le format original des données, qu'elles soient structurées (c'est-à-dire données qui s'inscrivent dans une structure tabulaire, comme les bases de données SQL), semi-structurées (c.-à-d. les données qui ne peuvent pas facilement s'intégrer dans une structure tabulaire, comme les fichiers HTML), ou non structurées (par ex. les vidéos, les fichiers audio et les images)
  • Extraction de données :le mécanisme d'extraction, chargement et transformation (ELT pour Extract, load, transform) correspond au processus en plusieurs étapes qui consiste à déplacer les données de leur source d'origine vers la zone brute du lac de données, puis à les modifier pour les rendre plus utilisables.
  • Ingestion et stockage des données : la méthode par laquelle les données sont ajoutées à un lac de données à savoir l'ingestion en temps réel (ajout de données au fur et à mesure de leur acquisition), ou l'ingestion par lots (ajout de groupes de données à intervalles réguliers). Quelle que soit la méthode d'ingestion, toutes les données sont initialement stockées dans la section des données brutes ; en d'autres termes, elles sont ajoutées à un lac de données dans leur format original et brut.
  • Persistance des données et catalogage : le processus d'ajout de métadonnées aux données brutes afin qu'elles puissent être plus facilement accessibles et récupérées.
  • Traitement des données : les différentes transformations des données brutes, y compris le nettoyage des données (suppression des inexactitudes ou des incohérences), la normalisation des données (reformatage des données pour qu'elles aient toutes la même forme), l' enrichissement des données (ajout du contexte ou des informations nécessaires) et la structuration des données (transformation des données semi-structurées ou non structurées en données structurées).
  • Traçabilité des données : le processus de suivi des données depuis leur format original et brut jusqu'à leur état transformé.
  • Sécurité et gouvernance des données : les différentes méthodes permettant de garantir la sécurité des données et le contrôle des accès, la traçabilité des données, la qualité des données, ainsi que l'analyse et l'audit des données.

Cas d'utilisation des lacs de données

Les lacs de données peuvent être utilisés à des fins très diverses, notamment pour l'analyse et l'exploration des données, la gestion de l'Internet des objets (IoT), la personnalisation de l'expérience des consommateurs, l'apprentissage automatique avancé et bien d'autres choses encore. Les lacs de données sont également utiles pour la formation des modèles d'intelligence artificielle (IA), qui ont souvent besoin de très grands ensembles de données pour produire des résultats efficaces.

Imaginons par exemple qu'une agence de voyages souhaite proposer à sa clientèle des recommandations de voyages de manière automatique et personnalisée. Avec un lac de données, elle peut ingérer une grande quantité de données clients relatives aux habitudes de voyage, aux destinations populaires, à la durée du séjour, au type d'hébergement et aux activités. Ensuite, elle peut utiliser ces données pour entraîner un modèle d'IA à formuler des recommandations plus avancées et, idéalement, garantir une plus grande satisfaction des clients.

Quels sont les avantages des lacs de données ?

  • Flexibilité : la manière dont les lacs de données sont conçus leur permet de stocker des données dans n'importe quel format, sans qu'il soit nécessaire de procéder à des compressions ou des reformatages.
  • Évolutivité : les lacs de données peuvent traiter des quantités presque illimitées de données, ce qui en fait un choix plus populaire pour les organisations qui ont besoin de traiter et de stocker des quantités importantes (et croissantes) de données.
  • Facilité de recherche : les lacs de données permettent de retrouver facilement les données grâce à des métadonnées détaillées et hautement personnalisables.
  • Simplicité : toutes les données sont stockées dans le même lac de données, plutôt que dans des configurations hiérarchiques complexes.

Quelles sont les limites des lacs de données ?

  • Problèmes de fiabilité : les lacs de données peuvent devenir des marécages de données lorsque trop de données sont ajoutées à un référentiel sans catégorisation ni transformation efficaces, ce qui rend le lac de données peu fiable et difficile à utiliser.
  • Lenteur des performances : si les lacs de données sont conçus pour fonctionner à grande échelle, il arrive que les temps de requête et les performances globales soient altérés lorsque les données sont en trop grande quantité (ou que les moteurs de requêtes sont inefficaces)
  • Frais de trafic sortant : le trafic de données de sortie (ou transfert des données) correspond au processus de récupération des données auprès du fournisseur de stockage d'une organisation (cloud). Souvent, les fournisseurs de cloud facturent ces transferts, et les frais peuvent monter en flèche selon la quantité de données qu'une organisation doit transférer

Lacs de données et entrepôts de données

Les lacs de données sont de grands référentiels de données structurées et non structurées. Leur principal avantage réside dans leur capacité à fonctionner de manière rentable à grande échelle, mais leur taille et la complexité de leurs systèmes de catégorisation peuvent les rendre inefficaces par rapport à d'autres types de traitement et de stockage de données.

À l'instar des lacs de données, les entrepôts de données sont également de grands référentiels de données. Contrairement aux lacs de données, ils ne stockent que des données structurées et utilisent des hiérarchies de fichiers traditionnelles pour organiser, stocker et récupérer les données. Cette architecture permet de récupérer les données plus rapidement et d'améliorer les performances, mais son coût d'évolution peut être exponentiel par rapport à celui d'un lac de données.

Certains fournisseurs de cloud proposent une solution hybride appelée data lakehouses, qui combine les fonctions essentielles et avantages des lacs de données et entrepôts de données. Plutôt que de conserver les données structurées et non structurées dans des systèmes cloisonnés, les entreprises peuvent utiliser les lacs de données pour traiter et stocker tous les types de données, en y associant les capacités organisationnelles et les performances élevées d'un entrepôt de données avec l'évolutivité rentable d'un lac de données. Cette méthode permet également aux organisations de garantir une plus grande intégrité et fiabilité des données grâce à des outils automatisés de gouvernance des données et de conformité.

Cloudflare prend-elle en charge les lacs de données ?

Cloudflare R2 est une solution de stockage d'objets gratuite qui permet aux entreprises de créer leurs propres lacs de données. Soutenu par le réseau mondial de Cloudflare, R2 contribue à assurer une durabilité et une fiabilité optimales des données en répliquant les objets plusieurs fois, de sorte qu'ils restent facilement accessibles et très résistants aux pannes régionales et à la perte de données.

En savoir plus sur R2. et sur la façon dont un cloud de connectivité réduit les frais de trafic sortant lors du déplacement de données entre clouds.