Les 6 van 7 · 40 min · Inclusief lab

Data veilig delen met OpenSharing

In deze les ga je

  • Shares, providers en recipients beschrijven als securable objects
  • Kiezen tussen de open route en de Databricks-to-Databricks-route
  • Een geminimaliseerde goldtabel voor een share ontwerpen
  • Shares beheren met eigenaarschap, review, audit en een einddatum
Ga naar de kenniscontrole

Delen is een beslissing over controle

Vroeg of laat heeft een andere organisatie je data nodig: een leverancier, een partner, een toezichthouder, een onderzoeksgroep. De oude antwoorden zijn exports, gemailde bestanden en gedeelde opslagsleutels. Elk ervan geeft een kopie weg die je niet meer kunt zien, bijwerken of intrekken.

OpenSharing is het datadelingsplatform van Databricks. De actuele documentatie gebruikt die naam. Oudere teksten, en veel bestaande code en artikelen, noemen het Delta Sharing. Lees je beide namen, dan gaat het om dezelfde deelbenadering, dus zoek op beide als je voorbeelden zoekt.

In deze les bepalen we wanneer je deelt, welke vorm van delen je gebruikt en hoe je de controle houdt nadat de data je verlaat. Marketplace-listings en clean rooms behandelen we niet uitgebreid.

Wat het is

De documentatie beschrijft OpenSharing als het veilige datadelingsplatform in Databricks om data en AI-assets te delen met mensen buiten je organisatie, of ze nu Databricks gebruiken of niet. Het is een open protocol dat ook onder Databricks Marketplace en Clean Rooms ligt.

Drie concepten dragen het model:

ConceptWat het is
ShareEen alleen-lezen verzameling tabellen en partities. Voor Unity Catalog-ontvangers kan hij ook views, volumes, modellen en notebookbestanden bevatten. Een share is een securable object
ProviderDe partij die de data deelt. De ingebouwde server gebruiken vraagt minstens één Unity Catalog-workspace
RecipientDe partij die shares ontvangt. Een recipient is ook een securable object en wordt voor elke metastore apart gedefinieerd

De provider houdt de data waar ze is. De ontvanger leest een live weergave van de gedeelde objecten, dus er is geen kopie om te mailen en de provider kan de share wijzigen of beëindigen.

Twee manieren om te delen

Databricks-to-openDatabricks-to-Databricks
Wie kan ontvangenIedereen, op elk computeplatformEen ontvanger met een Unity Catalog-workspace
Hoe de ontvanger zich authenticeertEen bearer token of OIDC-federatieGeen token nodig
Objecten die je kunt delenTabellen en partitiesMeer: notebookbestanden, volumes, modellen en metric views
Hoe de ontvanger leestApache Spark, pandas, Power BI en andere toolsKoppelt de share als catalog in de eigen workspace

Kies op de ontvanger. Een partner op een ander platform heeft de open route nodig. Een zusterbedrijf op Databricks krijgt de rijkere Databricks-to-Databricks-route, waarbij het de share als catalog koppelt. Koppelen vraagt het privilege CREATE CATALOG en het accepteren van een e-mailuitnodiging voor een Databricks-to-Databricks-share vraagt het privilege CREATE PROVIDER.

De documentatie labelt één functie als Beta: OpenSharing via e-mail, die een accountbeheerder op de Previews-pagina moet inschakelen. Er gelden beperkingen, zoals geen OIDC-federatie en geen groepen of service principals als ontvanger. Behandel het als pilot totdat de status verandert.

De stappen voor delen

In grote lijnen: maak de share, voeg de objecten toe, maak de recipient en geef de recipient toegang tot de share.

Illustratie

sql
-- Schematisch overzicht. Controleer de exacte syntaxis in de actuele OpenSharing-referentie.
CREATE SHARE prd_finance_invoices_for_partner;
 
ALTER SHARE prd_finance_invoices_for_partner
  ADD TABLE prd_finance.gold.invoices_shared;     -- een samengestelde tabel, nooit ruwe data
 
CREATE RECIPIENT partner_acme;                    -- open recipient: je stuurt een activatielink
 
GRANT SELECT ON SHARE prd_finance_invoices_for_partner TO RECIPIENT partner_acme;

De documentatie noemt dat CREATE RECIPIENT delen via e-mail niet ondersteunt. Volg de actuele referentie voor de exacte stroom die bij jouw ontvangertype past.

Deel een samengesteld object

De belangrijkste ontwerpregel: deel een voor het doel gebouwde goldtabel of view, nooit je werktabellen. De ontvanger ziet precies wat in de share zit en niets anders wordt blootgesteld, dus de share is ook je privacycontrole.

  • Maak een eigen schema, bijvoorbeeld gold_share, met per ontvangerdoel een tabel.
  • Neem alleen de kolommen op die de ontvanger nodig heeft. Pas dataminimalisatie toe: heeft de partner een status en een datum nodig, deel dan geen namen.
  • Pseudonimiseer of aggregeer als het doel dat toelaat.
  • Documenteer per share het doel, de grondslag of overeenkomst, de eigenaar en de einddatum.

Rijfilters, maskers en delen

