OneLake-snelkoppelingen
Met snelkoppelingen in Microsoft OneLake kunt u uw gegevens samenvoegen tussen domeinen, clouds en accounts door één virtuele data lake voor uw hele onderneming te maken. Alle Fabric-ervaringen en analytische engines kunnen rechtstreeks verbinding maken met uw bestaande gegevensbronnen, zoals Azure, Amazon Web Services (AWS) en OneLake via een geïntegreerde naamruimte. OneLake beheert alle machtigingen en referenties, dus u hoeft elke Infrastructuurworkload niet afzonderlijk te configureren om verbinding te maken met elke gegevensbron. Daarnaast kunt u sneltoetsen gebruiken om edge-kopieën van gegevens te elimineren en de proceslatentie te verminderen die is gekoppeld aan gegevenskopieën en fasering.
Wat zijn snelkoppelingen?
Snelkoppelingen zijn objecten in OneLake die verwijzen naar andere opslaglocaties. De locatie kan intern of extern zijn voor OneLake. De locatie waarnaar een snelkoppeling verwijst, wordt het doelpad van de snelkoppeling genoemd. De locatie waar de snelkoppeling wordt weergegeven, wordt het snelkoppelingspad genoemd. Snelkoppelingen worden weergegeven als mappen in OneLake en elke workload of service die toegang heeft tot OneLake, kunnen deze gebruiken. Snelkoppelingen gedragen zich als symbolische koppelingen. Ze zijn een onafhankelijk object van het doel. Als u een snelkoppeling verwijdert, blijft het doel ongewijzigd. Als u een doelpad verplaatst, wijzigt of verwijdert, kan de snelkoppeling worden verbroken.
Waar kan ik snelkoppelingen maken?
U kunt snelkoppelingen maken in lakehouses en Kusto-querytaal (KQL)-databases. Bovendien kunnen de snelkoppelingen die u in deze items maakt verwijzen naar andere OneLake-locaties, Azure Data Lake Storage (ADLS) Gen2, Amazon S3-opslagaccounts of Dataverse. U kunt zelfs snelkoppelingen maken naar on-premises of locaties met netwerkbeperking met het gebruik van de on-premises gegevensgateway van Fabric (OPDG).
U kunt de Fabric-gebruikersinterface gebruiken om interactief snelkoppelingen te maken en u kunt de REST API gebruiken om programmatisch snelkoppelingen te maken.
Lakehouse
Wanneer u snelkoppelingen in een lakehouse maakt, moet u de mapstructuur van het item begrijpen. Lakehouses bestaan uit twee mappen op het hoogste niveau: de map Tabellen en de map Bestanden . De map Tabellen vertegenwoordigt het beheerde gedeelte van het lakehouse, terwijl de map Bestanden het onbeheerde gedeelte van het lakehouse is. In de map Tabellen kunt u alleen snelkoppelingen maken op het hoogste niveau. Snelkoppelingen worden niet ondersteund in andere submappen van de map Tabellen . Als het doel van de snelkoppeling gegevens bevat in de Delta\Parquet-indeling, synchroniseert lakehouse automatisch de metagegevens en herkent de map als een tabel. In de map Bestanden zijn er geen beperkingen voor het maken van snelkoppelingen. U kunt deze maken op elk niveau van de maphiërarchie. Tabeldetectie vindt niet plaats in de map Bestanden .
KQL-database
Wanneer u een snelkoppeling maakt in een KQL-database, wordt deze weergegeven in de map Snelkoppelingen van de database. De KQL-database behandelt snelkoppelingen zoals externe tabellen. Als u een query wilt uitvoeren op de snelkoppeling, gebruikt u de external_table
functie van de Kusto-querytaal.
Waar heb ik toegang tot snelkoppelingen?
Elke Fabric- of niet-Fabric-service die toegang heeft tot gegevens in OneLake, kan snelkoppelingen gebruiken. Snelkoppelingen zijn transparant voor elke service die toegang heeft tot gegevens via de OneLake-API. Snelkoppelingen worden gewoon weergegeven als een andere map in het meer. Apache Spark, SQL, Realtime Intelligence en Analysis Services kunnen allemaal snelkoppelingen gebruiken bij het opvragen van gegevens.
Apache Spark
Apache Spark-notebooks en Apache Spark-taken kunnen snelkoppelingen gebruiken die u in OneLake maakt. Relatieve bestandspaden kunnen worden gebruikt om gegevens rechtstreeks uit snelkoppelingen te lezen. Als u bovendien een snelkoppeling maakt in de sectie Tabellen van lakehouse en deze de Delta-indeling heeft, kunt u deze lezen als een beheerde tabel met behulp van de Apache Spark SQL-syntaxis.
df = spark.read.format("delta").load("Tables/MyShortcut")
display(df)
df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000")
display(df)
Notitie
De Delta-indeling biedt geen ondersteuning voor tabellen met spatietekens in de naam. Een snelkoppeling met een spatie in de naam wordt niet gedetecteerd als een Delta-tabel in het lakehouse.
SQL
U kunt ook snelkoppelingen lezen in de sectie Tabellen van een lakehouse via het SQL Analytics-eindpunt voor het lakehouse. U hebt toegang tot het SQL Analytics-eindpunt via de moduskiezer van het lakehouse of via SQL Server Management Studio (SSMS).
SELECT TOP (100) *
FROM [MyLakehouse].[dbo].[MyShortcut]
Realtime intelligentie
Snelkoppelingen in KQL-databases worden herkend als externe tabellen. Als u een query wilt uitvoeren op de snelkoppeling, gebruikt u de external_table
functie van de Kusto-querytaal.
external_table('MyShortcut')
| take 100
Analysis Services
U kunt semantische modellen maken voor lakehouses die snelkoppelingen bevatten in de sectie Tabellen van het lakehouse. Wanneer het semantische model wordt uitgevoerd in de Direct Lake-modus, kan Analysis Services gegevens rechtstreeks vanuit de snelkoppeling lezen.
Niet-infrastructuur
Toepassingen en services buiten Fabric hebben ook toegang tot snelkoppelingen via de OneLake-API. OneLake ondersteunt een subset van de ADLS Gen2- en Blob Storage-API's. Zie OneLake-toegang met API's voor meer informatie over de OneLake-API.
https://onelake.dfs.fabric.microsoft.com/MyWorkspace/MyLakhouse/Tables/MyShortcut/MyFile.csv
Typen sneltoetsen
OneLake-snelkoppelingen ondersteunen meerdere bestandssysteemgegevensbronnen. Deze omvatten interne OneLake-locaties, Azure Data Lake Storage (ADLS) Gen2, Amazon S3, S3 Compatible, Google Cloud Storage (GCS) en Dataverse.
Interne OneLake-snelkoppelingen
Met interne OneLake-snelkoppelingen kunt u verwijzen naar gegevens binnen bestaande Fabric-items. Deze items omvatten lakehouses, KQL-databases en datawarehouses. De snelkoppeling kan verwijzen naar een maplocatie binnen hetzelfde item, tussen items in dezelfde werkruimte of zelfs naar items in verschillende werkruimten. Wanneer u een snelkoppeling tussen items maakt, hoeven de itemtypen niet overeen te komen. U kunt bijvoorbeeld een snelkoppeling maken in een lakehouse die verwijst naar gegevens in een datawarehouse.
Wanneer een gebruiker gegevens opent via een snelkoppeling naar een andere OneLake-locatie, wordt de identiteit van de aanroepende gebruiker gebruikt om toegang tot de gegevens in het doelpad van de snelkoppeling* te autoriseren. Deze gebruiker moet machtigingen hebben op de doellocatie om de gegevens te kunnen lezen.
Belangrijk
Wanneer u snelkoppelingen opent via semantische Power BI-modellen of T-SQL, wordt de identiteit van de aanroepende gebruiker niet doorgegeven aan het snelkoppelingsdoel. De identiteit van de eigenaar van het aanroepende item wordt doorgegeven, waarbij de toegang tot de aanroepende gebruiker wordt overgedragen.
ADLS-snelkoppelingen
Snelkoppelingen kunnen ook worden gemaakt voor ADLS Gen2-opslagaccounts. Wanneer u snelkoppelingen naar ADLS maakt, kan het doelpad verwijzen naar een map in de hiërarchische naamruimte. Het doelpad moet minimaal een containernaam bevatten.
Access
ADLS-snelkoppelingen moeten verwijzen naar het DFS-eindpunt voor het opslagaccount.
Voorbeeld: https://accountname.dfs.core.windows.net/
Als uw opslagaccount wordt beveiligd door een opslagfirewall, kunt u de toegang tot vertrouwde services configureren. Toegang tot vertrouwde werkruimten bekijken
Autorisatie
ADLS-snelkoppelingen maken gebruik van een gedelegeerd autorisatiemodel. In dit model geeft de maker van de snelkoppeling een referentie op voor de ADLS-snelkoppeling en wordt alle toegang tot die snelkoppeling geautoriseerd met die referentie. De ondersteunde gedelegeerde typen zijn organisatieaccount, accountsleutel, SHARED Access Signature (SAS) en service-principal.
- Organisatieaccount : moet de rol Opslagblobgegevenslezer, Inzender voor opslagblobgegevens of eigenaar van opslagblobgegevens voor opslagaccount hebben
- Shared Access Signature (SAS): moet ten minste de volgende machtigingen bevatten: Lezen, Weergeven en Uitvoeren
- Service-principal : moet de rol Opslagblobgegevenslezer, Inzender voor opslagblobgegevens of Eigenaar van opslagblobgegevens voor opslagaccount hebben
- Werkruimte-id : moet de rol Opslagblobgegevenslezer, Inzender voor opslagblobgegevens of eigenaar van opslagblobgegevens voor opslagaccount hebben
Notitie
U moet hiërarchische naamruimten hebben ingeschakeld voor uw ADLS Gen 2-opslagaccount.
S3-snelkoppelingen
U kunt ook snelkoppelingen maken naar Amazon S3-accounts. Wanneer u snelkoppelingen naar Amazon S3 maakt, moet het doelpad minimaal een bucketnaam bevatten. S3 biedt geen systeemeigen ondersteuning voor hiërarchische naamruimten, maar u kunt voorvoegsels gebruiken om een mapstructuur na te bootsen. U kunt voorvoegsels opnemen in het snelkoppelingspad om het bereik van gegevens die toegankelijk zijn via de snelkoppeling verder te beperken. Wanneer u gegevens opent via een S3-snelkoppeling, worden voorvoegsels weergegeven als mappen.
Access
S3-snelkoppelingen moeten verwijzen naar het https-eindpunt voor de S3-bucket.
Voorbeeld: https://bucketname.s3.region.amazonaws.com/
Notitie
U hoeft de S3-instelling Openbare toegang blokkeren voor uw S3-account niet uit te schakelen voor de S3-snelkoppeling naar functie.
Toegang tot het S3-eindpunt mag niet worden geblokkeerd door een opslagfirewall of virtuele privécloud.
Autorisatie
S3-snelkoppelingen maken gebruik van een gedelegeerd autorisatiemodel. In dit model geeft de maker van de snelkoppeling een referentie op voor de S3-snelkoppeling en wordt alle toegang tot die snelkoppeling geautoriseerd met behulp van die referentie. De ondersteunde gedelegeerde referenties zijn een sleutel en geheim voor een IAM-gebruiker.
De IAM-gebruiker moet over de volgende machtigingen beschikken voor de bucket waarnaar de snelkoppeling verwijst.
S3:GetObject
S3:GetBucketLocation
S3:ListBucket
Notitie
S3-sneltoetsen zijn alleen-lezen. Ze bieden geen ondersteuning voor schrijfbewerkingen, ongeacht de machtigingen voor de IAM-gebruiker.
Snelkoppelingen voor Google Cloud Storage
Snelkoppelingen kunnen worden gemaakt naar Google Cloud Storage (GCS) met behulp van de XML-API voor GCS. Wanneer u snelkoppelingen naar Google Cloud Storage maakt, moet het doelpad minimaal een bucketnaam bevatten. U kunt ook het bereik van de snelkoppeling beperken door het voorvoegsel of de map op te geven waarnaar u wilt verwijzen in de opslaghiërarchie.
Access
Wanneer u de verbinding configureert voor een GCS-snelkoppeling, kunt u het globale eindpunt voor de opslagservice opgeven of een bucketspecifiek eindpunt gebruiken.
- Voorbeeld van globaal eindpunt:
https://storage.googleapis.com
- Voorbeeld van bucketspecifiek eindpunt:
https://<BucketName>.storage.googleapis.com
Autorisatie
GCS-snelkoppelingen maken gebruik van een gedelegeerd autorisatiemodel. In dit model geeft de maker van de snelkoppeling een referentie op voor de GCS-snelkoppeling en alle toegang tot die snelkoppeling is geautoriseerd met die referentie. De ondersteunde gedelegeerde referenties zijn een HMAC-sleutel en geheim voor een serviceaccount of gebruikersaccount.
Het account moet gemachtigd zijn om toegang te krijgen tot de gegevens in de GCS-bucket. Als het bucketspecifieke eindpunt is gebruikt in de verbinding voor de snelkoppeling, moet het account de volgende machtigingen hebben:
storage.objects.get
stoage.objects.list
Als het globale eindpunt is gebruikt in de verbinding voor de snelkoppeling, moet het account ook de volgende machtiging hebben:
storage.buckets.list
Notitie
GCS-snelkoppelingen zijn alleen-lezen. Ze bieden geen ondersteuning voor schrijfbewerkingen, ongeacht de machtigingen voor het gebruikte account.
Dataverse-snelkoppelingen
Dankzij de directe integratie van Dataverse met Microsoft Fabric kunnen organisaties hun Dynamics 365 bedrijfstoepassingen en bedrijfsprocessen uitbreiden naar Fabric. Deze integratie wordt gerealiseerd via snelkoppelingen, die op twee manieren kunnen worden gemaakt: via de PowerApps Maker-portal of rechtstreeks via Fabric.
Snelkoppelingen maken via de PowerApps Maker-portal
Geautoriseerde PowerApps-gebruikers hebben toegang tot de PowerApps-makerportal en gebruiken de functie Koppeling naar Microsoft Fabric . Vanuit deze enkele actie wordt een Lakehouse gemaakt in Fabric en worden snelkoppelingen automatisch gegenereerd voor elke tabel in de Dataverse-omgeving. Zie De directe integratie van Dataverse met Microsoft Fabric voor meer informatie.
Snelkoppelingen maken via Fabric
Fabric-gebruikers kunnen ook snelkoppelingen maken naar Dataverse. Vanuit de UX voor snelkoppelingen maken kunnen gebruikers Dataverse selecteren, hun omgevings-URL opgeven en door de beschikbare tabellen bladeren. Met deze ervaring kunnen gebruikers selectief kiezen welke tabellen in Fabric moeten worden opgenomen in plaats van alle tabellen in te voeren.
Notitie
Dataverse-tabellen moeten eerst beschikbaar zijn in Dataverse Managed Lake voordat ze zichtbaar zijn in de UX voor het maken van snelkoppelingen voor fabric. Als uw tabellen niet zichtbaar zijn in Fabric, gebruikt u de functie Koppeling naar Microsoft Fabric vanuit de PowerApps Maker-portal.
Autorisatie
Dataverse-snelkoppelingen maken gebruik van een gedelegeerd autorisatiemodel. In dit model geeft de maker van de snelkoppeling een referentie op voor de Dataverse-snelkoppeling en wordt alle toegang tot die snelkoppeling geautoriseerd met behulp van die referentie. Het ondersteunde gedelegeerde referentietype is organisatieaccount (OAuth2). Het organisatieaccount moet de systeembeheerder machtigen om toegang te krijgen tot gegevens in Dataverse Managed Lake.
Notitie
Service-principals die zijn toegevoegd aan de infrastructuurwerkruimte, moeten de beheerdersrol hebben om de Dataverse-snelkoppeling te autoriseren.
Caching
Caching van snelkoppelingen kan worden gebruikt om de kosten voor uitgaand verkeer te verlagen die zijn gekoppeld aan toegang tot gegevens in meerdere clouds. Wanneer bestanden worden gelezen via een externe snelkoppeling, worden de bestanden opgeslagen in een cache voor de infrastructuurwerkruimte. Volgende leesaanvragen worden verwerkt vanuit de cache in plaats van de externe opslagprovider. Bestanden in de cache hebben een bewaarperiode van 24 uur. Telkens wanneer het bestand wordt geopend, wordt de bewaarperiode opnieuw ingesteld. Als het bestand in de externe opslagprovider recenter is dan het bestand in de cache, wordt de aanvraag geleverd bij de externe opslagprovider en wordt het bijgewerkte bestand opgeslagen in de cache. Als een bestand langer dan 24 uur niet is geopend, wordt het uit de cache verwijderd. Afzonderlijke bestanden die groter zijn dan 1 GB, worden niet in de cache opgeslagen.
Notitie
Caching van snelkoppelingen wordt momenteel alleen ondersteund voor compatibele GCS-, S3- en S3-snelkoppelingen.
Als u caching voor snelkoppelingen wilt inschakelen, opent u het deelvenster Werkruimte-instellingen . Kies het tabblad OneLake . Schakel de cache-instelling in op Aan en selecteer Opslaan.
Hoe snelkoppelingen gebruikmaken van cloudverbindingen
ADLS- en S3-snelkoppelingsautorisatie wordt gedelegeerd met behulp van cloudverbindingen. Wanneer u een nieuwe ADLS- of S3-snelkoppeling maakt, maakt u een nieuwe verbinding of selecteert u een bestaande verbinding voor de gegevensbron. Het instellen van een verbinding voor een snelkoppeling is een bindingsbewerking. Alleen gebruikers met machtigingen voor de verbinding kunnen de bindingsbewerking uitvoeren. Als u geen machtigingen voor de verbinding hebt, kunt u geen nieuwe snelkoppelingen maken met die verbinding.
Snelkoppelingsbeveiliging
Voor snelkoppelingen zijn bepaalde machtigingen vereist om te beheren en te gebruiken. OneLake-snelkoppelingsbeveiliging bekijkt de machtigingen die nodig zijn om snelkoppelingen te maken en toegang te krijgen tot gegevens.
Hoe verwerken snelkoppelingen verwijderingen?
Snelkoppelingen voeren trapsgewijze verwijderingen niet uit. Wanneer u een verwijderbewerking uitvoert op een snelkoppeling, verwijdert u alleen het snelkoppelingsobject. De gegevens in het snelkoppelingsdoel blijven ongewijzigd. Als u echter een verwijderbewerking uitvoert op een bestand of map binnen een snelkoppeling en u machtigingen hebt in het snelkoppelingsdoel om de verwijderbewerking uit te voeren, worden de bestanden en/of mappen in het doel verwijderd. Het volgende voorbeeld illustreert dit.
Voorbeeld verwijderen
Gebruiker A heeft een lakehouse met het volgende pad erin:
MyLakehouse\Files\MyShortcut\Foo\Bar
MyShortcut is een snelkoppeling die verwijst naar een ADLS Gen2-account dat de Foo\Bar-mappen bevat.
Een snelkoppelingsobject verwijderen
Gebruiker A voert een verwijderbewerking uit op het volgende pad:
MyLakehouse\Files\MyShortcut
In dit geval wordt MyShortcut verwijderd uit het lakehouse. Snelkoppelingen voeren geen trapsgewijze verwijderingen uit, daarom blijven de bestanden en mappen in het ADLS Gen2-account Foo\Bar ongewijzigd.
Inhoud verwijderen waarnaar wordt verwezen door een snelkoppeling
Gebruiker A voert een verwijderbewerking uit op het volgende pad:
MyLakehouse\Files\MyShortcut\Foo\Bar
Als gebruiker A schrijfmachtigingen heeft in het ADLS Gen2-account, wordt de adreslijst van de balk verwijderd uit het ADLS Gen2-account.
Weergave voor gegevensherkomst van werkruimte
Wanneer u snelkoppelingen maakt tussen meerdere Fabric-items in een werkruimte, kunt u de snelkoppelingsrelaties visualiseren via de herkomstweergave van de werkruimte. Selecteer de knop Herkomstweergave ( ) in de rechterbovenhoek van de Werkruimteverkenner.
Notitie
De herkomstweergave is gericht op één werkruimte. Snelkoppelingen naar locaties buiten de geselecteerde werkruimte worden niet weergegeven.
Beperkingen en overwegingen
- Het maximum aantal snelkoppelingen per Fabric-item is 100.000. In deze context verwijst het termitem naar: apps, lakehouses, magazijnen, rapporten en meer.
- Het maximum aantal sneltoetsen in één OneLake-pad is 10.
- Het maximum aantal directe snelkoppelingen naar snelkoppelingen is 5.
- ADLS- en S3-snelkoppelingsdoelpaden kunnen geen gereserveerde tekens bevatten uit RFC 3986 sectie 2.2. Zie RFC 3968 sectie 2.3 voor toegestane tekens.
- OneLake-snelkoppelingsnamen, bovenliggende paden en doelpaden mogen geen %- of +-tekens bevatten.
- Sneltoetsen bieden geen ondersteuning voor niet-Latijnse tekens.
- Blob-API kopiëren wordt niet ondersteund voor ADLS- of S3-snelkoppelingen.
- De kopieerfunctie werkt niet op snelkoppelingen die rechtstreeks naar ADLS-containers verwijzen. Het is raadzaam om ADLS-snelkoppelingen te maken naar een map die ten minste één niveau lager is dan een container.
- Er kunnen geen extra snelkoppelingen worden gemaakt in ADLS- of S3-snelkoppelingen.
- Herkomst voor snelkoppelingen naar datawarehouses en Semantische modellen is momenteel niet beschikbaar.
- Het kan tot een minuut duren voordat de Table-API nieuwe snelkoppelingen herkent.