fbpx

Data lake : tout ce qu’il faut savoir

Le volume des données numériques ne cesse d’augmenter chaque année. En 2020, il a atteint près de 44 milliards de gigaoctets. Ces données sont pour la plupart non structurées ou structurées à moitié. Le défi est de trouver une solution efficace pour stocker ces données tout en permettant leur traitement rapide, ains qu’un data lake puisse remplir ces conditions.

Qu’est-ce qu’un data lake  ?

Le terme data lake ou ( marécage de données) a été imaginé par James Dixon, le responsable des technologies, CTO, de Pentaho. Il sous-entend que les données sont stockées sous une forme brute, contrairement aux données stockées dans les data warehouses habituels. En d’autres termes, le marécage de données est un emplacement de stockage centralisé. Il contient des big data issues de plusieurs sources, sous un format natif. Les formats de conservation sont plus souples, ce qui facilite leur utilisation ultérieure. Les données sont faciles à récupérer, puisqu’elles sont associées à des balises de métadonnées et des identificateurs, constituant un ensemble de données diversifié en temps réel 

Les data lake sont configurés sur un cluster de serveurs standards évolutifs. Il est ainsi possible de stocker les données sans se soucier de la capacité de stockage. En effet, les clusters sont déployés sur un cloud ou sur site. Les data lakes sont souvent confondus avec les data warehouses, et pourtant, il existe une grande différence entre les deux concepts. 

Data lake et data warehouse : quelles différences ?

Le datalake et le data warehouse ont un même objectif, celui de créer une base de données centralisée afin d’être être utilisé pour alimenter diverses applications. La similitude s’arrête là, car il existe des différences vraiment notables entre les deux. 

Des différents schémas qu’un data lake peut réaliser 

La première différence concerne le schéma. Le data warehouse possède un schéma prédéfini et structuré avant le stockage. Le schéma est ainsi appliqué pendant l’écriture de données. Le marécage de données ( ou data lake ) n’applique pas de schéma. Les données sont ainsi stockées dans leur format natif d’origine, constituant un ensemble de données non structurées en temps réel. Dans un data warehouse, les données sont préparées avant leur traitement. Ce n’est pas le cas dans un  marécage de données où les préparations s’effectuent au moment du traitement réel des données. 

Une complexité dans l’accessibilité des données 

Les données stockées dans un datalake ne sont pas compréhensibles pour tous. Il faut avoir une compréhension plus ou moins approfondie des différents types de données et de leurs relations pour pouvoir les lire et les analyser. Le schéma défini et documenté utilisé par le data warehouse facilite la compréhension des données enregistrées. 

Une question de flexibilité

Le data warehouse nécessite la mobilisation de ressources pour créer le schéma initial et sa modification en fonction des besoins de l’entreprise. Le serveur du cluster abritant le lac de donnée, de son côté, est évolutif.

Quels sont les avantages qu’un data lake possède ?

Le lac de donnée utilise un schéma de lecture en temps réel. Cela signifie qu’il n’y a pas de schéma prédéfini pour importer les données avant leur stockage. Les données ne seront lues qu’au moment de leur traitement. C’est seulement après leur analyse que le schéma sera redéfini, si besoin est. Cette fonctionnalité permet d’économiser un temps considérable. Cela permet aussi de stocker toutes les données, peu importe leur format natif, constituant ainsi un ensemble de données diverses et non structurées.

Les spécialistes en data sciences peuvent ainsi analyser les données avec plus de rapidité et de précision. Ils peuvent ainsi utiliser ces données pour différents usages allant de la détection de fraudes à l’analyse des sentiments des consommateurs. 

Le data lake, pour quelles utilisations ? 

Le principal intérêt du data lake est sa capacité à gérer rapidement une grande diversité de données. Il s’agit d’une solution intéressante pour les utilisateurs de Business Intelligence. Il permet de combiner les données traitées au sein de l’entreprise avec celles disponibles sur internet.

Il est aussi possible de recourir aux données stockées dans l’entrepôt de données pour analyser les données d’équipements spécialisés pour déterminer les causes de certaines maladies. L’entrepôt de données permet aussi de traiter très rapidement les données enregistrées par les différents capteurs. Dans la grande distribution, il est possible d’utiliser l’entrepôt de données pour traiter les gros volumes de données qui décrivent les utilisateurs. 

Comme vous l’auriez sans doute déjà compris, le data lake peut être utilisé pour effectuer des analyses prédictives avancées, mais aussi pour réaliser des rapports réguliers d’organisations.

Où implémenter le data lake ?

Le choix peut se faire entre implémenter le data lake sur site ou dans un cloud. Chaque implémentation possède des avantages et quelques inconvénients. Dans l’un comme l’autre cas, il y a des défis à relever. 

L’implémentation de data lake sur site

Les data lake sont généralement implantés sur site. Le stockage se fait sur Hadoop Distributed File System ou HDSF. Le traitement se fait via YARN, dans des clusters Hadoop. Mais qu’est-ce que le Hadoop, direz-vous ? Hadoop est une solution évolutive et peu coûteuse assez intéressante. Il est assez performant, grâce au côté local des données. En effet, un seul emplacement est utilisé pour les données et le traitement des données. Les détails seront donnés plus tard.

