Raccourcis OneLake

Les raccourcis dans Microsoft OneLake vous permettent d’unifier vos données entre des domaines, des clouds et des comptes en créant un seul lac de données virtuel pour l’ensemble de votre entreprise. Toutes les expériences Fabric et les moteurs analytiques peuvent se connecter directement à vos sources de données existantes telles qu’Azure, Amazon Web Services (AWS) et OneLake via un espace de noms unifié. OneLake gère toutes les autorisations et informations d’identification. Vous n’avez donc pas besoin de configurer séparément chaque expérience Fabric pour vous connecter à chaque source de données. En outre, vous pouvez utiliser des raccourcis pour éliminer les copies de périphérie des données et réduire la latence de processus associée aux copies de données et à la préproduction.

Que sont les raccourcis ?

Les raccourcis sont des objets dans OneLake qui pointent vers d’autres emplacements de stockage. L’emplacement peut être interne ou externe à OneLake. L’emplacement vers lequel pointe un raccourci est appelé chemin cible du raccourci. L’emplacement où le raccourci s’affiche est appelé chemin de raccourci. Les raccourcis apparaissent sous forme de dossiers dans OneLake et toute expérience ou service qui a accès à OneLake peut les utiliser. Les raccourcis se comportent comme des liens symboliques. Il s’agit d’un objet indépendant de la cible. Si vous supprimez un raccourci, la cible reste inchangée. Si vous déplacez, renommez ou supprimez un chemin cible, le raccourci peut s’arrêter.

Diagramme montrant comment un raccourci relie des fichiers et des dossiers stockés à d'autres endroits.

Où puis-je créer des raccourcis ?

Vous pouvez créer des raccourcis dans des bases de données KQL (Lakehouses et Kusto Query Language). En outre, les raccourcis que vous créez dans ces éléments peuvent pointer vers d’autres emplacements OneLake, Azure Data Lake Storage (ADLS) Gen2, des comptes de stockage Amazon S3 ou Dataverse.

Vous pouvez utiliser l'IU Fabric pour créer des raccourcis de manière interactive. Par ailleurs, vous pouvez utiliser l'API REST pour créer des raccourcis de manière programmatique.

Lakehouse

Lorsque vous créez des raccourcis dans un lakehouse, vous devez comprendre la structure de dossiers de l’élément. Les lakehouses sont composés de deux dossiers de niveau supérieur : le dossier Tables et le dossier Fichiers. Le dossier Tables représente la partie managée du Lakehouse, tandis que le dossier Fichiers est la partie non managée du Lakehouse. Dans le dossier Tables, vous pouvez uniquement créer des raccourcis au niveau supérieur. Les raccourcis ne sont pas pris en charge dans les autres sous-répertoires du dossier Tables. Si la cible du raccourci contient des données au format Delta\Parquet, le lakehouse synchronise automatiquement les métadonnées et reconnaît le dossier en tant que table. Dans le dossier Fichiers, il n’existe aucune restriction quant à l’emplacement où vous pouvez créer des raccourcis. Vous pouvez les créer à n’importe quel niveau de la hiérarchie de dossiers. La découverte de tables ne se produit pas dans le dossier Fichiers.

Diagramme montrant la vue du lac et la vue de la table côte à côte.

Base de données KQL

Lorsque vous créez un raccourci dans une base de données KQL, il apparaît dans le dossier Raccourcis de la base de données. La base de données KQL traite les raccourcis comme des tables externes. Pour interroger le raccourci, utilisez la fonction external_table du Langage de requête Kusto.

Capture d'écran des raccourcis dans une base de données KQL.

Où puis-je accéder à mes raccourcis ?

Tout service Fabric ou non-Fabric qui peut accéder aux données dans OneLake peut utiliser des raccourcis. Les raccourcis sont transparents pour tout service accédant aux données via l’API OneLake. Les raccourcis apparaissent simplement sous la forme d’un autre dossier dans le lac. Spark, SQL, Analyse en temps réel et Analysis Services peuvent tous utiliser des raccourcis lors de l’interrogation des données.

