Lac de données

Un article de Wikipédia, l'encyclopédie libre.

Un lac de données (en anglais data lake) est une méthode de stockage de données massives utilisée par le big data[1] (mégadonnées en français). Ces données sont gardées dans leurs formats originaux ou sont très peu transformées[2],[3]. Le lac de données donne la priorité au stockage rapide et volumineux de données hétérogènes en adoptant une architecture en cluster. Il n'est pas optimisé pour les requêtes SQL comme les SGBD relationnels classiques, et s'écarte des Propriétés ACID traditionnelles. On parle depuis 2010 de SGBD NoSQL.

On trouve donc dans un lac de données des données de natures et de sources différentes, telles que :

  • des données structurées issues notamment de bases de données relationnelles (lignes et colonnes) ;
  • des données variées issues de bases NoSQL ;
  • des données semi-structurées (fichiers CSV, journaux, XML, JSON...) ;
  • des données non structurées (emails, documents, PDF) ;
  • des fichiers de type blob (images, audio, vidéo notamment).

Ces données sont conservées dans le lac de données pour analyse ultérieure. Il s’agit d’une solution de gestion de données hybrides et variées ayant pour objectif de stocker de manière rapide et peu chère une grande quantité de données brutes.

La principale qualité du lac de données réside en sa flexibilité. Il doit pouvoir stocker les données, quel que soit leur format. Lorsqu’une donnée est intégrée au sein du Data Lake, elle se voit attribuer un identifiant unique et est marquée au moyen d'un jeu de balises de métadonnées étendues. Lorsqu'un besoin se présente, le Data Lake est parcouru pour y rechercher des informations pertinentes. L'analyse de ces données permet alors d'apporter de la valeur et de répondre à ce besoin.

Origine du terme[modifier | modifier le code]

Le concept de Data Lake a été évoqué pour la première fois, en 2010, par James Dixon, CTO de Pentaho, comme une solution pour le stockage de données sans pré-traitement et sans connaître précisément l’usage futur qu’il en sera fait. L'image du lac, permettant d'expliquer, que différentes sources peuvent l'alimenter de manière naturelle et brute, et que les utilisateurs peuvent y plonger pour l'explorer et en rapporter des échantillons à examiner[4],[5].

Usages et fonctions[modifier | modifier le code]

Les lacs de données facilitent l'accès et l'analyse des données pour des tâches telles que:

Le lac de données est donc un outil de gestion des données et de métadonnées dans des domaines variés qui nécessitent le stockage et l'analyse de volumes massifs de données. Associé à des moyens d’analyse en temps réel et d’intelligence artificielle cela permet une meilleure mise en valeur de l'information et la saisie d’opportunités.

Cet outil apporte certains avantages tels que la rationalisation du stockage des données, la réduction des coûts de stockage, et facilite l'accès pour l'analyse et la prise de décisions d’une façon globale. Pour ce qui est de la rationalisation, le lac de donnée permet en effet de réduire le temps passé et le coût liés à préparer les données avant leur stockage, puisque leur format d’origine est conservé.

On note également une réduction des dépenses d'exploitation en utilisant le lac de données comme référentiel pour les données plus anciennes. Sans le lac de données, il serait nécessaire d’opter pour des entrepôts de données (data warehouses) pour stocker celles-ci, or cette solution est bien plus onéreuse. En dernier lieu, de par la garantie de l’outil que les données soient fiables et pertinentes,

Plusieurs environnements fournissent des services complets permettant la gestion d'un lac de données. La plupart d'entre eux sont basés sur la technologie Hadoop et fournissent des installations en local (MapR, Cloudera, Hortonworks) ou dans le Cloud (Microsoft Azure, Google Cloud Platform, Amazon S3)[6].

Avantages et inconvénients[modifier | modifier le code]

Le Data Lake est avant tout un moyen de stockage dont les avantages sont:

  • Une capacité de stockage de grosses volumétries de données
  • Une rapidité de stockage sans pré-traitement des données brutes
  • Une souplesse et polyvalence pour stocker différents formats et sources de données
  • rationalisation du stockage des données
  • réduction des coûts de stockage,
  • réduire le temps passé et le coût liés à préparer les données avant leur stockage, puisque leur format d’origine est conservé.

