Connexion à Microsoft OneLake

Microsoft OneLake offre un accès ouvert à tous vos éléments Fabric via les API et SDK (kits de développement logiciel) existants d'Azure Data Lake Storage (ADLS) et Blob. Vous pouvez accéder à vos données dans OneLake via n’importe quelle API, SDK ou outil compatible avec ADLS ou Stockage Blob Azure à l’aide d’un URI OneLake à la place. Vous pouvez téléverser des données vers un lakehouse via Explorateur Stockage Azure, ou lire une table Delta via un raccourci depuis Azure Databricks.

OneLake étant un logiciel en tant que service (SaaS), certaines opérations, telles que la gestion des autorisations ou la mise à jour d’éléments, doivent être effectuées via des expériences Fabric et ne peuvent pas être effectuées via des API ADLS. Pour obtenir la liste complète des modifications apportées à ces API, consultez Parité des API OneLake.

Syntaxe d’URI

Parce que OneLake s’étend à l’ensemble de votre tenant Microsoft Fabric, vous pouvez référencer tout élément de votre tenant par son espace de travail, son élément et son chemin d’accès :

https://onelake.dfs.fabric.microsoft.com/<workspace>/<item>.<itemtype>/<path>/<fileName>

Remarque

Étant donné que vous pouvez réutiliser les noms d’éléments entre plusieurs types d’éléments, vous devez spécifier le type d’élément dans l’extension. Par exemple, .lakehouse pour un lakehouse et .warehouse pour un entrepôt.

OneLake prend également en charge le référencement d’espaces de travail et d’éléments avec des identificateurs globaux uniques (GUID). OneLake affecte des GUID, et les GUID ne changent pas même si le nom de l’espace de travail ou de l’élément change. Vous trouverez le GUID associé à votre espace de travail ou élément dans l’URL sur le portail Fabric. Vous devez utiliser des GUID pour l’espace de travail et l’élément, et vous n’avez pas besoin du type d’élément.

https://onelake.dfs.fabric.microsoft.com/<workspaceGUID>/<itemGUID>/<path>/<fileName>

Lors de l’adoption d’un outil pour une utilisation sur OneLake au lieu d’ADLS, utilisez le mappage suivant :

  • Le nom du compte est toujours onelake.
  • Le nom du conteneur est le nom de votre espace de travail.
  • Le chemin d’accès aux données commence à l’élément. Par exemple : /mylakehouse.lakehouse/Files/.

OneLake prend également en charge le pilote du système de fichiers Blob d'Azure (ABFS) pour une meilleure compatibilité avec ADLS et le Stockage d'objets Blob Azure. Le pilote ABFS utilise son propre identificateur abfs de schéma et un autre format d’URI pour traiter les fichiers et les répertoires dans les comptes ADLS. Pour utiliser ce format d’URI sur OneLake, remplacez l’espace de travail par le système de fichiers et incluez l’élément et son type.

abfs[s]://<workspace>@onelake.dfs.fabric.microsoft.com/<item>.<itemtype>/<path>/<fileName>

L'URI du pilote abfs n'autorise pas les caractères spéciaux, tels que les espaces, dans le nom de l'espace de travail. Dans ce cas, vous pouvez référencer les espaces de travail et les éléments à l'aide des identifiants uniques globaux (GUID) décrits plus haut dans cette section.

Autorisation

Vous pouvez vous authentifier auprès des API OneLake à l’aide de Microsoft Entra ID en transmettant un en-tête d’autorisation. Si un outil permet de se connecter à votre compte Azure pour activer le transfert de jeton, vous pouvez sélectionner n’importe quel abonnement. OneLake nécessite uniquement votre jeton d’utilisateur sans se préoccuper de votre abonnement Azure.

Lorsque vous appelez OneLake directement via des API DFS, vous pouvez vous authentifier avec un jeton du porteur pour votre compte Microsoft Entra. Pour obtenir plus d’informations sur la demande et la gestion de jetons du porteur pour votre organisation, consultez la Bibliothèque d’authentification Microsoft.