Pour créer une infrastructure sur site, il faut relever quelques défis :

  • Il faut un large espace de stockage pour accueillir des serveurs puissants ; 
  • L’installation et la configuration ne sont pas simples. Il faut plusieurs mois pour mettre en place un data center opérationnel ;
  • L’évolution du lac de donnée n’est pas simple. S’il faut monter la capacité de stockage, il faut aussi augmenter l’espace d’accueil des serveurs. Cela engendre des dépenses supplémentaires non négligeables.
  • Pour éviter ces déconvenues, il est impératif de bien évaluer les besoins avant l’implémentation du data lake ;
  • Il faut aussi prévoir un coût relativement élevé par rapport à l’implémentation du lac de donnée sur cloud

Comment implémenter le data lake sur cloud ? 

L’implémentation du’un data lake en temps réel sur cloud présente de multiples avantages. Le déploiement est moins coûteux par rapport à l’implémentation sur site. L’évolution est aussi plus simple. Il n’y a pas d’espace à préparer ni de besoin à évaluer au préalable. Tout comme l’implémentation sur site, il y a quelques précautions à prendre. Il faut considérer les risques de fuite des informations confidentielles et sensibles. Même si la plupart des fournisseurs garantissent la sécurité des données, il ne faut pas perdre de vue les risques de vols de données; De plus la flexibilité du cloud permet de stocker et d’accerder facilement a un entrepôt de données diversifié.

La plupart du temps, les entreprises disposent déjà des données dans une data warehouse. Il est donc impératif de trouver une solution pour faciliter le transfert des données de cette warehouse vers le cloud. Il faut aussi trouver une solution qui permettrait de traiter toutes les données stockées à la fois sur le cloud et le data warehouse

La gouvernance des données devrait être aussi considérée. Elles ne devraient pas être difficiles à exploiter.

Comment créer l’architecture d’un data lake ?

Le lac de donnée s’articule autour de deux composantes : le stockage et le traitement. Comme il est dit plus haut, cela peut se faire sur site ou sur un cloud. Comment créer l’architecture d’un data lake ? Il existe trois options : Hadoop, Azure et AWS. 

Créer un data lake sur Hadoop

Hadoop est la solution la plus communément utilisée pour créer un marécage de donnée. HDFS (Hadoop Distributed File System) assure le stockage des données sur les serveurs. YARN ou Yet Another Resource Negotiator, s’assure de gérer les ressources. Avec MapReduce, Hadoop divise les données en sous-ensembles, pour faciliter leur traitement dans son cluster de serveurs.

Pourquoi choisir Hadoop ?

  • Il est connu ;
  • Il est disponible en open source et reste donc moins coûteux ;
  • différents outils ETL sont disponibles ;
  • Le stockage des données et leur traitement se font au même endroit.

Créer un data Lake sur AWS

Le principal avantage de AWS réside dans l’étendue de sa gamme de produits. Il est possible de stocker les données grâce à Amazon Simple Storage Service ou Amazon S3. Les données pourront être importées grâce à Kinesis Streams, Kinesis Firehose ou encore Direct Connect et Snowball. 

Il existe également d’autres outils intéressants comme l’ElasticSearch pour faire des recherches au niveau du data lake. Il est aussi possible d’authentifier les utilisateurs du lac de donnée grâce aux pools Cognito. Les données sont sécurisées grâce à Security Token Service, Key Management Service ou encore CloudWatch et CloudTrail. Les données pourront ensuite être analysées et traitées à l’aide des outils comme EMR, Redshift, AWS Machine Learning et QuickSight. Il est possible de choisir ainsi les outils à utiliser en fonction des besoins spécifiques, notamment pour traiter les données dans leur entrepôt de données natif.

Créer un data lake sur Microsoft Azure

Cette solution proposée par Microsoft utilise Azure Data Lake Store ou ADLS pour le stockage. Azure Data Lake Analytics et HDInsight permettent d’analyser les données. Azure est plus avantageux car ADLS dispose d’une capacité de stockage illimitée. Plusieurs milliards de fichiers pourront ainsi être stockés dans un seul fichier. Par ailleurs, les données peuvent être conservées sous n’importe quel entrepôt de données natif. Toutes les applications au standard HDFS peuvent être supportées par ADLS. Il est ainsi plus simple de faire migrer les données vers les moteurs de traitement. 

Tous ces outils permettent le travail sur le cloud, ce qui en facilite la manipulation. Les avantages d’Azure ne s’arrêtent pas là. Les services analytiques proposés par Azure sont performants. Il est aussi plus simple de faire migrer les données vers les clusters Hadoop s’il existe déjà. De plus, grâce à l’intégration avec Active Directory, il est plus facile de gérer la sécurité des données.

Vous souhaitez vous former au Big Data ? Retrouvez les formations Data Full Stack et Data Analyst qui vous forment aux métiers de Data Analyst, Data Scientist, Data Engineer et AI Scientist.
Merci pour votre lecture ! Si vous souhaitez lire nos prochains articles autour de la Data et de l’IA, vous pouvez nous suivre sur FacebookLinkedIn et Twitter pour être notifié lorsqu’un nouvel article est publié !