OneLake-Tastenkombinationen

Mit Verknüpfungen in Microsoft OneLake können Sie Ihre Daten domänen-, cloud- und kontoübergreifend vereinheitlichen, indem Sie einen einzelnen virtualisierten Data Lake für Ihr gesamtes Unternehmen erstellen. Alle Fabric-Umgebungen und Analyse-Engines können über einen einheitlichen Namespace eine direkte Verbindung mit Ihren vorhandenen Datenquellen wie Azure, AWS und OneLake herstellen. Berechtigungen und Anmeldeinformationen werden alle von OneLake verwaltet, sodass jede Fabric-Oberfläche nicht separat konfiguriert werden muss, um eine Verbindung mit jeder Datenquelle herzustellen. Darüber hinaus können Sie Verknüpfungen verwenden, um Edgekopien von Daten zu vermeiden und die Prozesslatenz im Zusammenhang mit Datenkopien und Staging zu verringern.

Wichtig

Microsoft Fabric befindet sich in der Vorschauphase.

Was sind Tastenkombinationen?

Verknüpfungen sind Objekte in OneLake, die auf andere Speicherorte verweisen. Der Speicherort kann intern oder extern für OneLake sein. Der Speicherort, auf den eine Verknüpfung zeigt, wird als Zielpfad der Verknüpfung bezeichnet. Der Speicherort, an dem die Verknüpfung angezeigt wird, wird als "Shortcut"-Pfad bezeichnet. Tastenkombinationen werden in OneLake als Ordner angezeigt und können transparent von allen Funktionen oder Diensten verwendet werden, die Zugriff auf OneLake haben. Verknüpfungen verhalten sich ähnlich wie symbolische Verknüpfungen. Sie sind ein unabhängiges Objekt vom Ziel. Wenn eine Verknüpfung gelöscht wird, bleibt das Ziel unaffect. Wenn der Zielpfad verschoben, umbenannt oder gelöscht wird, kann die Verknüpfung unterbrochen werden.

Diagramm, das zeigt, wie eine Verknüpfung Dateien und Ordner verbindet, die an anderen Speicherorten gespeichert sind.

Wo kann ich Verknüpfungen erstellen?

Verknüpfungen können sowohl in Lakehouses als auch in KQL-Datenbanken erstellt werden. Darüber hinaus können die in diesen Elementen erstellten Verknüpfungen auf andere OneLake-Standorte, ADLS Gen2- oder Amazon S3-Speicherkonten verweisen.

Lakehouse

Beim Erstellen von Verknüpfungen in einem Lakehouse ist es wichtig, die Ordnerstruktur des Elements zu verstehen. Lakehouses bestehen aus zwei Ordnern der obersten Ebene: dem Ordner "Tables" und dem Ordner "Files". Der Ordner "Tables" stellt den verwalteten Teil des Lakehouse dar, während der Ordner "Files" der nicht verwaltete Teil des Lakehouse ist. Im Ordner "Tables" können Sie nur Verknüpfungen auf der obersten Ebene erstellen. Verknüpfungen werden in anderen Unterverzeichnissen des Ordners "Tables" nicht unterstützt. Wenn das Ziel der Verknüpfung Daten im Delta-Parquet-Format enthält, synchronisiert Lakehouse die Metadaten automatisch und erkennt den Ordner als Tabelle. Im Ordner "Dateien" gibt es keine Einschränkungen, wo Sie Verknüpfungen erstellen können. Sie können auf jeder Ebene der Ordnerhierarchie erstellt werden. Die Tabellenermittlung erfolgt nicht im Ordner "Dateien".

Diagramm, das die Seeansicht und die Tabellenansicht nebeneinander zeigt.

KQL-Datenbank

Wenn Sie eine Verknüpfung in einer KQL-Datenbank erstellen, wird sie im Ordner "Verknüpfungen" der Datenbank angezeigt. Die KQL-Datenbank behandelt Verknüpfungen wie externe Tabellen. Um die Verknüpfung abzufragen, verwenden Sie die Funktion "external_table" des Kusto-Abfragesprache.

Screenshot: Tastenkombinationen in einer KQL-Datenbank.

Wo kann ich auf Tastenkombinationen zugreifen?

Alle Fabric- oder Nicht-Fabric-Dienste, die auf Daten in OneLake zugreifen können, können Verknüpfungen verwenden. Verknüpfungen sind für jeden Dienst transparent, der über die OneLake-API auf Daten zugreift. Verknüpfungen werden nur als ein anderer Ordner im Lake angezeigt. Dadurch können Spark, SQL, Real-Time Analytics und Analysis Services alle Verknüpfungen beim Abfragen von Daten verwenden.

Spark

