OneLake, lakehouse et entrepôt

Première leçon du cours Microsoft Fabric pour l'analyste, en accès libre : environ 20 minutes, 3 exercices et 3 questions de quiz. C'est la leçon de base du catalogue ; dans l'espace étudiant, elle est réécrite pour ton profil.

Objectifs

  • Situer Fabric, OneLake et les éléments d'un espace de travail
  • Charger des fichiers dans un lakehouse et les interroger en SQL
  • Choisir entre lakehouse et entrepôt selon le besoin

OneLakeLakehouseEntrepôt (Warehouse)Format Delta

Fabric en une phrase

Microsoft Fabric est une plateforme analytique en mode SaaS qui réunit, dans une même interface et sur un même stockage, ce qui était auparavant réparti entre plusieurs services : ingestion et transformation (Data Factory), ingénierie des données (Spark), entrepôt SQL, science des données, analyse en temps réel et Power BI. Le service Power BI que vous avez utilisé dans BI7 fait partie de Fabric.

On y travaille toujours dans des espaces de travail (mêmes rôles Administrateur, Membre, Contributeur, Lecteur), hébergés sur une capacité qui fournit la puissance de calcul. Les possibilités dépendent de la licence et de la capacité de votre organisation.

OneLake : un seul lac

Toutes les données de Fabric sont stockées dans OneLake, un lac de données unique pour toute l’organisation, souvent comparé à un « OneDrive pour les données ». Chaque espace de travail y est un dossier, chaque élément (lakehouse, entrepôt) un sous-dossier.

Les tables y sont au format ouvert Delta : des fichiers Parquet (colonnes compressées) accompagnés d’un journal de transactions qui garantit la cohérence des écritures et conserve un historique des versions. Conséquence majeure : une même table peut être lue par Spark, par le moteur SQL et par Power BI sans copie.

Les raccourcis (shortcuts) prolongent cette idée : ils affichent dans un lakehouse des données situées dans un autre élément ou un stockage externe compatible, sans les déplacer.

Le lakehouse

Un lakehouse combine la souplesse d’un lac et la structure d’un entrepôt. Il comporte deux zones :

  • Files : des fichiers de tout format (CSV, JSON, Parquet, images), non gérés ;
  • Tables : des tables Delta, gérées, interrogeables en SQL.

Démarche simple : téléversez ventes_plat.csv dans un dossier de Files, puis clic droit > Charger dans les tables : Fabric crée la table Delta ventes_plat.

Chaque lakehouse dispose automatiquement d’un point de terminaison d’analytique SQL : un accès T-SQL en lecture seule à ses tables. Vous pouvez y écrire des requêtes, des vues et des fonctions, et vous y connecter depuis des outils SQL :

SELECT Magasin, SUM(Quantite * PrixUnitaire) AS CA
FROM dbo.ventes_plat
GROUP BY Magasin
ORDER BY CA DESC;

Pour écrire dans les tables d’un lakehouse, on passe par Spark (notebooks), les dataflows ou les pipelines, pas par ce point de terminaison.

L’entrepôt

L’entrepôt (Warehouse) de Fabric est un entrepôt relationnel avec un T-SQL complet : CREATE TABLE, INSERT, UPDATE, DELETE, transactions multi-tables, procédures stockées. Ses tables sont elles aussi en Delta dans OneLake. Il peut lire les tables d’un lakehouse du même espace avec un nom en trois parties :

CREATE TABLE dbo.ca_categorie AS
SELECT Categorie, SUM(Quantite * PrixUnitaire) AS CA
FROM lh_ventes.dbo.ventes_plat
GROUP BY Categorie;
Besoin Plutôt
fichiers variés, données semi-structurées, équipe Python/Spark Lakehouse
équipe SQL, modèle en étoile, mises à jour transactionnelles Entrepôt
lecture SQL des tables d’un lakehouse Point de terminaison SQL du lakehouse

Les deux coexistent souvent dans une même solution.

L’architecture en médaillon

Une organisation courante des données en trois couches :

  • Bronze : données brutes, telles que reçues ;
  • Argent (silver) : données nettoyées, typées, dédupliquées ;
  • Or (gold) : tables prêtes pour l’analyse (faits et dimensions, agrégats), sources des modèles sémantiques.

Chaque couche peut être un lakehouse (ou un entrepôt pour l’or). Ce cours suit ce découpage : fichier brut, table nettoyée par un dataflow, tables or produites par un notebook, puis modèle Direct Lake.

Exercices

