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.
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 même créer des raccourcis vers des emplacements locaux ou restreints au réseau avec l’utilisation de la passerelle de données locale Fabric (OPDG).
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.
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.
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. Apache Spark, SQL, Real-Time Intelligence et Analysis Services peuvent tous utiliser des raccourcis pour l’interrogation des données.
Apache Spark
Les notebooks Apache Spark et les tâches Apache Spark peuvent utiliser les 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 Apache 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]
Informations 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, S3 Compatible, Google Cloud Storage (GCS) 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
- Identité de l’espace de travail : doit disposer d’un lecteur de données Blob de stockage, d’un contributeur aux données blob de stockage ou d’un rôle propriétaire de 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 Google Cloud Storage
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
Les principaux de service ajoutés à l’espace de travail Fabric doivent avoir le rôle d’administrateur pour autoriser le 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 sélectionnez Enregistrer.
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.
Sécurité des raccourcis
Les raccourcis nécessitent certaines autorisations pour pouvoir les gérer et les utiliser. La sécurité des raccourcis OneLake examine les autorisations requises pour créer des raccourcis et accéder aux données à l’aide de ces derniers.
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.
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.
- L’API Table peut prendre jusqu’à une minute pour reconnaître de nouveaux raccourcis.