Spark-Notebooks und Spark-Aufträge können Verknüpfungen verwenden, die in OneLake erstellt werden. Relative Dateipfade können verwendet werden, um Daten direkt aus Verknüpfungen zu lesen. Wenn eine Verknüpfung im Abschnitt "Tabellen" von Lakehouse erstellt wird und im Deltaformat vorliegt, kann sie auch als verwaltete Tabellen mithilfe der Spark SQL-Syntax gelesen werden.

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

Hinweis

Das Deltaformat unterstützt keine Tabellen mit Leerzeichen im Namen. Jede Verknüpfung, die ein Leerzeichen im Namen enthält, wird im Lakehouse nicht als Deltatabelle ermittelt.

SQL

Verknüpfungen im Tabellenabschnitt von Lakehouse können auch über den SQL-Endpunkt für lakehouse gelesen werden. Auf diese kann über die Modusauswahl des Lakehouse oder über SQL Server Management Studio (SSMS) zugegriffen werden.

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

Echtzeitanalysen

Tastenkombinationen in KQL-DBs werden als externe Tabellen erkannt. Um die Verknüpfung abzufragen, verwenden Sie die Funktion "external_table" des Kusto-Abfragesprache.

external_table('MyShortcut')
| take 100

Hinweis

KQL-Datenbanken unterstützen derzeit keine Daten im Deltaformat. Tabellen in einer KQL-Datenbank werden nur als Parquet-Dateien in OneLake exportiert. Verknüpfungen in KQL-Datenbanken, die Delta-formatierte Daten im Ziel enthalten, werden nicht als Tabellen erkannt.

Analysis Services

Power BI-Datasets können für Lakehouses erstellt werden, die Verknüpfungen im Tabellenabschnitt des Lakehouse enthalten. Wenn das Dataset im Direct Lake-Modus ausgeführt wird, kann Analysis Services Daten direkt aus der Verknüpfung lesen.

Nicht-Fabric

Anwendungen und Dienste außerhalb von Fabric können auch über die OneLake-API auf Verknüpfungen zugreifen. OneLake unterstützt eine Teilmenge der ADLS Gen2- und Blob Storage-APIs. Weitere Informationen zur OneLake-API finden Sie unter OneLake-Zugriff mit APIs.

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

Typen von Tastenkombinationen

OneLake-Verknüpfungen unterstützen mehrere Dateisystemdatenquellen. Dazu gehören interne OneLake-Standorte, Azure Data Lake Storage Gen2 und Amazon S3.

Interne OneLake-Tastenkombinationen

Mit internen OneLake-Verknüpfungen können Sie auf Daten in vorhandenen Fabric-Elementen verweisen. Zu diesen Elementen gehören Lakehouses, KQL-Datenbanken und Data Warehouses. Die Verknüpfung kann auf einen Ordnerspeicherort innerhalb desselben Elements, zwischen Elementen innerhalb desselben Arbeitsbereichs oder sogar auf Elemente in verschiedenen Arbeitsbereichen verweisen. Wenn Sie eine Verknüpfung zwischen Elementen erstellen, müssen die Elementtypen nicht übereinstimmen. Für instance können Sie in einem Lakehouse eine Verknüpfung erstellen, die auf Daten in einem Data Warehouse verweist.

Beim Zugriff auf Daten über eine Verknüpfung zu einem anderen OneLake-Standort wird die Identität des aufrufenden Benutzers verwendet, um den Zugriff auf die Daten im Zielpfad der Verknüpfung* zu autorisieren. Dieser Benutzer muss über Berechtigungen am Zielspeicherort verfügen, um die Daten lesen zu können.

Wichtig

Beim Zugriff auf Tastenkombinationen über Power BI-Datasets oder T-SQL wird die Identität des aufrufenden Benutzers nicht an das Verknüpfungsziel übergeben. Stattdessen wird die Identität des aufrufenden Elementbesitzers übergeben, wodurch der Zugriff an den aufrufenden Benutzer delegiert wird.

ADLS-Tastenkombinationen

Verknüpfungen können auch für ADLS Gen2-Speicherkonten erstellt werden. Wenn Sie Verknüpfungen zu ADLS erstellen, kann der Zielpfad auf einen beliebigen Ordner im hierarchischen Namespace verweisen. Der Zielpfad muss mindestens einen Containernamen enthalten.

Zugriff:

ADLS-Verknüpfungen müssen auf den DFS-Endpunkt für das Speicherkonto verweisen.
Ein Beispiel: https://accountname.dfs.core.windows.net/

Hinweis

ADLS-Tastenkombinationen unterstützen keine privaten Endpunkte.

Authorization:

