Du Lakehouse à la première analyse
Évolution des architectures de données
Les données sont désormais vitales pour toutes les organisations qui souhaitent prendre des décisions averties et améliorer ses performances. Cependant, les données ne sont pas statiques, mais dynamiques et en constante évolution. Par conséquent, la manière dont les données sont stockées et traitées doit également s’adapter à l’évolution des besoins des utilisateurs et des défis des organisations de plus en plus axées sur les données. On évoque souvent le terme de « Data Compagnies » (https://go.fabricbook.fr/ch3-1) pour les entreprises pilotées par les données.
Les bases de données de traitement transactionnel en ligne (Online Transactional Processing, OLTP) sont souvent la source des systèmes de traitement analytique en ligne (Online Analytical Processing, OLAP). OLTP stocke et met à jour les données transactionnelles à volume élevé de manière fiable et efficace tandis que OLAP combine et regroupe les données afin que vous puissiez les analyser de différents points de vue.
Examinons l’évolution du stockage et du traitement des données, depuis l’entrepôt de données jusqu’au lac de données, et comparons les propriétés, les avantages et les inconvénients de chaque méthode, ainsi que la façon dont ils répondent aux différents besoins de l’analyse des données. Voyons aussi quelques évolutions plus récentes du stockage et du traitement des données dans le concept de Lakehouse.
1. Entrepôt de données
Un entrepôt de données, aussi appelé Data Warehouse en anglais, est un dépôt centralisé de données structurées, nettoyées, vérifiées… ayant été extraites, transformées et chargées à partir de diverses sources. Ces étapes sont communément appelées ETL, ce qui signifie Extract, Transform, Load (Extraction, Transformation, Chargement). Cette méthodologie de traitement des données consiste à extraire des données de sources multiples, les transformer...
Le stockage des données dans Fabric
1. OneLake
On observe dans les organisations déployant des lacs de données (Data Lake) qu’ils ont tendance à se multiplier. Cela a pour effet de créer une fragmentation, des silos ou encore la duplication de données et des problèmes liés à leurs maintenances. OneLake se concentre sur l’élimination des défis précédemment énoncés tout en améliorant la collaboration, avec une idée qui s’apparente à une révolution : avoir un seul lac de données pour toute l’organisation. Chaque Tenant a donc exactement un OneLake.
Nous pouvons considérer le OneLake comme le OneDrive pour les données : alors que le OneDrive permet la sauvegarde de vos fichiers d’entreprise, le OneLake permet la sauvegarde des données de l’entreprise.
Toutes les données de OneLake sont stockées dans Azure Data Lake Storage (ADLS, https://go.fabricbook.fr/ch3-9), chaque fichier OneLake est un fichier ADLS. Ainsi, le coût et les performances du stockage des données dans OneLake suivent de près ceux du stockage des données dans ADLS supportant n’importe quel type de fichier, structuré ou non. OneLake supporte aussi les mêmes API et SDK ADLS Gen2 pour être compatible avec les applications existantes, y compris Azure Databricks.
OneLake ajoute une couche d’abstraction pour mieux prendre en charge le modèle SaaS de Microsoft Fabric. Les utilisateurs n’ont pas besoin de créer de comptes ADLS, le stockage est géré en mode SaaS par OneLake, qui prend également en charge des abstractions telles que les raccourcis. En plus des Listes de contrôle d’accès (ACL) de fichiers et de dossiers similaires à ADLS, délimités par les espaces de travail Microsoft Fabric, OneLake supporte aussi certaines règles d’accès aux données plus granulaires telles que le Row Level Security (RLS), Column Level Security (CLS) ainsi que le masquage dynamique de données sur les tables.
Toutes les charges de travail dans Microsoft Fabric ont la capacité d’écrire, de lire et d’interagir avec OneLake. Les entrepôts de données et les Lakehouse stockent automatiquement leurs...
Le Lakehouse dans Microsoft Fabric
Dans Microsoft Fabric, vous pouvez créer un Lakehouse dans un espace de travail.
Un Lakehouse est un espace de stockage de données qui accueille et gère tous les types de données au même endroit (structurées, semi-structurées et non structurées) ce qui permet à différents outils de manipuler et d’examiner ces données selon les exigences de l’organisation et/ou les choix d’un individu. Un Lakehouse combine donc les meilleurs aspects d’un lac de données et d’un entrepôt de données en supprimant la duplication des données et les frictions liées à l’ingestion, la transformation et le partage des données dans l’organisation, le tout dans le format ouvert, le Delta Lake.
Le Lakehouse dispose d’une API REST spécifique permettant d’effectuer des opérations telles que la création, la lecture, le chargement de table, la maintenance, ou encore la suppression. La liste exhaustive est disponible à l’adresse suivante : https://go.fabricbook.fr/ch3-30.
Dans l’interface de Microsoft Fabric, vous disposez d’un explorateur Lakehouse fournissant une vue arborescente des objets d’un Lakehouse, découvre et affiche de façon automatique les tables décrites dans le référentiel de métadonnées et dans le stockage OneLake. Un processus transparent lit les journaux delta et à partir du dossier Files et garantit que les métadonnées SQL pour les tables, telles que les statistiques, sont toujours à jour. La découverte automatique s’applique également aux tables définies dans les raccourcis OneLake de sorte qu’elles sont disponibles à tous les moteurs au sein de Microsoft Fabric.
Un Lakehouse possède plusieurs zones de stockage :
-
La zone gérée « Tables » contient, comme son nom l’indique, des tables stockées au format Parquet ou Delta, celles stockées au format Delta seront découvertes automatiquement et accessibles depuis le point de terminaison SQL. Il est possible de créer des raccourcis sur des tables stockées à l’extérieur ou à l’intérieur du service.
-
La zone « Files »...
Cas d’usages
1. Première analyse
Directeur d’un point de vente dans la société Adventure Works, nous avons besoin d’analyser les ventes réalisées depuis 2019. Nous avons accès à un export au format CSV, celui-ci peut être téléchargé à partir du lien https://go.fabricbook.fr/ch3-20, nous allons l’enregistrer en local.
a. Création d’un espace de travail
Avant de travailler avec ces données dans Microsoft Fabric, créons un espace de travail sur une capacité Fabric.
Sur la page d’accueil de Microsoft Fabric à l’adresse https://app.fabric.microsoft.com, sélectionnez Data Engineering.
Dans la barre de menu de gauche, sélectionnez Espaces de travail.
Créez un nouvel espace de travail avec le nom de votre choix, en sélectionnant un mode de licence dans la section Avancé qui inclut la capacité Fabric (Trial, Premium ou Fabric).
Lorsque votre nouvel espace de travail s’ouvre, il doit être vide.
b. Création d’un Lakehouse
Pour créer un Lakehouse, vous devez avoir un Workspace associé à une capacité Fabric.
Créez un nouveau Lakehouse avec le nom de votre choix.
Affichez le nouvel entrepôt et notez que le volet gauche de l’explorateur d’entrepôt vous permet de parcourir les tables et les fichiers de l’entrepôt.
c. Récupération des données
Fabric propose plusieurs façons de charger des données dans le Lakehouse. L’une des plus simples pour ingérer de petites quantités de données est d’uploader des fichiers ou des dossiers depuis votre ordinateur local ou encore d’utiliser l’explorateur de fichiers OneLake.
Pour charger des données depuis le portail, retournez dans l’onglet du navigateur web contenant le Lakehouse, dans Files, créez un sous-dossier Data et sélectionnez Charger, puis Charger des fichiers. Sélectionnez le fichier sales.csv à partir de votre ordinateur local.
Une fois le fichier téléchargé, sélectionnez le dossier Files/data et vérifiez que le fichier sales.csv a été téléchargé, comme indiqué ici :...