Pour effectuer rapidement des tests ad hoc de OneLake au moyen d’appels directs à l’API, voici un exemple simple utilisant PowerShell pour vous connecter à votre compte Azure, récupérer un jeton avec portée de stockage et le copier dans votre presse-papiers afin de l’utiliser facilement ailleurs. Pour plus d’informations sur la récupération des jetons d’accès à l’aide de PowerShell, consultez Get-AzAccessToken.

Remarque

OneLake prend uniquement en charge les jetons destinés à l’audience Storage. Dans l’exemple suivant, nous définissons l’audience par le biais du paramètre ResourceTypeName.

Connect-AzAccount
$testToken = Get-AzAccessToken -AsSecureString -ResourceTypeName Storage
# Retrieved token is of string type which you can validate with the "$testToken.Token.GetTypeCode()" command.
$testToken.Token | Set-Clipboard

Résidence des données

Si vous utilisez le point de terminaison global (https://onelake.dfs.fabric.microsoft.com) pour interroger des données dans une région différente de la région de votre espace de travail, il est possible que les données puissent quitter votre région pendant le processus de résolution de point de terminaison. Si la résidence des données vous préoccupe, l’utilisation du point de terminaison régional approprié pour votre espace de travail garantit que vos données restent dans leur région actuelle et ne franchissent aucune limite régionale. Vous pouvez découvrir le point de terminaison régional correct en vérifiant la région de la capacité à laquelle l’espace de travail est attaché.

Les points de terminaison régionaux OneLake suivent tous le même format : https://<region>-onelake.dfs.fabric.microsoft.com. Par exemple, un espace de travail attaché à une capacité dans la région USA Ouest serait accessible via le point de terminaison régional https://westus-onelake.dfs.fabric.microsoft.com.

Points de terminaison OneLake supplémentaires

Pour vous connecter à votre espace de travail via un point de terminaison privé, vous devez utiliser le nom de domaine complet de l’espace de travail (FQDN) (https://<wsid>.z<xy>.dfs.fabric.microsoft.com). En savoir plus sur le fonctionnement du FQDN de l’espace de travail dans la vue d’ensemble des liens privés au niveau de l’espace de travail.

OneLake prend également en charge un nom de domaine complet (https://api.onelake.fabric.microsoft.com) général et une variante régionale (https://<region>-api.onelake.fabric.microsoft.com). Ces noms de domaine complets fonctionnent de manière identique aux noms de domaine complets DFS et Blob OneLake, mais peuvent être incompatibles avec certains outils stockage Azure qui s’appuient sur les chaînes .dfs » et « .blob » pour les mapper aux API de stockage Azure correctes.

Problèmes courants

Si un outil ou un package compatible avec ADLS ne fonctionne pas sur OneLake, le problème le plus courant est la validation d’URL. Comme OneLake utilise un autre point de terminaison (dfs.fabric.microsoft.com) que ADLS (dfs.core.windows.net), certains outils ne reconnaissent pas le point de terminaison OneLake et le bloquent. Certains outils vous permettent d'utiliser des points de terminaison personnalisés (comme PowerShell). Sinon, il suffit souvent d'ajouter le point de terminaison de OneLake comme point de terminaison pris en charge. Si vous rencontrez un problème de validation d’URL ou si vous rencontrez d’autres problèmes de connexion à OneLake, dites-le nous.

Ressources

OneLake est accessible via les mêmes API et sdk que ADLS. Pour en savoir plus sur l’utilisation des API ADLS, consultez les pages suivantes :

Exemples

Créer un fichier

Requête PUT https://onelake.dfs.fabric.microsoft.com/{workspace}/{item}.{itemtype}/Files/sample?resource=file
En-têtes Authorization: Bearer <userAADToken>
Response ResponseCode :201 Created
En-têtes :
x-ms-version : 2021-06-08
x-ms-request-id : 272526c7-0995-4cc4-b04a-8ea3477bc67b
x-ms-content-crc64 : OAJ6r0dQWP0=
x-ms-request-server-encrypted : true
ETag : 0x8DA58EE365
Corps :