Spark

Les blocs-notes Spark et les travaux Spark peuvent utiliser des raccourcis que vous créez dans OneLake. Les chemins d’accès de fichiers relatifs peuvent être utilisés pour lire directement les données à partir de raccourcis. En outre, si vous créez un raccourci dans la section Tables du lakehouse et qu’il est au format Delta, vous pouvez le lire en tant que table managée à l’aide de la syntaxe Spark SQL.

df = spark.read.format("delta").load("Tables/MyShortcut")
display(df)
df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000")
display(df)

Remarque

Le format delta ne prend pas en charge les tables avec des caractères d’espace dans le nom. Tout raccourci contenant un espace dans le nom ne sera pas découvert sous la forme d’une table delta dans le lakehouse.

SQL

Vous pouvez également lire des raccourcis dans la section Tables d’un lakehouse via le point de terminaison d’analytique SQL du lakehouse. Vous pouvez accéder au point de terminaison d’analytique SQL par le biais du sélecteur de mode du lakehouse ou via SQL Server Management Studio (SSMS).

SELECT TOP (100) *
FROM [MyLakehouse].[dbo].[MyShortcut]

Analyse en temps réel

Les raccourcis dans les bases de données KQL sont reconnus comme des tables externes. Pour interroger le raccourci, utilisez la fonction external_table du Langage de requête Kusto.

external_table('MyShortcut')
| take 100

Analysis Services

Vous pouvez créer des modèles sémantiques pour les lakehouses contenant des raccourcis dans la section Tables du lakehouse. Quand le modèle sémantique s’exécute en mode Direct Lake, Analysis Services peut lire les données directement à partir du raccourci.

Non-Infrastructure

Les applications et services en dehors de Fabric peuvent également accéder aux raccourcis via l’API OneLake. OneLake prend en charge un sous-ensemble des API de stockage ADLS Gen2 et Blob. Pour en savoir plus sur l’API OneLake, consultez Accès OneLake avec les API.

https://onelake.dfs.fabric.microsoft.com/MyWorkspace/MyLakhouse/Tables/MyShortcut/MyFile.csv

Types de raccourcis

Les raccourcis OneLake prennent en charge plusieurs sources de données de système de fichiers. Il s’agit notamment des emplacements OneLake internes, Azure Data Lake Storage (ADLS) Gen2, Amazon S3 et Dataverse.

Raccourcis OneLake internes

Les raccourcis OneLake internes vous permettent de référencer des données dans des éléments Fabric existants. Ces éléments incluent Lakehouses, les bases de données KQL et les entrepôts de données. Le raccourci peut pointer vers un emplacement de dossier dans le même élément, entre des éléments du même espace de travail ou même entre des éléments dans des espaces de travail différents. Lorsque vous créez un raccourci entre les éléments, les types d’éléments n’ont pas besoin de correspondre. Par exemple, vous pouvez créer un raccourci dans un Lakehouse qui pointe vers des données dans un Data Warehouse.

Lorsqu’un utilisateur accède à des données via un raccourci vers un autre emplacement OneLake, l’identité de l’utilisateur appelant est utilisée pour autoriser l’accès aux données dans le chemin cible du raccourci*. Cet utilisateur doit disposer d’autorisations à l’emplacement cible pour lire les données.

Important

Lors de l’accès aux raccourcis via des modèles sémantiques Power BI ou T-SQL, l’identité de l’utilisateur appelant n’est pas transmise à la cible du raccourci. L’identité du propriétaire de l’élément appelant est transmise à la place, en déléguant l’accès à l’utilisateur appelant.

Raccourcis ADLS

Des raccourcis peuvent également être créés vers des comptes de stockage ADLS Gen2. Lorsque vous créez des raccourcis vers ADLS, le chemin d’accès cible peut pointer vers n’importe quel dossier dans l’espace de noms hiérarchique. Au minimum, le chemin d’accès cible doit inclure un nom de conteneur.

Access

Les raccourcis ADLS doivent pointer vers le point de terminaison DFS pour le compte de stockage. Exemple : https://accountname.dfs.core.windows.net/