Les solutions et les tests restent sur le serveur. Dans l'espace étudiant, ton code est exécuté et corrigé, et le tuteur donne des indices avant la solution.

  1. TâcheDifficulté 22 indices

    Créer le lakehouse et charger les ventes

    Accès : utilisez l’espace de travail Fabric fourni par la formation (espace sur une capacité Fabric ou d’essai). Les fonctionnalités disponibles dépendent de la licence et de la capacité de votre organisation. Fabric évolue vite : si un libellé diffère légèrement, cherchez l’élément équivalent dans le menu Nouvel élément. Données : le fichier ventes_plat.csv (mêmes données que le cours BI7, Total ventes = 415) :

    NumVente,Date,DateLivraison,CodeMagasin,Magasin,Region,CodeProduit,Produit,Categorie,Quantite,PrixUnitaire
    V001,2026-01-03,2026-01-05,M1,Lyon,Auvergne-Rhône-Alpes,P01,Jus d'orange,Boissons,10,3
    V002,2026-01-03,2026-01-06,M2,Lille,Hauts-de-France,P02,Pates,Epicerie,20,2
    V003,2026-01-10,2026-01-12,M3,Nantes,Pays de la Loire,P03,Yaourt,Frais,30,1
    V004,2026-01-17,2026-01-19,M1,Lyon,Auvergne-Rhône-Alpes,P04,Riz,Epicerie,15,2
    V005,2026-01-24,2026-01-27,M2,Lille,Hauts-de-France,P05,Eau,Boissons,50,1
    V006,2026-02-02,2026-02-04,M3,Nantes,Pays de la Loire,P01,Jus d'orange,Boissons,12,3
    V007,2026-02-07,2026-02-09,M1,Lyon,Auvergne-Rhône-Alpes,P06,Fromage,Frais,8,6
    V008,2026-02-14,2026-02-16,M2,Lille,Hauts-de-France,P03,Yaourt,Frais,25,1
    V009,2026-02-21,2026-02-24,M3,Nantes,Pays de la Loire,P02,Pates,Epicerie,18,2
    V010,2026-02-28,2026-03-03,M1,Lyon,Auvergne-Rhône-Alpes,P05,Eau,Boissons,40,1
    V011,2026-03-06,2026-03-09,M2,Lille,Hauts-de-France,P04,Riz,Epicerie,10,2
    V012,2026-03-13,2026-03-16,M3,Nantes,Pays de la Loire,P06,Fromage,Frais,5,6
    1. Dans l’espace de travail de formation, créez un lakehouse nommé lh_ventes.
    2. Dans Files, créez un dossier brut et téléversez ventes_plat.csv.
    3. Clic droit sur le fichier > Charger dans les tables > nouvelle table ventes_plat.
    4. Ouvrez le point de terminaison d’analytique SQL du lakehouse et exécutez une requête qui calcule SUM(Quantite * PrixUnitaire) au total puis par Magasin.
    • Le dossier Files/brut contient ventes_plat.csv et Tables contient ventes_plat
    • La table compte 12 lignes et 11 colonnes
    • Le total vaut 415
    • Par magasin : Lyon 148, Lille 135, Nantes 132
  2. TâcheDifficulté 22 indices

    Une table d'entrepôt

    Accès : utilisez l’espace de travail Fabric fourni par la formation (espace sur une capacité Fabric ou d’essai). Les fonctionnalités disponibles dépendent de la licence et de la capacité de votre organisation. Fabric évolue vite : si un libellé diffère légèrement, cherchez l’élément équivalent dans le menu Nouvel élément.

    1. Créez un entrepôt nommé wh_ventes dans le même espace de travail.
    2. Dans l’éditeur de requêtes de l’entrepôt, exécutez :
    CREATE TABLE dbo.ca_categorie AS
    SELECT Categorie, SUM(Quantite * PrixUnitaire) AS CA
    FROM lh_ventes.dbo.ventes_plat
    GROUP BY Categorie;
    1. Ajoutez une ligne de test avec INSERT INTO dbo.ca_categorie VALUES ('Test', 1);, vérifiez-la, puis supprimez-la avec DELETE.
    2. Essayez la même instruction INSERT sur le point de terminaison SQL du lakehouse et notez le message.
    • dbo.ca_categorie contient 3 lignes : Boissons 156, Epicerie 126, Frais 133
    • L'INSERT puis le DELETE fonctionnent dans l'entrepôt
    • L'INSERT est refusé sur le point de terminaison SQL du lakehouse (lecture seule)
  3. QCMDifficulté 21 indice

    Lakehouse ou entrepôt ?

    Une équipe de développeurs SQL doit maintenir un modèle en étoile avec des mises à jour transactionnelles quotidiennes. Quel élément Fabric privilégier ?

    • Un lakehouse, en écrivant via son point de terminaison SQL
    • Un entrepôt (Warehouse)
    • Un dossier Files
    • Un tableau de bord

Quiz de fin de leçon

  1. Dans quel format les tables de OneLake sont-elles stockées ?

    • Delta (Parquet et journal de transactions)
    • CSV
    • Fichiers .pbix
  2. Que permet le point de terminaison d’analytique SQL d’un lakehouse ?

    • Interroger les tables en T-SQL en lecture seule
    • Modifier les tables avec UPDATE
    • Téléverser des fichiers
  3. À quoi sert un raccourci OneLake ?

    • À exposer des données situées ailleurs sans les copier
    • À accélérer un rapport
    • À créer un utilisateur

La suite du cours

  1. Dataflows Gen2 et pipelines : ingérer et préparer20 min
  2. Notebooks : transformer en PySpark et Spark SQL20 min
  3. Direct Lake : des modèles sémantiques sur OneLake20 min
  4. Gouvernance : accès, sécurité, traçabilité et capacité20 min

Microsoft Fabric pour l'analyste · Avancé · 1 h 40