ADLS-Tastenkombinationen verwenden ein delegiertes Autorisierungsmodell. In diesem Modell gibt der Verknüpfungsersteller Anmeldeinformationen für die ADLS-Verknüpfung an, und der gesamte Zugriff auf diese Verknüpfung wird mit diesen Anmeldeinformationen autorisiert. Die unterstützten delegierten Typen sind Kontoschlüssel, SAS-Token, OAuth und Dienstprinzipal.

  • SAS-Token : muss mindestens die folgenden Berechtigungen enthalten: Lesen, Auflisten, Ausführen

  • OAuth-Identität : Muss über die Rolle Storage Blob Data Reader, Storage Blob Data Contributor oder Storage Blob Data Owner (Besitzer von Speicherblobdaten) für das Speicherkonto verfügen.

  • Dienstprinzipal : Muss über die Rolle Storage Blob Data Reader, Storage Blob Data Contributor oder Storage Blob Data Owner (Speicherblobdatenbesitzer) für das Speicherkonto verfügen.

S3-Tastenkombinationen

Verknüpfungen können auch für Amazon S3-Konten erstellt werden. Wenn Sie Verknüpfungen zu Amazon S3 erstellen, muss der Zielpfad mindestens einen Bucketnamen enthalten. S3 unterstützt hierarchische Namespaces nicht nativ, Aber Sie können Präfixe verwenden, um eine Verzeichnisstruktur nachzuahmen. Sie können Präfixe in den Verknüpfungspfad einschließen, um den Datenbereich, auf den über die Verknüpfung zugegriffen werden kann, weiter einzuschränken. Beim Zugriff auf Daten über eine S3-Verknüpfung werden Präfixe als Ordner dargestellt.

Zugriff:

S3-Verknüpfungen müssen auf den https-Endpunkt für den S3-Bucket verweisen. Ein Beispiel: https://bucketname.s3.region.amazonaws.com/

Hinweis

S3-Verknüpfungen unterstützen keine privaten Endpunkte.

Authorization:

S3-Tastenkombinationen verwenden ein delegiertes Autorisierungsmodell. In diesem Modell gibt der Verknüpfungsersteller Anmeldeinformationen für die S3-Verknüpfung an, und der gesamte Zugriff auf diese Verknüpfung wird mithilfe dieser Anmeldeinformationen autorisiert. Die unterstützten delegierten Anmeldeinformationen sind Schlüssel und Geheimnis für einen IAM-Benutzer.

Der IAM muss mindestens schreibgeschützt (Get, List) für den Bucket verfügen, auf den die Verknüpfung verweist.

Hinweis

S3-Verknüpfungen sind schreibgeschützt. Schreibvorgänge werden unabhängig von den Berechtigungen für den IAM-Benutzer nicht unterstützt.

Verwenden von Cloudverbindungen durch Tastenkombinationen

DIE ADLS- und S3-Tastenkombinationsautorisierung wird über Cloudverbindungen delegiert. Beim Erstellen einer neuen ADLS- oder S3-Verknüpfung erstellt ein Benutzer entweder eine neue Verbindung oder wählt eine vorhandene Verbindung für die Datenquelle aus. Wenn eine Verbindung für eine Verknüpfung festgelegt wird, wird dies als "Bindungsvorgang" betrachtet. Nur Benutzer mit der Berechtigung für die Verbindung können den Bindungsvorgang ausführen. Wenn ein Benutzer nicht über Berechtigungen für die Verbindung verfügt, kann er keine neuen Verknüpfungen mit dieser Verbindung erstellen.

Berechtigungen

Berechtigungen für Verknüpfungen werden durch eine Kombination aus den Berechtigungen im Verknüpfungspfad und dem Zielpfad geregelt. Wenn ein Benutzer auf eine Verknüpfung zugreift, wird die restriktivste Berechtigung der beiden Speicherorte angewendet. Daher kann ein Benutzer, der über Lese-/Schreibberechtigungen im Lakehouse verfügt, aber nur über Leseberechtigungen im Verknüpfungszielzielpfad schreiben. Ebenso darf ein Benutzer, der nur über Leseberechtigungen im Lakehouse verfügt, aber über Lese-/Schreibzugriff im Verknüpfungszielzielpfad nicht schreiben.

Arbeitsbereichsrollen

In der folgenden Tabelle sind die Verknüpfungsberechtigungen für jede Arbeitsbereichsrolle aufgeführt. Weitere Informationen finden Sie unter Arbeitsbereichsrollen.

Funktion Administrator Member Mitwirkender Viewer
Erstellen einer Verknüpfung Ja1 Ja1 Ja1 -
Lesen des Datei-/Ordnerinhalts der Verknüpfung Ja2 Ja2 Ja2 -
Schreiben an den Zielspeicherort der Verknüpfung Ja3 Ja3 Ja3 -
Lesen von Daten aus Verknüpfungen im Tabellenabschnitt desLakehouse über den TDS-Endpunkt Ja Ja Ja Ja