Si votre compte de stockage est protégé par un pare-feu de stockage, vous pouvez configurer l'accès au service approuvé. Consultez Accès à l'espace de travail approuvé

Autorisation

Les raccourcis ADLS utilisent un modèle d’autorisation délégué. Dans ce modèle, le créateur de raccourcis spécifie des informations d’identification pour le raccourci ADLS et tout l’accès à ce raccourci est autorisé à l’aide de ces informations d’identification. Les types délégués pris en charge sont Compte d’organisation, Clé de compte, Signature d’accès partagé (SAP) et Principal de service.

  • Un compte de l’organisationdoit être membre du rôle Lecteur de données Blob du stockage, Contributeur aux données Blob du stockage ou Propriétaire des données Blob du stockage sur le compte de stockage
  • Signature d’accès partagé (SAP) : doit inclure au moins les autorisations suivantes : Lecture, Liste et Exécution
  • Principal de service : doit avoir le rôle Lecteur de données blob de stockage, Contributeur aux données Blob de stockage ou Propriétaire des données blob de stockage sur le compte de stockage

Remarque

Vous devez activer les espaces de noms hiérarchiques sur votre compte de stockage ADLS Gen 2.

Raccourcis S3

Vous pouvez également créer des raccourcis vers des comptes Amazon S3. Lorsque vous créez des raccourcis vers Amazon S3, le chemin cible doit contenir au minimum un nom de compartiment. S3 ne prend pas en charge les espaces de noms hiérarchiques en mode natif, mais vous pouvez utiliser des préfixes pour imiter une structure de répertoires. Vous pouvez inclure des préfixes dans le chemin de raccourci pour affiner davantage l’étendue des données accessibles via le raccourci. Lorsque vous accédez aux données via un raccourci S3, les préfixes sont représentés sous forme de dossiers.

Access

Les raccourcis S3 doivent pointer vers le point de terminaison https pour le compartiment S3.

Exemple : https://bucketname.s3.region.amazonaws.com/

Remarque

Vous n’avez pas besoin de désactiver le paramètre Bloquer l’accès public S3 dans votre compte S3 pour que le raccourci S3 fonctionne.

L’accès au point de terminaison S3 ne doit pas être bloqué par un pare-feu de stockage ou un cloud privé virtuel.

Autorisation

Les raccourcis S3 utilisent un modèle d’autorisation délégué. Dans ce modèle, le créateur de raccourcis spécifie des informations d’identification pour le raccourci S3 et tout l’accès à ce raccourci est autorisé à l’aide de ces informations d’identification. Les informations d’identification déléguées prises en charge sont une clé et un secret pour un utilisateur IAM.

L’utilisateur IAM doit disposer des autorisations suivantes sur le compartiment vers lequel pointe le raccourci.

  • S3:GetObject
  • S3:GetBucketLocation
  • S3:ListBucket

Remarque

Les raccourcis S3 sont en lecture seule. Ils ne prennent pas en charge les opérations d’écriture, quelles que soient les autorisations de l’utilisateur IAM.

Raccourcis pour le stockage cloud de Google (préversion)

Il est possible de créer des raccourcis vers le stockage cloud de Google (GCS) à l'aide de l'API XML pour GCS. Lorsque vous créez des raccourcis vers le stockage cloud de Google, le chemin cible doit contenir au minimum un nom de compartiment. Vous pouvez également restreindre l’étendue du raccourci en spécifiant davantage le préfixe/dossier vers lequel vous souhaitez pointer dans la hiérarchie de stockage.

Access

Lorsque vous configurez la connexion pour un raccourci GCS, vous pouvez spécifier le point de terminaison global du service de stockage ou utiliser un point de terminaison spécifique au compartiment.

  • Exemple de point de terminaison global : https://storage.googleapis.com
  • Exemple de point de terminaison spécifique au compartiment : https://<BucketName>.storage.googleapis.com

Autorisation

