Activer la disponibilité de OneLake pour un eventhouse

Vous pouvez créer une copie logique des données de la base de données KQL dans un entrepôt d'événements en activant l'option Disponibilité de OneLake. Lorsque vous activez la disponibilité OneLake, vous pouvez interroger les données dans votre base de données KQL au format Delta Lake via d’autres moteurs Fabric tels que le mode Direct Lake dans Power BI, Warehouse, Lakehouse, Notebooks, etc. Delta Lake est le format de table de lac de données unifié qui permet un accès transparent aux données sur tous les moteurs de calcul dans Fabric.

Dans cet article, vous allez apprendre à activer la disponibilité des données de base de données KQL dans OneLake.

Lorsque la disponibilité et la synchronisation de schéma OneLake sont activées, vous pouvez également utiliser Analyser des données avec un>point de terminaison SQL au niveau de la base de données pour interroger la représentation Delta Lake en quasi-temps réel via des moteurs SQL.

Lorsque la disponibilité et la synchronisation de schéma OneLake sont activées, vous pouvez également utiliser Analyser des données avec un>point de terminaison SQL au niveau de la base de données pour interroger la représentation Delta Lake en quasi-temps réel via des moteurs SQL.

Fonctionnement de la disponibilité de OneLake pour les bases de données KQL

Vous pouvez activer Disponibilité de OneLake au niveau de la base de données ou de la table. Lorsqu’elles sont activées au niveau de la base de données, toutes les nouvelles tables et leurs données sont disponibles dans OneLake. Lorsque vous activez la fonctionnalité, vous pouvez également choisir d’appliquer cette option à des tables existantes en sélectionnant l’option Appliquer aux tables existantes pour inclure le remplissage historique. L’activation au niveau de la table rend uniquement cette table et ses données disponibles dans OneLake. La stratégie de rétention des données de votre base de données KQL est également appliquée aux données dans OneLake. Les données supprimées de votre base de données KQL à la fin de la période de conservation sont également supprimées de OneLake. Si vous désactivez disponibilité OneLake, les données sont supprimées de OneLake de manière réversible.

La synchronisation du schéma du back-end maintient la représentation Delta Lake alignée avec la base de données KQL, permettant d’effectuer des requêtes en quasi-temps réel via le point de terminaison SQL et les notebooks. Pour connaître la latence attendue et le comportement de traitement par lots, consultez comportement adaptatif.

Tant que la disponibilité de OneLake est activée, vous ne pouvez pas effectuer les tâches suivantes :

  • Renommez les tableaux.
  • Modifiez un type de colonne. L’ajout ou la suppression d’une colonne est pris en charge.
  • Appliquez la sécurité au niveau des lignes aux tables.
  • Supprimez, tronquez ou videz les données.

Si vous devez effectuer l’une de ces tâches, procédez comme suit :

  1. Désactivez la disponibilité OneLake.
  2. Effectuez la tâche.
  3. Allumer Disponibilité de OneLake.

Important

Désactiver disponibilité oneLake supprime vos données de OneLake. Lorsque vous réactivez la disponibilité, toutes les données sont disponibles dans OneLake, y compris le remplissage historique.

Remarque

Pour plus d’informations sur le temps nécessaire à l’affichage des données dans OneLake, consultez comportement adaptatif. Il n’existe aucun coût de stockage supplémentaire pour activer la disponibilité de OneLake. Pour plus d’informations, consultez Consommation de ressources.

Prérequis

  • Un espace de travail avec une capacité compatible avec Fabric.
  • Une base de données KQL avec des autorisations et des données de modification.

Activer la disponibilité de OneLake pour une base de données ou une table KQL

Vous pouvez activer la disponibilité de OneLake pour une base de données ou une table KQL.

  1. Sélectionnez une base de données ou une table.

  2. Dans la section OneLake du volet d’informations, définissez la disponibilitésur Activé.

    Capture d’écran de la section OneLake du volet Détails de la base de données montrant l’option Disponibilité mise en surbrillance.

  3. Dans la fenêtre Activer la disponibilité de OneLake , sélectionnez Activer.

    Capture d’écran de la fenêtre Activer la disponibilité de OneLake montrant l’option Appliquer aux tables existantes.

  4. Les détails de la base de données ou de la table sont actualisés automatiquement.

    Capture d’écran des détails de la section OneLake une fois la disponibilité activée. L’option permettant d’exposer des données à OneLake est activée.

Lorsque vous activez la disponibilité de OneLake dans votre base de données ou table KQL, vous pouvez accéder à toutes les données au chemin OneLake donné au format Delta Lake. Vous pouvez également créer un raccourci OneLake à partir d’un lac ou d’un entrepôt, ou interroger les données directement via Power BI mode Direct Lake. Avec l'accessibilité de OneLake dans votre base de données ou table KQL activée, vous pouvez désormais accéder à toutes les données situées au chemin OneLake donné au format Delta Lake. Vous pouvez également créer un raccourci OneLake à partir d’un lakehouse, d’un entrepôt de données ou d’interroger les données directement via le mode Power BI Direct Lake.

Utiliser avec les options Analyser les données avec

Lorsque la disponibilité de OneLake est activée, les éléments Eventhouse et de base de données KQL proposent des options Analyser les données avec au niveau de la base de données :

  • Point de terminaison SQL : disponible lorsque la disponibilité oneLake et la synchronisation de schéma sont activées.
  • Bloc-notes : ouvre l’analyse basée sur un bloc-notes pour la base de données sélectionnée.

