Herstellen einer Verbindung mit Microsoft OneLake

Microsoft OneLake bietet öffentlichen Zugriff auf alle Ihre Fabric-Elemente über bestehende Azure Data Lake Storage (ADLS) Gen2-APIs und SDKs. Sie können auf Ihre Daten in OneLake über jede API, jedes SDK oder jedes Tool zugreifen, das mit ADLS Gen2 kompatibel ist, indem Sie stattdessen einen OneLake-URI verwenden. Sie können Daten über den Azure Storage-Explorer in ein Lakehouse hochladen oder eine Deltatabelle über eine Verknüpfung aus Azure Databricks lesen.

Da es sich bei OneLake um ein Software-as-a-Service-Angebot (SaaS) handelt, müssen einige Vorgänge (z. B. das Verwalten von Berechtigungen oder das Aktualisieren von Elementen) über Fabric-Umgebungen erfolgen und können nicht über ADLS Gen2-APIs durchgeführt werden. Eine vollständige Liste der Änderungen an diesen APIs finden Sie unter OneLake-API-Parität.

URI-Syntax

Da OneLake in Ihrem gesamten Microsoft Fabric-Mandanten vorhanden ist, können Sie anhand des Arbeitsbereichs, des Elements und des Pfads auf alle Elemente in Ihrem Mandanten verweisen:

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

Hinweis

Da Sie Elementnamen für mehrere Elementtypen wiederverwenden können, müssen Sie den Elementtyp in der Erweiterung angeben. Zum Beispiel .lakehouse für ein Data Lakehouse und .datawarehouse für ein Data Warehouse.

OneLake unterstützt auch die Referenzierung von Arbeitsbereichen und Elementen mit global eindeutigen Bezeichnern (GUIDs). OneLake weist GUIDs zu, die sich auch dann nicht ändern, wenn sich der Arbeitsbereichs- oder Elementname ändert. Die zugeordnete GUID für Ihren Arbeitsbereich oder Ihr Element finden Sie in der URL im Fabric-Portal. Sie müssen GUIDs sowohl für den Arbeitsbereich als auch für das Element verwenden und benötigen den Elementtyp nicht.

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

Verwenden Sie die folgende Zuordnung, wenn Sie ein Tool für die Verwendung über OneLake anstelle von ADLS Gen2 nutzen:

  • Der Kontoname lautet immer onelake.
  • Der Containername entspricht dem Namen Ihres Arbeitsbereichs.
  • Der Datenpfad beginnt am Element. Beispiel: /mylakehouse.lakehouse/Files/

OneLake unterstützt außerdem den Azure Blob Filesystem-Treiber (ABFS) für mehr Kompatibilität mit ADLS Gen2 und Azure Blob Storage. Der ABFS-Treiber verwendet einen eigenen Schema-Bezeichner abfs und ein anderes URI-Format, um Dateien und Verzeichnisse in ADLS Gen2-Konten anzusprechen. Um dieses URI-Format über OneLake zu verwenden, tauschen Sie den Arbeitsbereich gegen das Dateisystem aus, und schließen Sie das Element und den Elementtyp ein.

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

Autorisierung

Sie können OneLake-APIs mittels Microsoft Entra ID authentifizieren, indem Sie einen Autorisierungsheader übergeben. Wenn ein Tool die Anmeldung bei Ihrem Azure-Konto unterstützt, um die Tokenübergabe zu aktivieren, können Sie ein beliebiges Abonnement auswählen. OneLake benötigt nur Ihr Benutzertoken und kümmert sich nicht um Ihr Azure-Abonnement.

Wenn Sie OneLake direkt über DFS-APIs aufrufen, können Sie sich mit einem Bearertoken für Ihr Microsoft Entra-Konto authentifizieren. Weitere Informationen zum Anfordern und Verwalten von Bearertoken für Ihre Organisation finden Sie in der Microsoft-Authentifizierungsbibliothek.

Für schnelle Ad-hoc-Tests von OneLake mit direkten API-Aufrufen finden Sie hier ein einfaches Beispiel, das PowerShell zum Anmelden bei Ihrem Azure-Konto, zum Abrufen eines Speicherbereichstokens und zum Kopieren in die Zwischenablage verwendet, um es an anderer Stelle einfach zu verwenden. Weitere Informationen zum Abrufen von Zugriffstoken mithilfe von PowerShell finden Sie unter Get-AzAccessToken.

Hinweis

OneLake unterstützt nur Token in der Storage Zielgruppe. Im folgenden Beispiel wird die Zielgruppe über den ResourceTypeName Parameter festgelegt.

az login --allow-no-subscriptions
$testToken = Get-AzAccessToken -ResourceTypeName Storage
$testToken.Token | Set-Clipboard

Datenresidenz

OneLake garantiert derzeit nicht, dass die Daten in einer bestimmten Region verbleiben, wenn der globale Endpunkt (https://onelake.dfs.fabric.microsoft.com) verwendet wird. Wenn Sie Daten in einer anderen Region als der Region Ihres Arbeitsbereichs abfragen, besteht die Möglichkeit, dass Daten Ihre Region während des Endpunktauflösungsprozesses verlassen können. Wenn Sie sich Sorgen hinsichtlich der Datenresidenz machen, stellen Sie mithilfe des richtigen regionalen Endpunkts für Ihren Arbeitsbereich sicher, dass Ihre Daten innerhalb der aktuellen Region verbleiben und keine regionalen Grenzen überschreiten. Sie können den richtigen regionalen Endpunkt ermitteln, indem Sie die Region der Kapazität überprüfen, an die der Arbeitsbereich angefügt ist.

Die regionalen Endpunkte von OneLake haben alle das gleiche Format:https://<region>-onelake.dfs.fabric.microsoft.com. So wäre beispielsweise ein Arbeitsbereich, der an eine Kapazität in der Region USA, Westen 2 angeschlossen ist, über den regionalen Endpunkt https://westus-onelake.dfs.fabric.microsoft.com zugänglich.

Häufige Probleme

Wenn ein Tool oder Paket, das mit ADLS Gen2 kompatibel ist, über OneLake nicht funktioniert, ist das häufigste Problem die URL-Validierung. Da OneLake einen anderen Endpunkt (dfs.fabric.microsoft.com) als ADLS Gen2 (dfs.core.windows.net) verwendet, erkennen einige Tools den OneLake-Endpunkt nicht und blockieren ihn. Einige Tools ermöglichen die Verwendung benutzerdefinierter Endpunkte (z. B. PowerShell). Andernfalls ist es häufig eine einfache Lösung, den Endpunkt von OneLake als unterstützten Endpunkt hinzuzufügen. Wenn Sie ein Problem mit der URL-Validierung oder andere Probleme mit der Verbindung zu OneLake haben, lassen Sie es uns wissen.

Beispiele

Datei erstellen

Anforderung PUT https://onelake.dfs.fabric.microsoft.com/{workspace}/{item}.{itemtype}/Files/sample?resource=file
Headers Authorization: Bearer <userAADToken>
Response ResponseCode:201 Created
Header:
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
Text: