datalake

Décryptez le datalake : bases de données, datawarehouse…

29/09/2022
Big Data

Apparu dans les années 2000, le datalake soulève encore de nombreuses questions. C’est pourquoi nous les avons regroupées ci-dessous pour vous donner des clés de compréhension sur ses usages, la différence avec un DataWarehouse, on Premise ou dans le Cloud ? 

Que peut-on faire avec un datalake ? 

Le datalake est l’endroit où l’on peut stocker toutes les données d’une organisation. Il est soumis aux réglementations applicables aux données et notamment le RGPD et la CNIL. 
Il sert de source ou réservoir à données. Les données peuvent y être conservées pour une utilisation ultérieure. Avant sa mise en place, il est important de choisir l’utilisation qui en sera faite, car le datalake peut être relationnel ou pas. Se pose alors la question d’utiliser une base de données SQL ou noSQL.

Quelle base de données utiliser : SQL ou NoSQL ? 

Les bases de données noSQL n’ont généralement pas de structure prédéfinie ni de but préétabli contrairement aux bases de données SQL qui sont généralement des bases de données relationnelles et interrogeables par les utilisateurs. Les bases SQL les plus connue sont MySQL ou PostgreSQL mais il en existe d’autres…  Ces bases de données permettent de stocker des données en utilisant un schéma pré-défini. Elles ont aussi l’avantage d’être évolutives verticalement et horizontalement pour s’adapter au volume des données. 
Les bases NoSQL, généralement non relationnelles, associent aux données des attributs (ou champs) placés à la demande en temps réel, et exploitables ensuite par le biais de requêtes. Il s’agit de bases telles que Mongo Database, Apache Cassandra, Redis, Apache, Neo4j, ou encore Amazon Dynamo Database. 
Le choix n’étant pas toujours aisé, il peut être opportun d’être accompagné dans le choix de sa solution de base de données. 

Quelles données sont concernées par le Datalake ? 

On ne peut pas parler de datalake sans parler de données structurées et non structurées. Le datalake est capable de stocker l’ensemble des données qu’elles soient structurées ou non, contrairement à un datawarehouse qui lui, a besoin de données structurées. 

Les données structurées 

Les données structurées sont des données qualifiées et de qualité, elles sont prédéfinies et formatées, c’est-à-dire que l’on sait à l’avance ce qui se trouve à l’intérieur. Il peut s’agir par exemple d’un fichier PDF correspondant à une structure définie et comportant des champs nom, prénom, et adresse. Ces données sont stockées dans leur format d’origine, et ne sont pas traitées. Elles sont facilement interrogeables. L’ensemble de schémas permettant de trouver ces données est très souvent prédéfini en avance au niveau du datawarehouse. 

Les données non structurées 

Il s’agit de données brutes, dans leur format d’origine, qui sont déversées dans le datalake et ne sont  pas désignées. Il peut s’agir de mails, de posts sur les réseaux sociaux ou d’images par exemple. Le traitement de ces données nécessite l’intervention d’experts pour préparer son utilisation selon les besoins métier. Dans ce cas, les différents métiers doivent définir les éléments importants à analyser au préalable. 

Quelle est la différence entre un datalake et un datawarehouse ?  

Lorsque l’on souhaite mettre en place des outils de gestion de la donnée au sein de son entreprise , nous recommandons l’utilisation du datalake et du datawarehouse.  Dans tous les cas, il s’agit avant tout d’un choix stratégique des organisations. Chaque solution présente des avantages comme des inconvénients. Il servent chacun des besoins et des utilisations différentes. 
Le datalake est un entrepôt de données structurées et non structurées alors que le datawarehouse ne peut recevoir que des données structurées. Le datalake ingère des données rapidement et les répartit à la volée. Il est agile et capable de gérer des données structurées et non structurées mais les données ne sont pas forcément de qualité. C’est un socle de données, qui permet le pré-traitement de la donnée. Les données y sont stockées et préparées notamment pour l’utilisation de tags. Il permet également de croiser des données provenant de diverses sources pour améliorer la qualité des données. 
Dans un datawarehouse, les données sont organisées par métier et sont de bonne qualité. On se sera assuré de la qualité en amont dans le datalake. Le datawarehouse contient des données préparées soigneusement à l’avance, il est de ce fait moins agile. Le retraitement de l’info prend du temps mais les données sont de qualité et plus fiables que celles du datalake. 
L’une des nuances à nos propos ci-dessus est qu’il est possible de créer une ébauche de datawarehouse dans le datalake. Cependant, cela impacte le délai de disponibilité et augmente l’effort car il faut classifier les données. Ce datawarehouse ne sera cependant qu’un premier niveau de référentiel : un peu de nettoyage, de préparation des données en fonction des référentiels avant de les transférer vers le datawarehouse ou le référentiel (MDM). 


Où faire un datalake : on Premise ou dans le Cloud ? 

Là encore, il s’agit principalement d’un choix des organisations en fonction de leurs besoins, mais également des compétences présentes en interne. 

On Premise 

Pour cette option, le plus important sera de savoir si les entreprises ont les compétences pour monter, maintenir, et enrichir l’infrastructure. Si ce n’est pas le cas, et particulièrement si les compétences internes manquent pour maintenir l’infrastructure, ce choix pourra s’avérer compliqué. En effet, les risques sont notamment la perte de données, de disponibilité, la dette technique, mais aussi l’impossibilité de développer de nouveaux services liés à la donnée. 

Cloud

Si l’option SaaS est retenue, la maintenance de l’infrastructure sera comprise et l’entreprise n’aura besoin que de charger les données, les traiter et les interroger. Bien que parfois plus couteuse, cette option permet de se concentrer sur la partie à valeur ajoutée. Pour l’Iaas et dans une moindre mesure le PaaS, on retrouvera des problématiques similaires au On Premise.
En fonction de la taille de l’entreprise il peut être intéressant de monter sa propre infrastructure on premise et d’investir sur une montée en compétence des collaborateurs qui vont maintenir cette infrastructure. 
Les questions ci-dessus doivent être abordées avant de lancer un projet data. N’hésitez pas à vous faire accompagner par des experts qui pourront vous aider dans la définition de votre stratégie data ou dans sa mise en place. Pour plus d'informations, contactez-nous

copy-link