Les raccourcis GCS utilisent un modèle d’autorisation délégué. Dans ce modèle, le créateur de raccourcis spécifie des informations d’identification pour le raccourci GCS et tout l’accès à ce raccourci est autorisé à l’aide de ces informations d’identification. Les informations d’identification déléguées prises en charge sont une clé HMAC et un secret pour un compte de service ou un compte d'utilisateur.

Le compte doit avoir l’autorisation d’accéder aux données dans le compartiment GCS. Si le point de terminaison spécifique au compartiment a été utilisé dans la connexion pour le raccourci, le compte doit disposer des autorisations suivantes :

  • storage.objects.get
  • stoage.objects.list

Si le point de terminaison global a été utilisé dans la connexion pour le raccourci, le compte doit également disposer de l’autorisation suivante :

  • storage.buckets.list

Remarque

Les raccourcis GCS sont en lecture seule. Ils ne prennent pas en charge les opérations d'écriture, quelles que soient les autorisations du compte utilisé.

Raccourcis Dataverse

L’intégration directe de Dataverse à Microsoft Fabric permet aux organisations d’étendre leurs applications d’entreprise Dynamics 365 et leurs processus métier dans Fabric. Cette intégration s'effectue par le biais de raccourcis, qui peuvent être créés de deux manières : via le portail de création PowerApps ou directement par Fabric.

Création de raccourcis via le portail PowerApps Maker

Les utilisateurs PowerApps autorisés peuvent accéder au portail PowerApps maker et utiliser la fonctionnalité Lien vers Microsoft Fabric. À partir de cette action unique, un Lakehouse est créé dans Fabric et les raccourcis sont générés automatiquement pour chaque table de l'environnement Dataverse. Pour plus d’informations, consultez intégration directe de Dataverse à Microsoft Fabric.

Création de raccourcis via Fabric

Les utilisateurs de l'infrastructure peuvent également créer des raccourcis vers Dataverse. À partir de l'interface utilisateur de création de raccourcis, les utilisateurs peuvent sélectionner Dataverse, fournir l'URL de leur environnement et parcourir les tables disponibles. Cette expérience permet aux utilisateurs de choisir de manière sélective les tables à intégrer dans Fabric, plutôt que de les intégrer toutes.

Remarque

Les tables Dataverse doivent tout d'abord être disponibles dans le lac géré Dataverse, avant d'être visibles dans l'interface utilisateur de création de raccourcis dans Fabric. Si vos tables ne sont pas visibles à partir de Fabric, utilisez la fonction Lien vers Microsoft Fabric à partir du portail de création PowerApps.

Autorisation

Les raccourcis Dataverse utilisent un modèle d’autorisation délégué. Dans ce modèle, le créateur de raccourcis spécifie des identifiants pour le raccourci Dataverse, et tout l'accès à ce raccourci est autorisé à l'aide de ces identifiants. Le type d’informations d’identification déléguées pris en charge est le compte d’organisation (OAuth2). Le compte professionnel doit disposer de l'autorisation de l'administrateur système pour accéder aux données dans Dataverse Managed Lake.

Remarque

Actuellement, les principaux de service ne sont pas pris en charge pour l’autorisation de raccourci Dataverse.

Mise en cache

La mise en cache des raccourcis peut être utilisée pour réduire les coûts de sortie associés à l’accès aux données entre les clouds. À mesure que les fichiers sont lus via un raccourci externe, les fichiers sont stockés dans un cache pour l’espace de travail Fabric. Les requêtes de lecture suivantes sont traitées à partir du cache plutôt que du fournisseur de stockage au dépôt distant. Les fichiers mis en cache ont une période de rétention de 24 heures. Chaque fois que le fichier est consulté, la période de rétention est réinitialisée. Si le fichier du fournisseur de stockage au dépôt distant est plus récent que le fichier dans le cache, la requête est traitée à partir du fournisseur de stockage au dépôt distant et le fichier mis à jour est stocké dans le cache. Si un fichier n’a pas été consulté depuis plus de 24 heures, il est vidé du cache. Les fichiers individuels d’une taille supérieure à 1 Go ne sont pas mis en cache.