Si bien utilisé cela permet de:

  • Garder un historique des données anciennes sur de longue périodes.
  • Faciliter le partage, la mise à jour des données, et l'utilisation des données de façon cohérente et homogène dans l'entreprise, en évitant le silotage des données.
  • Rechercher, analyser et corréler l'ensemble des données de l'entreprise pour une meilleur analyse et création de valeur.
  • Facilite l'accès pour l'analyse et la prise de décisions d’une façon globale.

Malgré tout, la solution présente aussi certains inconvénients:

  • La difficulté à conserver un lac de données propre et organisé, ce qui est relativement chronophage et peut être à terme particulièrement onéreux. Le risque est de se retrouver avec une masse de données devenues massives et inexploitables, voire inutilisables. On parle alors de marécage de données ou Data Swamp: c'est un état dégradé du Data Lake. [7],[8] Ce terme est utilisé pour désigner un lac de données inaccessibles aux utilisateurs concernés, ou de peu de valeur. A ce propos, Andrew Brust[9] assimile pour sa part complètement le Data Swamp à une extension d’un Data Lake qui aurait sursaturé au fur et à mesure que des quantités trop importantes de données sont intégrées[10].
  • La difficulté à organiser et maintenir une gouvernance des données efficace.
  • Le temps nécessaire à traiter et analyser les données stockées à l'état brut
  • L'expertise requise pour rechercher, analyser et traiter les données de manière pertinente et créatrice de valeur, souvent confiées aux Data Scientists.
  • La sécurité, la confidentialité, et problématiques liées aux données personnelles et au respect des réglementations, inhérente aux données, est toujours présente et d'autant plus importante que le Lac de données regroupe et conserve des données massives.

[11]

Distinctions avec d'autres méthodes de stockage[modifier | modifier le code]

Aujourd’hui il existe différents moyens de stocker les données autres que les Data Lake, comme les entrepôts de données (Data Warehouses), ou les Datamart.

  • Le risque est que ces bases de données spécialisées ne soient utilisées que par un petit nombre de personnes, et par la même méconnues et sous exploitée par le reste de l'entreprise. C'est le phénomène de silotage ou Data Silo, où les données ne sont accessibles qu'à une partie de l'organisation, et finissent par poser des problèmes de mise à jour, de cohérence et de partage.
  • Ces bases sont structurées différemment, car chaque donnée est traitée et transformée avant d'être stockée. Ceci peut être un gain de temps sur les données réellement utiles, mais au contraire une perte de temps si les données stockées ne sont pas utilisées par la suite, ce qui peut être fréquemment le cas pour les masses de données en Big Data. Le modèle préétabli de ces bases, peut aussi limiter les possibilités et évolutions des interrogations et recherches futures qui peuvent être faites des données stockées.
  • L'implémentation des propriétés ACID des SGBD relationnels classiques est coûteuse en ressources et temps de traitement. Elles ne sont donc plus nécessairement respectées dans les systèmes NoSQL qui privilégient la rapidité et la distribution des traitements en clusters pour gérer les données massives.
  • La limite de volume des données gérées

Références[modifier | modifier le code]

  1. Alain Clapaud, « Qu’est-ce que le Data Lake, le nouveau concept "Big Data" en vogue », sur Le Journal du Net, (consulté le )
  2. (en) « Top Five Differences between Data Lakes and Data Warehouses », sur Blue-Granite.com, (consulté le )
  3. « Data Lake : définition et guide définitif | Talend », sur Talend Real-Time Open Source Data Integration Software (consulté le )
  4. (en) « Pentaho, Hadoop, and Data Lakes », sur James Dixon's Blog, (consulté le )
  5. +Bastien L, « Data Lake : définition, avantages et inconvénients pour l’entreprise », sur LeBigData.fr, (consulté le )
  6. « Data lake as a Service : Amazon et Microsoft surnagent, Google sous l'eau », sur journaldunet.com, (consulté le )
  7. (en-US) Daniel Gutierrez, « Data Swamp or Data Lake? Five Key Questions Before You Dive In », sur insideBIGDATA, (consulté le )
  8. « Gouvernance de lac de données », sur www.ibm.com (consulté le )
  9. (en-US) Andrew Brust, « How to Prevent A Data Lake from Becoming a Data Swamp », sur DATAVERSITY, (consulté le )
  10. Collibra, « Data Lake vs. Data Swamp - Pushing the Analogy », sur Collibra (consulté le )
  11. Philippe Nieuwbourg, « Le concept de « data lake » - lac de données : explication de texte », sur Decideo - Actualités sur le Big Data, Business Intelligence, Data Science, Data Mining (consulté le )

Articles connexes[modifier | modifier le code]