Les 4 noemde een beperking die hier telt: de documentatie zegt dat tabellen met rijfilters of kolommaskers op tabelniveau niet via OpenSharing kunnen worden gedeeld. Probeer geen beschermde tabel te delen met het filter als vangnet. Bouw in plaats daarvan een fysieke, geminimaliseerde tabel voor de share in een pipelinestap die dezelfde regels toepast en deel die tabel. Je krijgt ook een tabel die je kunt testen en versioneren.

Governance van shares

Omdat shares en recipients securable objects zijn, geldt de standaard governance:

  • Eigenaarschap door een groep. De platformgroep voor datadeling is eigenaar van shares en recipients.
  • Least privilege op wie mag delen. Shares en recipients maken en er rechten op geven is een geprivilegieerde actie. Zet het achter een groep en review het.
  • Review elk kwartaal. Lijst actieve shares en recipients, eigenaren en laatste toegang op. Beëindig shares die niemand gebruikt.
  • Audit. Deelgebeurtenissen verschijnen in de auditlogs uit les 5. Alarmeer bij een nieuwe recipient en bij een nieuw object in een bestaande share.
  • Eerst afspraken. Voor een share bestaat, is er een overeenkomst: doel, toegestaan gebruik, bewaartermijn en een contactpersoon.

Definieer shares en recipients in Terraform, net als rechten, zodat wijzigingen door een pull request gaan (les 7).

Beveiliging van het credential

Een ontvanger op basis van een token krijgt een activatielink en een credentialbestand. Behandel het als geheim.

  • Stuur het via een kanaal dat de ontvanger beheert, niet via een gedeelde mailbox.
  • Stel een vervaldatum in en roteer het.
  • Lekt een credential, trek het dan in en geef een nieuw uit. De share en de data blijven zoals ze zijn.
  • Geef de voorkeur aan OIDC-federatie boven bearer tokens waar het platform van de ontvanger dat ondersteunt.

Regio's en dataresidentie

Controleer waar de data heen mag. Houd voor EU-klanten persoonsgegevens in de afgesproken regio en bevestig dat de leeslocatie van de ontvanger onder de overeenkomst acceptabel is. Een live share voorkomt een kopie, wat helpt, maar data over een grens lezen is nog steeds een doorgifte.

Veelgemaakte fouten

  • Werktabellen delen. Deel een samengestelde tabel.
  • Een filter in plaats van een geminimaliseerde tabel. Filters en maskers blokkeren delen en een kopie is sowieso netter.
  • Geen einddatum. Shares overleven projecten.
  • Gelekte credentials via e-mail. Gebruik een beheerd kanaal en een vervaldatum.
  • Delen voor de overeenkomst is getekend.

Samenvatting

Gebruik OpenSharing voor gecontroleerde, live toegang tot samengestelde data. Kies de open route of de Databricks-to-Databricks-route op basis van de ontvanger. Deel een geminimaliseerde goldtabel, beheer shares en recipients als securable objects, definieer ze in code en audit ze.

Volgende les: het laatste onderdeel, governance als code met Terraform.

Het idee in één schema

Van samengestelde tabel naar ontvanger

  1. Samengestelde goldtabelGeminimaliseerde kolommen
  2. Share
  3. RecipientOpen of Databricks-to-Databricks
  4. Audit en review
  5. Einddatum

Kenniscontrole

Beantwoord elke vraag. Je ziet meteen de reden achter elk antwoord.

0 van 3 beantwoord

  1. Vraag 1 van 3Welke naam gebruikt de actuele Databricks-documentatie voor het deelplatform?
  2. Vraag 2 van 3Wat moet je delen?
  3. Vraag 3 van 3Hoe behandel je de status van OpenSharing via e-mail?

Praktisch lab

Doel. Schrijf een deelontwerp en een minimalisatiecontrole voor één externe partner.

Waar je het draait

Lokale Python Draai dit lab op je eigen computer met Python 3.10 of nieuwer in een virtuele omgeving.

Handleiding voor Python-omgevingen

Stappen

  1. Kies een partnerscenario: een transportleverancier heeft leverstatus en datum nodig voor orders die hij afhandelt.
  2. Schrijf SHARE.md met doel, overeenkomst, eigenaar, einddatum, recipienttype en route (open of Databricks-to-Databricks) met een reden.
  3. Maak columns.csv met alle kolommen van de bron-goldtabel met een classificatie (nodig, persoonlijk, intern).
  4. Schrijf een Python-controle die faalt als de kolomlijst van de share een kolom bevat die niet nodig is.
  5. Voeg de reviewchecklist uit de les toe als sectie: kwartaalreview, auditalert, credentialrotatie.

Verwacht resultaat

Een volledig ontwerpdocument en een controle die de geminimaliseerde kolomlijst laat slagen en een lijst met een toegevoegde persoonlijke kolom laat falen.

Verdiepen

Officiële documentatie en aanbevolen cursussen van de aanbieders.

Bronnen

Laatst gecontroleerd 2026-11-11

We controleren elke bron aan de hand van de officiële documentatie. Producten veranderen, dus bevestig details daar voordat je bouwt.