Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Op deze pagina maakt u kennis met OpenSharing in Azure Databricks, het platform voor veilig delen van gegevens waarmee u gegevens en AI-assets kunt delen in Azure Databricks met gebruikers buiten uw organisatie, ongeacht of ze Azure Databricks gebruiken. OpenSharing is ook de basis voor Databricks Marketplace, een open forum voor het uitwisselen van gegevensproducten en Clean Rooms, een veilige en privacybeschermingsomgeving waar meerdere partijen kunnen samenwerken aan gevoelige bedrijfsgegevens.
OpenSharing is ook beschikbaar als een opensource-project dat u kunt gebruiken om Delta-tabellen van andere platforms te delen.
Hoe werkt OpenSharing?
OpenSharing is een open protocol dat door Databricks is ontwikkeld voor het veilig delen van gegevens met andere organisaties. Het werkt ongeacht de computerplatforms die door die organisaties worden gebruikt.
Er zijn een aantal manieren om gegevens te delen met behulp van OpenSharing:
Het Databricks-to-Databricks-protocol voor delen, waarmee u gegevens en AI-assets kunt delen vanuit uw werkruimte met Unity Catalog-functionaliteit, met gebruikers die ook toegang hebben tot een Databricks-werkruimte met Unity Catalog.
Deze benadering maakt gebruik van de OpenSharing-server die is ingebouwd in Azure Databricks. Het ondersteunt enkele OpenSharing-functies die niet worden ondersteund in de andere protocollen, waaronder delen van notebooks, Unity Catalog-volume delen, Unity Catalog AI-model delen, Unity Catalog-gegevensbeheer, controle en gebruikstracering voor zowel providers als ontvangers. De integratie met Unity Catalog vereenvoudigt het instellen en beheren voor zowel providers als ontvangers en verbetert de prestaties.
Zie Wat is het OpenSharing Databricks-to-Databricks-protocol?
Het Databricks-to-Open-protocol voor delen, waarmee u tabelgegevens kunt delen die u beheert in een Databricks-werkruimte met Unity Catalog en gebruikers op elk computerplatform.
Deze benadering maakt gebruik van de OpenSharing-server die is ingebouwd in Azure Databricks en is handig wanneer u gegevens beheert met behulp van Unity Catalog en deze wilt delen met gebruikers die geen Databricks gebruiken of geen toegang hebben tot een Databricks-werkruimte met Unity Catalog. De integratie met Unity Catalog aan de providerzijde vereenvoudigt het instellen en beheren van providers.
Zie Wat is het OpenSharing Databricks-to-Open-sharing-protocol?
Een door de klant beheerde implementatie van de opensource OpenSharing-server, waarmee u kunt delen van elk platform naar elk platform, ongeacht of Databricks of niet.
De Azure Databricks documentatie bevat geen instructies voor het instellen van uw eigen OpenSharing-server. Zie het open source project.
De BDC-connector (SAP Business Data Cloud) voor Azure Databricks, waarmee u gegevens kunt delen tussen uw werkruimte met Unity Catalog en een SAP BDC-account.
Deze benadering maakt gebruik van de SAP BDC-connector, die Gebruikmaakt van OpenSharing voor live, zero-copy-toegang tot SAP BDC-gegevensproducten.
Aandelen, providers en ontvangers
De belangrijkste concepten achter OpenSharing in Azure Databricks zijn shares, providers en ontvangers.
Wat is een aandeel?
In OpenSharing is een share een alleen-leesbare verzameling van tabellen en tabelpartities die een aanbieder wil delen met een of meer ontvangers. Als uw ontvanger een Databricks-werkruimte met Unity Catalog gebruikt, kunt u ook notebookbestanden, weergaven (inclusief dynamische weergaven die de toegang beperken op rij- en kolomniveau), Unity Catalog-volumes en Unity Catalog-modellen in een share opnemen.
U kunt tabellen, streamingtabellen, beheerde Iceberg-tabellen, weergaven, gerealiseerde weergaven, volumes, modellen en notebookbestanden op elk gewenst moment toevoegen aan of verwijderen uit een share en u kunt de toegang van gegevensontvangers op elk gewenst moment toewijzen aan of intrekken.
In een Azure Databricks-werkruimte met Unity Catalog is een share een beveiligbaar object dat is geregistreerd in Unity Catalog. Als u een aandeel verwijdert uit uw Unity Catalog-metastore, verliezen alle ontvangers van dat aandeel de mogelijkheid om zich ervoor te registreren.
Zie Shares maken voor OpenSharing.
Wat is een provider?
Een provider is een entiteit die gegevens deelt met een ontvanger. Als u een provider bent en u wilt profiteren van de ingebouwde Databricks OpenSharing-server en shares en ontvangers wilt beheren met behulp van Unity Catalog, hebt u ten minste één Azure Databricks werkruimte nodig die is ingeschakeld voor Unity Catalog. U hoeft niet al uw bestaande werkruimten te migreren naar Unity Catalog. U kunt gewoon een nieuwe werkruimte met Unity Catalog maken voor uw OpenSharing-behoeften.
Als een ontvanger zich in een Databricks-werkruimte met Unity Catalog bevindt, is de provider ook een beveiligbaar object voor Unity Catalog dat de providerorganisatie vertegenwoordigt en die organisatie koppelt aan een set shares.
Wat is een ontvanger?
Een ontvanger is een entiteit die shares van een provider ontvangt. In Unity Catalog is een share een beveiligbaar object dat een organisatie vertegenwoordigt en deze koppelt aan een referentie of een beveiligde deel-ID waarmee die organisatie toegang heeft tot een of meer 'shares'.
Als gegevensleverancier kunt u meerdere ontvangers definiëren voor een bepaalde Unity Catalog-metastore, maar als u gegevens uit meerdere metastores met een bepaalde gebruiker of groep gebruikers wilt delen, moet u de ontvanger afzonderlijk definiëren voor elke metastore. Een ontvanger kan toegang hebben tot meerdere shares.
Als een provider een ontvanger verwijdert uit de Unity Catalog-metastore, verliest die ontvanger de toegang tot alle shares waartoe deze eerder toegang had.
Zie Gegevensontvangers maken voor OpenSharing (Databricks-to-Databricks sharing).
Databricks-naar-Open delen versus Databricks-naar-Databricks delen
In deze sectie worden de twee protocollen beschreven voor delen vanuit een Databricks-werkruimte die is ingeschakeld voor Unity Catalog.
Note
In deze sectie wordt ervan uitgegaan dat de provider zich in een Azure Databricks-werkruimte met Unity Catalog-functionaliteit bevindt. Zie het open source project voor meer informatie over het instellen van een opensource OpenSharing-server om te delen vanuit een niet-Databricks-platform of een niet-Unity Catalog-werkruimte.
De manier waarop een provider OpenSharing gebruikt in Azure Databricks is afhankelijk van met wie ze gegevens delen:
- Met openen delen kunt u gegevens delen met elke gebruiker, ongeacht of ze toegang hebben tot Azure Databricks.
- Met het delen van Databricks naar Databricks kunt u gegevens delen met Azure Databricks-gebruikers waarvan de werkruimte is gekoppeld aan een Unity Catalog-metastore die verschilt van die van u. Databricks-to-Databricks ondersteunt ook het delen van notebooks, volumes en modellen, wat niet beschikbaar is bij Databricks-to-Open-sharing.
Wat is OpenSharing met open source?
Als u gegevens wilt delen met gebruikers buiten uw Azure Databricks werkruimte, ongeacht of ze Databricks gebruiken, kunt u OpenSharing gebruiken om uw gegevens veilig te delen. Als gegevensprovider beheert u verificatie met de ontvanger voor delen met behulp van een van de volgende methoden:
- U genereert een bearer-token met een lange levensduur en deelt het veilig met de ontvanger. Ze gebruiken het token om te verifiëren en leestoegang te krijgen tot de tabellen die u hebt opgenomen in de shares waaraan u ze toegang hebt gegeven.
- U gebruikt Open ID Connect (OIDC)-federatie, waarbij u Databricks OAuth-tokens met korte levensduur verleent aan de ontvanger in ruil voor JWT-tokens die de id-provider (IdP) van de ontvanger doorgeeft aan Databricks.
Ontvangers hebben toegang tot de gedeelde gegevens met behulp van veel computerhulpprogramma's en platforms, waaronder:
- Azure Databricks
- Apache Spark
- Pandas
- Power BI
Zie de OpenSharing-documentatie voor een volledige lijst met OpenSharing-connectors en informatie over het gebruik ervan.
Zie ook Wat is het OpenSharing Databricks-to-Open-sharing-protocol?
Wat is Databricks-to-Databricks OpenSharing?
Als u gegevens wilt delen met gebruikers met een Databricks-werkruimte die is ingeschakeld voor Unity Catalog, kunt u Databricks-to-Databricks OpenSharing gebruiken. Met het delen van Databricks naar Databricks kunt u gegevens delen met gebruikers in andere Databricks-accounts, ongeacht of ze zich in AWS, Azure of GCP bevinden. Het is ook een uitstekende manier om gegevens veilig te delen in verschillende Unity Catalog-metastores in uw eigen Databricks-account. Houd er rekening mee dat u OpenSharing niet hoeft te gebruiken om gegevens te delen tussen werkruimten die zijn gekoppeld aan dezelfde Unity Catalog-metastore, omdat u in dat scenario Unity Catalog zelf kunt gebruiken om de toegang tot gegevens in werkruimten te beheren.
Een voordeel van het delen van Databricks naar Databricks is dat de ontvanger van de share geen token nodig heeft om toegang te krijgen tot de share en dat de provider geen tokens voor ontvangers hoeft te beheren. De beveiliging van de verbinding voor delen, inclusief alle identiteitsverificatie, verificatie en controle, wordt volledig beheerd via OpenSharing en het Databricks-platform. Een ander voordeel is de mogelijkheid om Databricks-notebookbestanden, Unity Catalog-volumes en Unity Catalog-modellen te delen.
Zie ook Wat is het OpenSharing Databricks-to-Databricks-protocol?
Hoe stellen providerbeheerders OpenSharing in?
Deze sectie geeft een overzicht van hoe providers OpenSharing kunnen inschakelen en delen kunnen initiëren vanuit een Unity Catalog-Azure Databricks werkruimte. Zie het open source project voor opensource OpenSharing.
Databricks-to-Databricks delen tussen Unity Catalog-metastores binnen hetzelfde account staat altijd aan. Als u een provider bent die OpenSharing in staat wil stellen om gegevens te delen met Databricks-werkruimten in andere accounts of niet-Databricks-clients, voert een Azure Databricks accountbeheerder of metastore-beheerder de volgende installatiestappen uit (op hoog niveau):
Schakel OpenSharing in voor de Unity Catalog-metastore waarmee de gegevens worden beheerd die u wilt delen.
Note
U hoeft OpenSharing niet in te schakelen voor uw metastore als u OpenSharing wilt gebruiken om alleen gegevens te delen met gebruikers in andere Unity Catalog-metastores in uw account. Het delen van metastore-naar-metastore binnen één Azure Databricks-account is standaard ingeschakeld.
Maak een share aan die data-assets bevat die in de Unity Catalog metastore zijn geregistreerd.
Als u gegevens deelt met een niet-Databricks-ontvanger (ook wel "Databricks-to-Open sharing" genoemd), kunt u tabellen opnemen in Delta-indeling. Als u van plan bent om het delen van Databricks-to-Databricks te gebruiken, kunt u ook weergaven, Unity Catalog-volumes, Unity Catalog-modellen en notebookbestanden toevoegen aan een deling.
Maak een geadresseerde.
Zie Gegevensontvangers maken voor OpenSharing (Databricks-to-Databricks sharing).
Als uw ontvanger geen Databricks-gebruiker is of geen toegang heeft tot een Databricks-werkruimte die is ingeschakeld voor Unity Catalog, moet u Databricks-to-Open-delen gebruiken. U kunt bearer-tokengebaseerde referenties genereren voor die ontvanger of OIDC-federatie gebruiken.
Als uw ontvanger toegang heeft tot een Databricks-werkruimte waar Unity Catalog is ingeschakeld, kunt u Databricks-to-Databricks deling gebruiken en zijn er geen referenties op basis van tokens vereist. U vraagt een id voor delen aan bij de ontvanger en gebruikt deze om de beveiligde verbinding tot stand te brengen.
Tip
Gebruik uzelf als testontvanger om het installatieproces uit te proberen.
Geef de ontvanger toegang tot een of meer aandelen.
Zie Toegang tot OpenSharing-datashares beheren (voor aanbieders).
Note
Deze stap kan ook worden uitgevoerd door een niet-beheerder met de
USE SHAREenUSE RECIPIENTSET SHARE PERMISSIONbevoegdheden. Raadpleeg Unity Catalog-bevoegdhedenoverzicht.Verzend de geadresseerde de informatie die ze nodig hebben om verbinding te maken met de share (alleen voor delen met Databricks-to-Open).
Voor het delen van Databricks-to-Open met bearer-tokens gebruikt u een beveiligd kanaal om de ontvanger een activeringskoppeling te sturen waarmee ze hun op tokens gebaseerde referenties kunnen downloaden. Zie Stuur de ontvanger hun verbindingsgegevens.
Voor het delen van Databricks-to-Open met behulp van OIDC-tokenfederatie verzendt u de gegenereerde portal-URL. Zie Open ID Connect -federatie (OIDC) inschakelen voor OpenSharing-ontvangers.
Voor het delen van Databricks-naar-Databricks zijn de gegevens die zijn opgenomen in de share beschikbaar in de Databricks-werkruimte van de ontvanger zodra u ze toegang verleent tot de share.
De ontvanger heeft nu toegang tot de gedeelde gegevens.
Hoe krijgen ontvangers toegang tot de gedeelde gegevens?
Ontvangers hebben toegang tot gedeelde gegevens in een alleen-lezen formaat. Gedeelde notitieblokbestanden zijn alleen voor lezen, maar ze kunnen worden gekloond en vervolgens worden gewijzigd en uitgevoerd in de werkruimte van de geadresseerde, net als elk ander notitieblok.
Beveiligde toegang is afhankelijk van het model voor delen:
Het delen van Databricks-to-Open (geadresseerde heeft geen Databricks-werkruimte ingeschakeld voor Unity Catalog) heeft twee opties:
- In de bearer-token flow geeft de ontvanger de referentie wanneer zij toegang krijgen tot de gegevens in het gewenste hulpmiddel, waaronder Apache Spark, pandas, Power BI, Databricks en nog veel meer. Zie Gegevens lezen die zijn gedeeld via OpenSharing Databricks-to-Open sharing met bearertokens.
- In het OIDC-tokenfederatieproces benadert de ontvanger of de client-app van de ontvanger de gegevens met behulp van de eigen identiteitsprovider (IdP). Zie Lees hoe gegevens worden gedeeld via Open ID Connect (OIDC)-federatie in een U2M-flow en Lees hoe gegevens worden gedeeld via Open ID Connect (OIDC)-federatie in een M2M-flow.
Databricks-to-Databricks (Unity Catalog is ingeschakeld voor de werkruimte van de ontvanger): de ontvanger krijgt toegang tot de gegevens met behulp van Databricks. Ze kunnen Unity Catalog gebruiken om andere gebruikers in hun Databricks-account toegang te verlenen en te weigeren. Zie Gegevens lezen die worden gedeeld met Databricks-to-Databricks OpenSharing (voor ontvangers).
Wanneer de gegevensprovider gegevenstabellen of -volumes in hun eigen Databricks-account bijwerken, worden de updates bijna in realtime weergegeven in het systeem van de geadresseerde. Zie Toegang tot gegevens die met u zijn gedeeld met OpenSharing (voor ontvangers) voor meer informatie over hoe u toegang krijgt tot gegevens die met u zijn gedeeld met OpenSharing.
Hoe houdt u bij wie gegevens deelt en wie toegang heeft tot gedeelde gegevens?
Gegevensproviders in Azure Databricks-werkruimten met ingeschakelde Unity Catalog kunnen auditlogboeken en systeemtabellen van Azure Databricks gebruiken om het maken en wijzigen van gedeelde gegevens en ontvangers te bewaken, evenals de activiteiten van ontvangers op gedeelde gegevens te monitoren. Zie Gegevens delen controleren en bewaken.
Gegevensontvangers die gebruikmaken van gedeelde gegevens in een Databricks-werkruimte kunnen databricks-auditlogboekregistratie en systeemtabellen gebruiken om te begrijpen wie toegang heeft tot welke gegevens. Zie Gegevens delen controleren en bewaken.
Delen van volumes
U kunt volumes delen met behulp van de Databricks-uitwisseling. Zie Volumes toevoegen aan een share (voor aanbieders) en Gegevens lezen die zijn gedeeld met Databricks-to-Databricks OpenSharing (voor ontvangers).
Modellen delen
U kunt via de Databricks-uitwisselingsflow modellen delen. Zie Modellen toevoegen aan een share (voor providers) en Gegevens lezen die zijn gedeeld met behulp van Databricks-to-Databricks OpenSharing (voor ontvangers).
Notitieboeken delen
U kunt OpenSharing gebruiken om notebookbestanden te delen via het Databricks-naar-Databricks-deelproces. Zie Notitieblokbestanden toevoegen aan een share (voor providers) en Gedeelde notitieblokken lezen (voor ontvangers).
Toegang beperken op rij- en kolomniveau bij het delen van weergaven
U kunt dynamische weergaven delen die de toegang tot bepaalde tabelgegevens beperken op basis van eigenschappen van geadresseerden. Zie Dynamische weergaven toevoegen aan een share om rijen en kolommen te filteren.
OpenSharing en streaming
OpenSharing ondersteunt Apache Spark Structured Streaming. Een provider kan een tabel delen met geschiedenis of een streamingtabel, zodat een ontvanger deze kan gebruiken als een gestructureerde streamingbron, waarbij gedeelde gegevens incrementeel met lage latentie worden verwerkt. Ontvangers kunnen ook Delta Lake Time Travel-query's uitvoeren op tabellen die zijn gedeeld met de geschiedenis.
Zie Tabellen toevoegen aan een share voor meer informatie over het delen van tabellen met de geschiedenis. Raadpleeg Een tabel opvragen met Apache Spark Structured Streaming (voor ontvangers van Databricks-naar-Databricks-sharing) of Een gedeelde tabel openen met behulp van Spark Structured Streaming (voor ontvangers van Databricks-to-Open-sharingdata) om te leren hoe u gedeelde tabellen als streamingbronnen gebruikt.
Zie Streamingtabellen toevoegen aan een share voor meer informatie over het delen van streamingtabellen.
Zie ook Structured Streaming-concepten.
Ondersteuningsmatrix voor Delta Lake-functies
OpenSharing ondersteunt de meeste Delta Lake-functies wanneer u een tabel deelt. Deze ondersteuningsmatrix geeft weer:
- Delta-functies waarvoor specifieke versies van Databricks Runtime, de opensource OpenSharing Spark-connector of de opensource OpenSharing Python-connector zijn vereist.
- Gedeeltelijk ondersteunde functies.
| Feature | Aanbieder | Databricks-ontvanger | Open source-ontvanger |
|---|---|---|---|
| Verwijderingsvectoren |
|
|
|
| Kolomtoewijzing |
|
|
|
| Uniforme indeling |
|
|
|
| V2-controlepunt | Ondersteund met beperkingen | Ondersteund met beperkingen | Ondersteund met beperkingen |
| TimestampNTZ | Supported | Databricks Runtime 14.1+ | OpenSharing Spark connector 3.3+ |
| Clusteren van vloeistoffen | Ondersteund met beperkingen | Ondersteund met beperkingen | Ondersteund met beperkingen |
Veelgestelde vragen over OpenSharing
Hieronder vindt u veelgestelde vragen over OpenSharing.
Heb ik Unity Catalog nodig om OpenSharing te gebruiken?
Nee, u hebt Unity Catalog niet nodig om (als provider) te delen of gedeelde gegevens te gebruiken (als ontvanger). Unity Catalog biedt echter voordelen zoals ondersteuning voor het delen van niet-tabellaire gegevens en AI-activa, gebruiksklare governance, eenvoud in gebruik en queryprestaties.
Providers kunnen gegevens op twee manieren delen:
Plaats de assets die u wilt delen onder Unity Catalog-beheer en deel ze met behulp van de ingebouwde Azure Databricks OpenSharing-server.
U hoeft niet alle assets te migreren naar Unity Catalog. U hebt slechts één Azure Databricks-werkruimte nodig die is ingeschakeld voor Unity Catalog om assets te beheren die u wilt delen. In sommige accounts worden nieuwe werkruimten automatisch ingeschakeld voor Unity Catalog. Zie Aan de slag met Unity Catalog.
Implementeer de Databricks-to-Open-server voor delen om gegevens te delen, zonder dat u uw Azure Databricks-account hoeft te gebruiken.
Ontvangers kunnen gegevens op twee manieren gebruiken:
Zonder een Databricks-werkruimte. Gebruik open source OpenSharing-connectors die beschikbaar zijn voor veel gegevensplatforms, waaronder Power BI, pandas en open source Apache Spark. Zie Gedeelde gegevens lezen met OpenSharing Databricks-naar-OpenSharing met bearer-tokens en het open-sourceproject OpenSharing.
In een Azure Databricks-werkruimte. Werkruimten van ontvangers hoeven niet te worden ingeschakeld voor Unity Catalog, maar er zijn voordelen op het gebied van governance, eenvoud en prestaties als ze dat zijn.
Ontvangers die deze voordelen willen, hoeven niet alle assets te migreren naar Unity Catalog. U hebt slechts één Azure Databricks-werkruimte nodig die is ingeschakeld voor Unity Catalog om assets te beheren die met u worden gedeeld. In sommige accounts worden nieuwe werkruimten automatisch ingeschakeld voor Unity Catalog. Zie Aan de slag met Unity Catalog.
Zie Gegevens lezen die zijn gedeeld met behulp van OpenSharing Databricks-to-Open Sharing met bearertokens en Gegevens lezen die zijn gedeeld met Databricks-to-Databricks OpenSharing (voor ontvangers).
Moet ik een Databricks-klant zijn om OpenSharing te kunnen gebruiken?
Nee, OpenSharing is een open protocol. U kunt niet-Databricks-gegevens delen met ontvangers op elk gegevensplatform. Providers kunnen een open OpenSharing-server configureren om te delen vanaf elk computerplatform. Ontvangers kunnen gedeelde gegevens gebruiken met behulp van open source OpenSharing-connectors voor veel gegevensproducten, waaronder Power BI, pandas en open source Spark.
Het gebruik van OpenSharing op Azure Databricks, met name delen vanuit een werkruimte met Unity Catalog-functionaliteit, heeft echter veel voordelen.
Zie de eerste vraag in deze veelgestelde vragen voor meer informatie.
Hoe worden kosten voor OpenSharing in rekening gebracht en hoe kan ik deze controleren?
Voor OpenSharing worden kosten in rekening gebracht voor het delen en raadplegen van weergaven, gematerialiseerde weergaven en streamingtabellen. Dit zijn de mogelijke bronnen van kosten voor delen:
- Rekenkosten, in rekening gebracht door Azure Databricks.
- Kosten voor opslag en netwerkoverdracht (uitgaand verkeer), in rekening gebracht door de opslagleverancier of door Azure Databricks als de provider SecureConnect gebruikt.
- Kosten van buitenlandse rekenbronnen bij het delen van vreemde schema's en tabellen.
De methode waarmee compute wordt uitgevoerd en wie hiervoor betaalt, is afhankelijk van verschillende factoren:
- Het type rekencapaciteit van geadresseerden
- Of het delen plaatsvindt binnen hetzelfde Azure Databricks-account of tussen verschillende accounts
In de volgende tabel wordt de factureringsmethode beschreven voor het delen en openen van weergaven met behulp van OpenSharing:
| Berekening van geadresseerden | Accountrelatie | Wie betaalt | SKU die wordt gebruikt voor facturering | Toegangsmethode |
|---|---|---|---|---|
| Databricks Serverless | Any | Recipient* | Serverloze oplossing van de ontvanger | Geadresseerde krijgt directe toegang tot onderliggende gegevens |
| Databricks Klassiek | Hetzelfde account | Recipient* | Klassieker van de ontvanger | Geadresseerde krijgt directe toegang tot onderliggende gegevens |
| Databricks Klassiek | Verschillend account | Recipient | Aanbieder van interactieve serverloze oplossingen | Provider voert filteren uit |
| Databricks-to-Open-connectors voor delen | Any | Aanbieder | Aanbieder van interactieve serverloze oplossingen | Provider voert filteren uit |
* Wanneer u OpenSharing met een ontvanger gebruikt met serverloze berekening in een ander account of met een ontvanger in hetzelfde account, worden er geen incrementele kosten in rekening gebracht. Dit betekent dat er geen extra kosten zijn voor het materialiseren van de gegevensasset.
Bij het delen van externe tabellen (Beta) wordt materialisatie altijd uitgevoerd en opgeslagen bij de provider. Voor buitenlandse Iceberg-tabellen wordt materialisatie uitgevoerd aan de kant van de provider bij het delen met een open ontvanger die geen Iceberg-client gebruikt. Providers kunnen extra kosten zien die worden toegeschreven aan de standaardopslag die wordt gebruikt voor gegevens materialisatie. Er zijn geen rekenkosten voor externe tabellen tijdens de Beta.
Factureringstoewijzing kan ook worden opgevraagd via de referentie voor de systeemtabel voor factureerbaar gebruik en referentie voor de geschiedenis van de OpenSharing-materialisatiesysteemtabel. Als de ontvanger betaalt voor toeschrijving, kan alleen de geadresseerde de bijbehorende record in de systeemtabel zien. Zie Voorbeeldquery's voor bijvoorbeeldqueries.
Brengt OpenSharing kosten in rekening voor uitgaand verkeer?
Voor OpenSharing binnen een regio worden geen uitgaande kosten in rekening gebracht. In tegenstelling tot andere platforms voor het delen van gegevens, vereist OpenSharing geen gegevensreplicatie. Dit model heeft veel voordelen, maar het betekent dat uw cloudleverancier kosten voor uitgaande gegevens kan in rekening brengen wanneer u gegevens deelt in clouds of regio's. Azure Databricks biedt ondersteuning voor delen vanuit Cloudflare R2, waarvoor geen uitgaande kosten in rekening worden gebracht, en biedt andere hulpprogramma's en aanbevelingen voor het bewaken en voorkomen van uitgaande kosten. Zie Kosten voor uitgaand verkeer van OpenSharing bewaken en beheren (voor providers).
Als de provider echter SecureConnect gebruikt, wordt de gegevensoverdracht gefactureerd door Azure Databricks in plaats van de cloudleverancier.
Hebben ontvangers directe toegang tot de onderliggende gegevens in gedeelde weergaven, gerealiseerde weergaven en streamingtabellen?
Voor gedeelde weergaven, gerealiseerde weergaven en streamingtabellen heeft de ontvanger van de gegevens directe toegang als een van de volgende voorwaarden waar is:
- De ontvanger maakt gebruik van serverloze berekeningen of niet-toegewezen klassieke berekeningen op hetzelfde Azure Databricks account.
- De ontvanger maakt gebruik van serverloze berekeningen in een ander Azure Databricks-account.
Anders worden gegevens gematerialiseerd en gefilterd aan de provider-zijde.
De gegevensmaterialisatie wordt opgeslagen onder de hoofdopslaglocatie van de gedeelde gegevensasset.
Bij het delen van gematerialiseerde activa verwerkt het rekenproces het verzoek door de benodigde filters toe te passen en tijdelijk cachemateriaal in de opslagcapaciteit van de aanbieder te maken. Deze gefilterde gegevens worden aan geadresseerden geleverd met behulp van vooraf ondertekende, kortstondige URL's, die veilige toegang waarborgen terwijl de toegangscontrole van provider naar ontvanger behouden blijft.
Kunnen providers de toegang tot ontvangers intrekken?
Ja, de toegang van geadresseerden kan op verzoek en op opgegeven granulariteitsniveaus worden ingetrokken. U kunt de toegang van ontvangers tot specifieke gedeelde mappen en specifieke IP-adressen weigeren, tabelgegevens voor een ontvanger filteren, ontvangers-tokens intrekken, en ontvangers volledig verwijderen. Zie Ontvangerstoegang intrekken voor een share en Gegevensontvangers maken voor OpenSharing (Databricks-to-Databricks sharing).
Is het niet onveilig om vooraf ondertekende URL's te gebruiken?
OpenSharing maakt gebruik van vooraf ondertekende URL's om tijdelijke toegang te bieden tot een bestand in objectopslag. Ze worden alleen gegeven aan ontvangers die al toegang hebben tot de gedeelde gegevens. Ze zijn veilig omdat ze kortlevend zijn en het toegangsniveau niet uitbreiden buiten wat ontvangers al hebben gekregen.
Zijn de tokens die worden gebruikt in het OpenSharing Databricks-to-Open-sharing-protocol veilig?
Omdat OpenSharing platformoverschrijdend delen mogelijk maakt, in tegenstelling tot andere beschikbare platformen voor het delen van gegevens, vereist het protocol voor delen een open token. Providers kunnen beveiliging van tokens garanderen door de levensduur van het token te configureren, netwerkbesturingselementen in te stellen en toegang op aanvraag in te schakelen. Bovendien breidt het token het toegangsniveau niet uit buiten wat de ontvangers al is verleend. Zie Beveiligingsoverwegingen voor tokens.
Als u liever geen tokens gebruikt om de toegang tot ontvangersshares te beheren, moet u Databricks-to-Databricks delen of contact opnemen met uw Databricks-accountteam voor alternatieven.
Wat is het verschil tussen Lakeflow Connect en OpenSharing?
Met OpenSharing kunt u veilig livegegevens delen tussen platforms, clouds en regio's. Databricks raadt het gebruik van beheerde connectors aan voor gegevensopname, omdat ze geschikt zijn voor grote gegevensvolumes, query's met lage latentie en API-beperkingen van derden. Mogelijk wilt u echter query's uitvoeren op uw gegevens zonder deze te verplaatsen.
Wanneer u een keuze hebt tussen beheerde connectors en OpenSharing, kiest u OpenSharing voor de volgende scenario's:
- Het beperken van gegevensduplicatie.
- Query's uitvoeren op de meest recente gegevens.
Beperkingen
Ondersteuning voor tabelindeling en functie
Indelingsvereisten:
- Tabelgegevens moeten een Delta - of beheerde Iceberg-tabelindeling hebben. U kunt Parquet-tabellen eenvoudig omzetten naar Delta en weer terug. Zie CONVERT TO DELTA.
- OpenSharing kan UniForm-tabellen alleen lezen als Delta-tabellen.
Niet-ondersteunde tabellen:
- Providers kunnen geen tabellen delen die gebruikmaken van liquide clustering met partitiefiltering.
- Providers kunnen R2-tabellen niet delen met V2-controlepunt.
- Providers kunnen tabellen niet delen met sorteringen ingeschakeld.
- Providers kunnen tabellen niet delen met rijfilters of kolommaskers.
- Providers kunnen tabellen niet delen
SHALLOW CLONE. Azure Databricks biedt geen ondersteuning voor vooraf toegewezen URL's voor Delta-logboeken die verwijzen naar absolute paden. - Providers kunnen beheerde Iceberg-tabellen niet delen met externe Iceberg-clients. Zie Beheerde Iceberg-tabellen toevoegen aan een gedeeld bestand en Delen inschakelen voor externe Iceberg-clients.
- Foreign key-beperkingen zijn niet toepasbaar op gedeelde tabellen.
Alleen Databricks-to-Databricks delen
De volgende assets kunnen alleen worden gedeeld met behulp van het Databricks-tot-Databricks-deelproces:
- Notitieblok delen. Zie Notitieblokbestanden toevoegen aan een share en gegevens lezen die worden gedeeld met Databricks-to-Databricks OpenSharing (voor ontvangers).
- Volume delen. Zie Volumes toevoegen aan een share (voor providers) en gegevens lezen die worden gedeeld met Databricks-to-Databricks OpenSharing (voor ontvangers).
- Delen van modellen. Zie Modellen toevoegen aan een share (voor providers) en gegevens lezen die worden gedeeld met Databricks-to-Databricks OpenSharing (voor ontvangers).
Views
- Deelbare weergaven moeten worden gedefinieerd in Delta-tabellen of andere deelbare weergaven. Zie Weergaven toevoegen aan een share (voor providers) en Gedeelde weergaven lezen (voor ontvangers).
Streaming
- OpenSharing biedt geen ondersteuning voor wijzigingen
responseFormattijdens het uitvoeren van een streamingbron of tijdens het opnieuw opstarten van streaming.
Metagegevens van ontvangers
- De tabellen in
information_schemaeen gedeelde catalogus weerspiegelen metagegevens die zijn opgeslagen in Unity Catalog. Deze metagegevens worden alleen bijgewerkt vanaf de provider wanneer u rechtstreeks een query op de gedeelde tabel uitvoert of een opdracht uitvoert, zoals DESCRIBE of REFRESH FOREIGN. Tot die tijd kaninformation_schemaverouderd lijken in vergelijking met de gegevens van de provider.
Middelen- en technische limieten
- Er gelden limieten voor het aantal bestanden in metagegevens dat is toegestaan voor een gedeelde tabel. Voor meer informatie, zie fout bij overschreden resourcelimiet.
- Schema's met de naam
information_schemakunnen niet worden geïmporteerd in een Unity Catalog-metastore, omdat die schemanaam is gereserveerd in Unity Catalog.
Zie ook de ondersteuningsmatrix voor Delta Lake-functies.
Trapsgewijs verwijderen om sharebeveiliging te omzeilen
Als u een hoofdobject, zoals een catalogus of schema, verwijdert, wordt een cascadeverwijdering uitgevoerd voor de onderliggende objecten, zelfs als deze onderliggende objecten zijn opgenomen in actieve gedeelten. Nadat een trapsgewijs verwijderen een asset heeft verwijderd, kunt u een asset met dezelfde naam niet opnieuw toevoegen aan de share.
Als u dit probleem wilt voorkomen, verwijdert u assets uit alle shares voordat u de bovenliggende objecten verwijdert.
Resourcequota
Azure Databricks dwingt resourcequota af voor alle OpenSharing-beveiligbare objecten. Deze quota worden vermeld in resourcelimieten. Als u verwacht deze resourcelimieten te overschrijden, neemt u contact op met uw Azure Databricks-accountteam.
U kunt uw quotumgebruik bewaken met behulp van de quota-API's voor Unity Catalog-resources. Zie Controleer uw gebruik van Unity Catalog resource quota's.