Remarque

La mise en cache des raccourcis n'est actuellement possible que pour les raccourcis GCS, S3 et compatibles S3.

Pour activer la mise en cache des raccourcis, ouvrez le volet Paramètres de l’espace de travail. Choisissez l’onglet OneLake. Basculez le paramètre de cache sur Activé, puis cliquez sur Enregistrer.

Capture d’écran du panneau paramètres de l’espace de travail avec l’onglet OneLake sélectionné.

Comment les raccourcis utilisent les connexions cloud

L’autorisation de raccourci ADLS et S3 est déléguée à l’aide de connexions cloud. Lorsque vous créez un raccourci ADLS ou S3, vous créez une connexion ou sélectionnez une connexion existante pour la source de données. La définition d’une connexion pour un raccourci est une opération de liaison. Seuls les utilisateurs disposant d’une autorisation sur la connexion peuvent effectuer l’opération de liaison. Si vous n’avez pas d’autorisations sur la connexion, vous ne pouvez pas créer de raccourcis à l’aide de cette connexion.

Autorisations

Une combinaison des autorisations dans le chemin de raccourci et le chemin cible régit les autorisations pour les raccourcis. Lorsqu’un utilisateur accède à un raccourci, l’autorisation la plus restrictive des deux emplacements est appliquée. Par conséquent, un utilisateur disposant d’autorisations de lecture/écriture dans lakehouse, mais uniquement les autorisations de lecture dans la cible de raccourci ne peuvent pas écrire dans le chemin cible de raccourci. De même, un utilisateur disposant uniquement d’autorisations de lecture dans le lakehouse, mais en lecture/écriture dans la cible de raccourci ne peut pas écrire dans le chemin cible de raccourci.

Rôles d’espace de travail

Le tableau suivant présente les autorisations relatives aux raccourcis pour chaque rôle de l'espace de travail. Pour plus d’informations, consultez les Rôles d’espace de travail.

Capacité Administrateur Member Contributeur Observateur
Créer un raccourci Oui1 Oui1 Oui1 -
Lire le contenu du fichier/dossier du raccourci Oui2 Oui2 Oui2 -
Écrire dans l’emplacement cible du raccourci Oui3 Oui3 Oui3 -
Lire des données à partir de raccourcis dans la section table du lakehouse via le point de terminaison TDS Oui Oui Oui Oui

1 Les utilisateurs doivent avoir un rôle qui fournit l’autorisation d’écriture sur l’emplacement du raccourci et au moins l’emplacement cible de l’autorisation de lecture.

2 L’utilisateur doit avoir un rôle qui fournit l’autorisation de lecture à la fois dans l’emplacement du raccourci et l’emplacement cible.

3 Les utilisateurs doivent avoir un rôle qui fournit des autorisations d’écriture à la fois à l’emplacement du raccourci et à l’emplacement cible.

Rôles d’accès aux données OneLake (préversion)

Les rôles d’accès aux données OneLake sont une nouvelle fonctionnalité qui vous permet d’appliquer le contrôle d’accès en fonction du rôle (RBAC) à vos données stockées dans OneLake. Vous pouvez définir des rôles de sécurité qui accordent l’accès en lecture à des dossiers spécifiques au sein d’un élément Fabric et les assignent à des utilisateurs ou des groupes. Les autorisations d'accès déterminent les dossiers que les utilisateurs voient lors de l’accès à la vue en lac des données, via l’expérience utilisateur lakehouse, les notebooks ou les API OneLake. Pour les éléments avec la fonctionnalité d'évaluation activée, les rôles d’accès aux données OneLake déterminent également l’accès d’un utilisateur à un raccourci.

Les utilisateurs des rôles Administrateur, Membre et Contributeur ont un contrôle total sur les données lues à partir d’un raccourci, quels que soient les rôles d’accès aux données OneLake définis. Toutefois, ils ont toujours besoin d’un accès à la fois sur la source et la cible du raccourci, comme indiqué dans les rôles d’espace de travail.