1 Der Benutzer muss über eine Rolle verfügen, die schreibberechtigungen für den Verknüpfungsspeicherort und mindestens den Zielspeicherort der Leseberechtigung bereitstellt.

2 Der Benutzer muss über eine Rolle verfügen, die Leseberechtigung sowohl am Verknüpfungs- als auch am Zielstandort bereitstellt.

3 Der Benutzer muss über eine Rolle verfügen, die Schreibberechtigungen sowohl am Verknüpfungsspeicherort als auch am Zielspeicherort bereitstellt.

Wie gehen Verknüpfungen mit Löschungen um?

Verknüpfungen führen keine kaskadierenden Löschvorgänge durch. Wenn Sie einen Löschvorgang für eine Verknüpfung ausführen, löschen Sie nur das Verknüpfungsobjekt. Die Daten im Verknüpfungsziel bleiben unverändert. Wenn Sie jedoch einen Löschvorgang für eine Datei oder einen Ordner innerhalb einer Verknüpfung ausführen und im Verknüpfungsziel über Berechtigungen zum Ausführen des Löschvorgangs verfügen, werden die Dateien und/oder Ordner im Ziel gelöscht. Das folgende Beispiel veranschaulicht diesen Punkt.

Beispiel löschen

Benutzer A verfügt über ein Lakehouse mit dem folgenden Pfad:

MyLakehouse\Files\MyShortcut\Foo\Bar

MyShortcut ist eine Verknüpfung, die auf ein ADLS Gen2-Konto verweist, das die Foo\Bar-Verzeichnisse enthält.

Löschen eines Verknüpfungsobjekts

Benutzer A führt einen Löschvorgang für den folgenden Pfad aus:

MyLakehouse\Files\MyShortcut

In diesem Fall wird MyShortcut aus dem Lakehouse gelöscht. Verknüpfungen führen keine kaskadierenden Löschungen durch, daher bleiben die Dateien und Verzeichnisse im ADLS Gen2-Konto Foo\Bar davon unberührt.

Löschen von Inhalten, auf die durch eine Verknüpfung verwiesen wird

Benutzer A führt einen Löschvorgang für den folgenden Pfad aus:

MyLakehouse\Files\MyShortcut\Foo\Bar

Wenn Benutzer A in diesem Fall über Schreibberechtigungen im ADLS Gen2-Konto verfügt, wird das Bar-Verzeichnis aus dem ADLS Gen2-Konto gelöscht.

Arbeitsbereichsherkunftsansicht

Beim Erstellen von Verknüpfungen zwischen mehreren Fabric-Elementen in einem Arbeitsbereich können Sie die Verknüpfungsbeziehungen über die Arbeitsbereichsherkunftsansicht visualisieren. Wählen Sie in der oberen rechten Ecke des Arbeitsbereichs-Explorers die Schaltfläche Herkunftsansicht ( ) aus.

Screenshot des Bildschirms

Hinweis

Die Herkunftsansicht ist auf einen einzelnen Arbeitsbereich ausgerichtet. Verknüpfungen zu Speicherorten außerhalb des ausgewählten Arbeitsbereichs werden nicht angezeigt.

Bekannte Probleme und Einschränkungen

  • Die maximale Anzahl von Verknüpfungen pro Fabric-Element beträgt 10.000.
  • Die maximale Anzahl von Tastenkombinationen in einem einzelnen OneLake-Pfad ist 10.
  • Die maximale Anzahl direkter Verknüpfungen zu Verknüpfungslinks beträgt 5.
  • ADLS- und S3-Verknüpfungszielpfade dürfen keine reservierten Zeichen aus RCF 3986 Abschnitt 2.2 enthalten.
  • OneLake-Verknüpfungszielpfade dürfen keine %-Zeichen enthalten.
  • Verknüpfungen unterstützen keine nichtlatinen Zeichen.
  • Kopierblob-API wird für ADLS- oder S3-Verknüpfungen nicht unterstützt.
  • Die Kopierfunktion funktioniert nicht bei Verknüpfungen, die direkt auf ADLS-Container verweisen. Es wird empfohlen, ADLS-Verknüpfungen für ein Verzeichnis zu erstellen, das mindestens eine Ebene unterhalb eines Containers liegt.
  • OneLake-Verknüpfungen, die auf ADLS- oder S3-Verknüpfungen verweisen, werden nicht unterstützt.
  • Zusätzliche Verknüpfungen können nicht in ADLS- oder S3-Verknüpfungen erstellt werden.

Nächste Schritte