Si vous désactivez la disponibilité de OneLake, l’option de point de terminaison SQL est supprimée de ce menu jusqu’à ce que vous l’activez à nouveau.

Comportement adaptatif pour le traitement par lots de fichiers Parquet

Un eventhouse traite intelligemment les flux de données entrants dans un ou plusieurs fichiers Parquet structurés pour l’analyse. Le traitement par lots des flux de données est important lorsque vous traitez des données arrivant au compte-gouttes, car écrire de nombreux petits fichiers Parquet dans le lac de données peut être inefficace. Cette inefficacité entraîne des coûts plus élevés et des performances de requête médiocres.

Le mécanisme adaptatif eventhouse peut retarder les opérations d’écriture sur OneLake s’il n’y a pas suffisamment de données pour créer des fichiers Parquet optimaux. Ce comportement garantit que les fichiers Parquet ont une taille optimale et respectent les meilleures pratiques de Delta Lake. Il équilibre le besoin de disponibilité des données à l’invite avec des considérations relatives aux coûts et aux performances.

Latence d’écriture par défaut et configurable pour la disponibilité de OneLake :

Setting Valeur par défaut Plage autorisée
Délai d’opération d’écriture (TargetLatencyInMinutes) Jusqu’à 3 heures ou jusqu’à ce que les fichiers de taille suffisante (généralement 200-256 Mo) soient créés 5 minutes à 3 heures

Par exemple, utilisez la commande Kusto suivante pour définir le délai d’écriture sur 5 minutes pour une seule table :

.alter-merge table <TableName> policy mirroring dataformat=parquet with (IsEnabled=true, TargetLatencyInMinutes=5);

Avertissement

L’ajustement du délai à une période plus courte peut entraîner une table delta non optimale avec un grand nombre de petits fichiers, ce qui peut entraîner des performances de requête inefficaces. La table résultante dans OneLake est en lecture seule et ne peut pas être optimisée après la création.

Vous pouvez surveiller la durée pendant laquelle de nouvelles données ont été ajoutées dans le lac en vérifiant la latence de vos données à l’aide de la .show table mirroring operations commande.

Les résultats sont mesurés à partir de la dernière fois que des données ont été ajoutées. Lorsque la latence est retournée 00:00:00, toutes les données de la base de données KQL sont disponibles dans OneLake.

Afficher les fichiers Delta Lake dans OneLake

Lorsque vous activez la disponibilité de OneLake sur une table, le processus crée un dossier de journaux delta avec tous les fichiers JSON et Parquet correspondants. Vous pouvez afficher les fichiers disponibles dans OneLake et leurs propriétés tout en restant dans Real-Time Intelligence.

  • Pour afficher les fichiers, passez sur une des tables dans le volet Explorateur, puis sélectionnez le Plus de menus [...]>Afficher les fichiers.

    Capture d’écran du volet Explorer montrant le menu déroulant Plus d’une table.

  • Pour afficher les propriétés du dossier du journal delta ou des fichiers individuels, passez sur le dossier ou fichier, puis sélectionnez Plus de menus [...]>Propriétés.

  • Pour afficher les fichiers dans le dossier delta log :

    1. Sélectionnez le dossier _delta_log.
    2. Sélectionnez un fichier pour afficher les métadonnées et le schéma de la table. L'éditeur qui s'ouvre est au format en lecture seule.

Accéder à la stratégie OneLake de mise en miroir

Par défaut, lorsque vous activez la disponibilité oneLake pour une base de données ou une table KQL, le système active une stratégie de mise en miroir. Vous pouvez utiliser la stratégie de mise en miroir pour surveiller la latence des données ou la modifier pour partitionner des tables delta.

Remarque

Si vous désactivez la disponibilité de OneLake, la propriété de la politique de mise en miroir IsEnabled est fixée à false (IsEnabled=false).

Partitionner des tables delta dans OneLake

Vous pouvez partitionner vos tables delta pour améliorer la vitesse des requêtes. Pour savoir quand partitionner vos fichiers OneLake, voir Quand partitionner les tables. Chaque partition est représentée en tant que colonne distincte à l’aide de PartitionName, répertorié dans la liste Partitions. Cette représentation signifie que votre copie OneLake comporte plus de colonnes que votre table source.

Pour partitionner vos tables delta, utilisez la .alter-merge table policy mirroring commande.

Interroger les tables Delta depuis un notebook Fabric

Vous pouvez utiliser Fabric Notebook pour lire les données OneLake à l’aide de l’extrait de code suivant.

Tip

Vous pouvez lancer un notebook Fabric, nouveau ou existant, directement à partir de Analyser des données avec>Notebook dans un Eventhouse ou une base de données KQL. Le bloc-notes se joint automatiquement au contexte de base de données sélectionné. Utilisez l’exemple de code suivant lorsque vous souhaitez un accès manuel basé sur le chemin d’accès.

Dans l’extrait de code, remplacez <workspaceGuid>, <workspaceGuid>et <tableName> par vos propres valeurs.

delta_table_path = 'abfss://<workspaceGuid>@onelake.dfs.fabric.microsoft.com/<eventhouseGuid>/Tables/<tableName>'

df = spark.read.format("delta").load(delta_table_path)

df.show()

Remarque

Pour une base de données Azure Data Explorer, utilisez ce code :

delta_table_path = 'abfss://<workspaceName>@onelake.dfs.fabric.microsoft.com/<itemName>.KustoDatabase/Tables/<tableName>'