Les utilisateurs du rôle Visionneuse ou qui avaient un lakehouse partagé directement avec eux ont accès restreint en fonction du fait que l’utilisateur a accès via un rôle d’accès aux données OneLake. Pour plus d’informations sur le modèle de contrôle d’accès avec les raccourcis, consultez Modèle de contrôle d'accès aux données dans OneLake.

Comment les raccourcis gèrent-ils les suppressions ?

Les raccourcis n’effectuent pas de suppressions en cascade. Lorsque vous effectuez une opération de suppression sur un raccourci, vous supprimez uniquement l’objet de raccourci. Les données dans la cible de raccourci restent inchangées. Toutefois, si vous effectuez une opération de suppression sur un fichier ou un dossier dans un raccourci et que vous disposez des autorisations dans la cible de raccourci pour effectuer l’opération de suppression, les fichiers et/ou dossiers sont supprimés dans la cible. L’exemple suivant illustre ce point.

Supprimer l’exemple

L’utilisateur A a un lakehouse avec le chemin d’accès suivant :

MyLakehouse\Files\MyShortcut\Foo\Bar

MyShortcut est un raccourci qui pointe vers un compte ADLS Gen2 qui contient les répertoires Foo\Bar.

Suppression d’un objet de raccourci

L’utilisateur A effectue une opération de suppression sur le chemin suivant :

MyLakehouse\Files\MyShortcut

Dans ce cas, MyShortcut est supprimé du Lakehouse. Les raccourcis n’effectuent pas de suppressions en cascade. Par conséquent, les fichiers et répertoires du compte ADLS Gen2 Foo\Bar ne sont pas affectés.

Suppression de contenu référencé par un raccourci

L’utilisateur A effectue une opération de suppression sur le chemin suivant :

MyLakehouse\Files\MyShortcut\Foo\Bar

Dans ce cas, si l’utilisateur A dispose d’autorisations d’écriture dans le compte ADLS Gen2, le répertoire Bar est supprimé du compte ADLS Gen2.

Vue de traçabilité de l’espace de travail

Lorsque vous créez des raccourcis entre plusieurs éléments Fabric au sein d’un espace de travail, vous pouvez visualiser les relations de raccourci via la vue de traçabilité de l’espace de travail. Sélectionnez le bouton Affichage de la traçabilité ( ) dans le coin supérieur droit de l’Explorateur d’espaces de travail.

Capture d'écran de l'affichage de la lignée.

Remarque

L’affichage de traçabilité est limité à un seul espace de travail. Les raccourcis vers des emplacements en dehors de l’espace de travail sélectionné n’apparaissent pas.

Limitations et considérations

  • Le nombre maximal de raccourcis par élément Fabric est de 100 000. Dans ce contexte, le terme élément fait référence aux applications, aux lakehouses, aux entrepôts et aux rapports, entre autres.
  • Le nombre maximal de raccourcis dans un seul chemin OneLake est de 10.
  • Le nombre maximal de raccourcis directs vers les liens de raccourcis est de 5.
  • Les chemins cibles des raccourcis ADLS et S3 ne peuvent contenir aucun des caractères réservés de la RFC 3986 section 2.2. Pour les caractères autorisés, consultez la section 2.3 de la RFC 3968.
  • Les noms des raccourcis OneLake, les chemins parents et les chemins cibles ne peuvent pas contenir de caractères « % » ou « + ».
  • Les raccourcis ne prennent pas en charge les caractères non linéaux.
  • L’API de copie d’objet blob n’est pas prise en charge pour les raccourcis ADLS ou S3.
  • La fonction copy ne fonctionne pas sur les raccourcis qui pointent directement vers les conteneurs ADLS. Il est recommandé de créer des raccourcis ADLS vers un répertoire qui se trouve au moins un niveau en dessous d’un conteneur.
  • Des raccourcis supplémentaires ne peuvent pas être créés à l’intérieur des raccourcis ADLS ou S3.
  • La traçabilité des raccourcis vers les entrepôts de données et les modèles sémantiques n’est actuellement pas disponible.