Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Auf dieser Seite wird die Delta-Freigabe in Azure Databricks eingeführt, die sichere Datenfreigabeplattform, mit der Sie Daten und KI-Ressourcen in Azure Databricks für Benutzer außerhalb Ihrer Organisation freigeben können, unabhängig davon, ob sie Azure Databricks verwenden. Delta Sharing ist auch die Basis für Databricks Marketplace, ein offenes Forum für den Austausch von Datenprodukten und Clean Rooms, eine sichere und datenschutzgeschützte Umgebung, in der mehrere Parteien an vertraulichen Unternehmensdaten zusammenarbeiten können.
Die Delta-Freigabe ist auch als Open-Source-Projekt verfügbar, mit dem Sie Delta-Tabellen von anderen Plattformen freigeben können.
Wie funktioniert Delta Sharing?
Delta Sharing ist ein von Databricks entwickeltes offenes Protokoll für eine sichere Datenfreigabe für andere Organisationen, unabhängig von den verwendeten Computingplattformen.
Es gibt einige Möglichkeiten zum Freigeben von Daten mithilfe der Delta-Freigabe:
Das Databricks-to-Databricks-Freigabeprotokoll, mit dem Sie Daten und KI-Ressourcen aus Ihrem Unity-Katalog-fähigen Arbeitsbereich für Benutzer freigeben können, die auch Zugriff auf einen Unity-Katalogfähigen Databricks-Arbeitsbereich haben.
Bei diesem Ansatz wird der Delta-Freigabeserver verwendet, der in Azure Databricks integriert ist. Es unterstützt einige Delta-Sharing-Funktionen, die in den anderen Protokollen nicht unterstützt werden, einschließlich Notizbuchfreigabe, Unity Catalog Volumenfreigabe, Unity Catalog AI-Modellfreigabe, Unity Catalog Data Governance, Auditierung und Verfolgung der Nutzung für Anbieter und Empfänger. Die Integration in Unity Catalog vereinfacht die Einrichtung und Governance für Anbieter und Empfänger und verbessert die Leistung.
Siehe Freigeben von Daten mithilfe des Delta Sharing Databricks-to-Databricks-Protokolls (für Anbieter).
Das Databricks offene Freigabeprotokoll, mit dem Sie tabellarische Daten freigeben können, die Sie in einem Unity-Katalog-fähigen Databricks-Arbeitsbereich für Benutzer auf jeder Computerplattform verwalten.
Dieser Ansatz verwendet den Delta-Freigabeserver, der in Azure Databricks integriert ist und nützlich ist, wenn Sie Daten mithilfe von Unity Catalog verwalten und mit Benutzern teilen möchten, die Databricks nicht verwenden oder keinen Zugriff auf einen Unity-Katalog-fähigen Databricks-Arbeitsbereich haben. Die Integration mit Dem Unity-Katalog auf der Anbieterseite vereinfacht die Einrichtung und Governance für Anbieter.
Siehe Freigeben von Daten mithilfe des offenen Delta Sharing-Protokolls (für Anbieter).
Eine vom Kunden verwaltete Implementierung des Open-Source-Delta-Freigabeservers, mit dem Sie von jeder Plattform auf eine beliebige Plattform freigeben können, ganz gleich, ob Databricks oder nicht.
Die Dokumentation zu Azure Databricks enthält keine Anweisungen zum Einrichten Ihres eigenen Delta-Freigabeservers. Siehe github.com/delta-io/delta-sharing.
Der SAP Business Data Cloud (BDC)-Connector für Azure Databricks, mit dem Sie Daten zwischen Ihrem Unity Catalog-fähigen Arbeitsbereich und einem SAP BDC-Konto freigeben können.
Bei diesem Ansatz wird der SAP BDC Connector verwendet, der delta Sharing für Live-, Zero-Copy-Zugriff auf SAP BDC-Datenprodukte nutzt.
Sehen Sie sich an, was ist der SAP BDC Connector für Azure Databricks?.
Aktien, Anbieter und Empfänger
Die primären Konzepte, die der Delta-Freigabe in Azure Databricks zugrunde liegen, sind Freigaben, Anbieter und Empfänger.
Was ist eine Freigabe?
In Delta Sharing ist eine Freigabe eine schreibgeschützte Sammlung von Tabellen und Tabellenpartitionen, die ein Anbieter mit einem oder mehreren Empfängern teilen möchte. Wenn Ihr Empfänger einen Mit Unity-Katalog aktivierten Databricks-Arbeitsbereich verwendet, können Sie auch Notizbuchdateien, Ansichten (einschließlich dynamischer Ansichten, die den Zugriff auf Zeilen- und Spaltenebene einschränken), Unity-Katalogvolumes und Unity-Katalogmodelle in einer Freigabe einschließen.
Sie können Tabellen, Streamingtabellen, verwaltete Iceberg-Tabellen, Ansichten, materialisierte Ansichten, Volumes, Modelle und Notizbuchdateien jederzeit aus einer Freigabe hinzufügen oder entfernen, und Sie können datenempfängerzugriff auf eine Freigabe jederzeit zuweisen oder widerrufen.
In einem Unity Catalog-fähigen Azure Databricks-Arbeitsbereich ist eine Freigabe ein sicherungsfähiges Objekt, das in Unity Catalog registriert ist. Wenn Sie eine Freigabe aus Ihrem Unity Catalog-Metastore entfernen, verlieren alle Empfänger dieser Freigabe den Zugriff darauf.
Weitere Informationen finden Sie unter Erstellen und Verwalten von Freigaben für Delta Sharing.
Was ist ein Anbieter?
Ein Anbieter ist eine Entität, die Daten mit einem Empfänger teilt. Wenn Sie ein Anbieter sind und den integrierten Databricks Delta Sharing-Server nutzen und Freigaben und Empfänger mithilfe des Unity-Katalogs verwalten möchten, benötigen Sie mindestens einen Azure Databricks-Arbeitsbereich, der für Unity-Katalog aktiviert ist. Sie müssen nicht alle vorhandenen Arbeitsbereiche in den Unity-Katalog migrieren. Sie können einfach einen neuen Unity Catalog-fähigen Arbeitsbereich für Ihre Delta Sharing-Anforderungen erstellen.
Wenn sich ein Empfänger in einem Databricks-Arbeitsbereich mit Unity Catalog-Unterstützung befindet, ist der Anbieter ebenfalls ein sicherungsfähiges Unity Catalog-Objekt, das die Anbieterorganisation darstellt und dieser Organisation eine Reihe von Freigaben zuordnet.
Was ist ein Empfänger?
Ein Empfänger ist eine Entität, die Aktien von einem Anbieter erhält. In Unity Catalog ist eine Freigabe ein sicherungsfähiges Objekt, das eine Organisation darstellt und sie mit Anmeldeinformationen oder einem Bezeichner für sichere Freigaben verknüpft, die dieser Organisation den Zugriff auf eine oder mehrere Freigaben ermöglichen.
Als Datenanbieter (Benutzer, der Daten freigibt) können Sie mehrere Empfänger für jeden beliebigen Unity Catalog-Metastore definieren. Wenn Sie jedoch Daten aus mehreren Metastores für einen bestimmten Benutzer oder eine bestimmte Benutzergruppe freigeben möchten, müssen Sie den Empfänger für jeden Metastore separat definieren. Ein Empfänger kann Zugriff auf mehrere Freigaben haben.
Wenn ein Anbieter einen Empfänger aus seinem Unity Catalog-Metastore löscht, verliert dieser Empfänger den Zugriff auf alle Freigaben, auf die er zuvor zugreifen konnte.
Weitere Informationen finden Sie unter Erstellen und Verwalten von Datenempfängern für Delta Sharing (Databricks-zu-Databricks-Freigabe).
Offene Freigabe im Vergleich zur Databricks-zu-Databricks-Freigabe
In diesem Abschnitt werden die beiden Protokolle für die Freigabe aus einem Unity Catalog-fähigen Databricks-Arbeitsbereich beschrieben.
Note
In diesem Abschnitt wird davon ausgegangen, dass sich der Anbieter in einem Azure Databricks-Arbeitsbereich mit Unity-Katalog befindet. Weitere Informationen zum Einrichten eines Open-Source-Delta-Freigabeservers für die Freigabe von einer anderen Plattform als Databricks oder einem anderen Arbeitsbereich als Unity Catalog finden Sie unter github.com/delta-io/delta-sharing.
Die Art und Weise, wie ein Anbieter Delta Sharing in Azure Databricks verwendet, hängt davon ab, mit wem er Daten teilt:
- Mit einer offenen Freigabe können Sie Daten für jeden Benutzer freigeben, unabhängig davon, ob dieser Zugriff auf Azure Databricks hat oder nicht.
- Mit der Databricks-to-Databricks-Freigabe können Sie Daten für Azure Databricks-Benutzer freigeben, deren Arbeitsbereich einem Unity Catalog-Metastore zugeordnet ist, der sich von Ihrem unterscheidet. Databricks-zu-Databricks unterstützt auch die Notebook-, Volume- und Modellfreigabe, die bei einer offenen Freigabe nicht verfügbar ist.
Was ist die offene Freigabe von Delta Sharing?
Sie können die offene Freigabe von Delta Sharing verwenden, wenn Sie Daten für Benutzer außerhalb Ihres Azure Databricks-Arbeitsbereichs sicher freigeben möchten – unabhängig davon, ob diese Benutzer Databricks verwenden oder nicht. Als Datenanbieter verwalten Sie die Authentifizierung mit dem Freigabeempfänger mittels einer der folgenden Methoden:
- Sie generieren ein langlebiges Bearertoken und teilen es sicher mit dem Empfänger. Dieser verwendet das Token, um sich zu authentifizieren und Lesezugriff auf die Tabellen zu erhalten, die Sie in die Freigaben eingefügt haben, auf die Sie dem Empfänger Zugriff gewährt haben.
- Sie verwenden die Open ID Connect (OIDC)-Föderation und gewähren dem Empfänger im Austausch für JWT-Token, die der IdP des Empfängers an Databricks übergibt, kurzlebige OAuth-Token von Databricks.
Empfänger können mithilfe vieler Computertools und Plattformen auf die freigegebenen Daten zugreifen, darunter:
- Azure Databricks
- Apache Spark
- Pandas
- Power BI
Eine vollständige Liste der Delta Sharing-Schnittstellen und Informationen zur Verwendung finden Sie in der Delta Sharing-Dokumentation.
Siehe auch Freigeben von Daten mithilfe des offenen Freigabeprotokolls "Delta Sharing" (für Anbieter).
Was ist die Databricks-zu-Databricks-Freigabe von Delta Sharing?
Wenn Sie Daten für Benutzer freigeben möchten, die über einen Databricks-Arbeitsbereich verfügen, der für Unity-Katalog aktiviert ist, können Sie die Delta-Freigabe von Databricks-to-Databricks verwenden. Mit der Databricks-zu-Databricks-Freigabe können Sie Daten für Benutzer in anderen Databricks-Konten freigeben, unabhängig davon, ob sie sich in AWS, Azure oder GCP befinden. Es ist auch eine hervorragende Möglichkeit, Daten in verschiedenen Unity-Katalog-Metastores in Ihrem eigenen Databricks-Konto sicher freizugeben. Beachten Sie, dass die Delta-Freigabe nicht erforderlich ist, um Daten zwischen Arbeitsbereichen freizugeben, die mit demselben Unity Catalog-Metaspeicher verbunden sind, da Sie in diesem Szenario Unity-Katalog selbst verwenden können, um den Zugriff auf Daten über Arbeitsbereiche hinweg zu verwalten.
Ein Vorteil der Databricks-to-Databricks-Freigabe besteht darin, dass der Freigabeempfänger kein Token benötigt, um auf die Freigabe zuzugreifen, und der Anbieter muss keine Empfängertoken verwalten. Die Sicherheit der Freigabeverbindung, einschließlich sämtlicher Vorgänge zur Überprüfung, Authentifizierung und Überwachung der Identität, wird vollständig über Delta Sharing und die Databricks-Plattform verwaltet. Ein weiterer Vorteil ist die Möglichkeit, Databricks-Notizbuchdateien, Unity-Katalogvolumes und Unity-Katalogmodelle zu teilen.
Siehe auch Freigeben von Daten mithilfe des Delta Sharing Databricks-to-Databricks-Protokolls (für Anbieter).
Wie richten Anbieteradmins Delta Sharing ein?
Dieser Abschnitt enthält eine Übersicht darüber, wie Anbieter die Delta-Freigabe aktivieren und die Freigabe über einen Azure Databricks-Arbeitsbereich mit Unity-Katalog initiieren können. Informationen zu Open-Source-Delta Sharing finden Sie unter github.com/delta-io/delta-sharing.
Die Databricks-zu-Databricks-Freigabe zwischen Unity Catalog-Metastores im selben Konto ist immer aktiviert. Wenn Sie als Anbieter Delta Sharing aktivieren möchten, um Daten mit Databricks-Arbeitsbereichen in anderen Konten oder Clients außerhalb von Databricks zu teilen, führen Azure Databricks-Kontoadministrierende oder Metastore-Administrierende die folgenden Einrichtungsschritte durch (auf hoher Ebene):
Aktivieren Sie die Delta-Freigabe für den Unity-Katalog-Metaspeicher, der die Daten verwaltet, die Sie freigeben möchten.
Note
Sie müssen die Delta-Freigabe auf Ihrem Metastore nicht aktivieren, wenn Sie die Delta-Freigabe verwenden möchten, um Daten nur für Benutzer in anderen Unity-Katalog-Metastores in Ihrem Konto freizugeben. Die Freigabe von Metastore zu Metastore innerhalb eines einzelnen Azure Databricks-Kontos ist standardmäßig aktiviert.
Weitere Informationen finden Sie unter Aktivieren von Delta Sharing für einen Metastore.
Erstellen Sie eine Freigabe, die Datenressourcen enthält, die im Unity Catalog-Metastore registriert sind.
Wenn Sie eine Freigabe für einen Empfänger ohne Databricks (als offene Freigabe bezeichnet) verwenden, können Sie Tabellen im Delta-Format einfügen. Wenn Sie planen, die Databricks-to-Databricks-Freigabe zu verwenden, können Sie einer Freigabe auch Ansichten, Unity Catalog-Volumes, Unity Catalog-Modelle und Notebookdateien hinzufügen.
Weitere Informationen finden Sie unter Erstellen und Verwalten von Freigaben für Delta Sharing.
Erstellen Sie einen Empfänger.
Weitere Informationen finden Sie unter Erstellen und Verwalten von Datenempfängern für Delta Sharing (Databricks-zu-Databricks-Freigabe).
Wenn Ihr Empfänger kein Databricks-Benutzer ist oder keinen Zugriff auf einen Databricks-Arbeitsbereich hat, der für Unity-Katalog aktiviert ist, müssen Sie die offene Freigabe verwenden. Sie können für diesen Empfänger entweder Anmeldeinformationen basierend auf Berechtigungstoken generieren oder den OIDC-Partnerverbund verwenden.
Wenn Ihr Empfänger Zugriff auf einen Databricks-Arbeitsbereich hat, der für den Unity-Katalog aktiviert ist, können Sie die Datenbricks-zu-Databricks-Freigabe verwenden, und es sind keine tokenbasierten Anmeldeinformationen erforderlich. Sie fordern einen Freigabebezeichner vom Empfänger an und verwenden ihn, um die sichere Verbindung herzustellen.
Tip
Richten Sie sich selbst als Testempfänger ein, um den Einrichtungsprozess auszuprobieren.
Gewähren Sie dem Empfänger Zugriff auf mindestens eine Freigabe.
Siehe Verwalten des Zugriffs auf Delta Sharing-Datenfreigaben (für Anbieter)
Note
Dieser Schritt kann auch von einem Nicht-Administratorbenutzer mit den
USE SHARE-,USE RECIPIENT- undSET SHARE PERMISSION-Berechtigungen ausgeführt werden. Weitere Informationen finden Sie unter Unity Catalog-Berechtigungen und sicherungsfähige Objekte.Senden Sie dem Empfänger die Informationen, die er zum Herstellen einer Verbindung mit der Freigabe benötigt (nur bei offenen Freigaben).
Verwenden Sie für das offene Teilen mithilfe von Bearer-Token einen sicheren Kanal, um dem Empfänger einen Aktivierungslink zu senden, über den er/sie seine/ihre token-basierten Anmeldeinformationen herunterladen kann. Weitere Informationen finden Sie unter Senden der Verbindungsinformationen an den Empfänger.
Senden Sie für die offene Freigabe mithilfe des OIDC-Tokenverbunds die generierte Portal-URL. Weitere Informationen finden Sie unter Verwenden des OIDC-Partnerverbunds (Open ID Connect), um die Authentifizierung für Delta Sharing-Freigaben (offenes Sharing) zu aktivieren.
Bei einer Databricks-zu-Databricks-Freigabe werden die in der Freigabe enthaltenen Daten im Databricks-Arbeitsbereich des Empfängers verfügbar, sobald Sie den Zugriff auf die Freigabe gewährt haben.
Der Empfänger kann jetzt auf die freigegebenen Daten zugreifen.
Wie greifen Empfänger auf die freigegebenen Daten zu?
Empfänger greifen auf freigegebene Datenressourcen im schreibgeschützten Format zu. Freigegebene Notebookdateien sind schreibgeschützt, können aber wie jedes andere Notebook geklont und dann geändert und im Empfängerarbeitsbereich ausgeführt werden.
Der sichere Zugriff hängt vom Freigabemodell ab:
Für die offene Freigabe (der Empfänger hat keinen Databricks-Arbeitsbereich mit Unity Catalog-Unterstützung) gibt es zwei Optionen:
- Im Bearertokenflow stellt der Empfänger die Anmeldeinformationen bereit, wenn er in einem Tool seiner Wahl auf die Daten zugreift, z. B. in Apache Spark, Pandas, Power BI, Databricks und vielen mehr. Weitere Informationen finden Sie unter Lesen von Daten, die über das Delta Sharing-Protokoll für offene Freigaben (für Empfänger) freigegeben wurden.
- Im OIDC-Tokenverbundablauf greift der Empfänger oder die Client-App des Empfängers mithilfe ihres eigenen IDP auf die Daten zu. Siehe Empfangen von Delta-Freigabefreigaben mithilfe des Open ID Connect (OIDC)-Verbunds in einem Benutzer-zu-Computer-Fluss (offene Freigabe) und Empfangen von Delta-Freigabefreigaben mithilfe eines Python-Clients und eines Open ID Connect (OIDC)-Verbunds in einem Computer-zu-Computer-Fluss (offene Freigabe)
Databricks-to-Databricks (Empfängerarbeitsbereich ist für Unity Catalog aktiviert): Der Empfänger greift mithilfe von Databricks auf die Daten zu. Sie können Unity-Katalog verwenden, um anderen Benutzern in ihrem Databricks-Konto Zugriff zu gewähren und zu verweigern. Weitere Informationen finden Sie unter Lesen von per Databricks-zu-Databricks Delta Sharing freigegebenen Daten (für Empfänger).
Wenn der Datenanbieter Datentabellen oder Volumes in seinem eigenen Databricks-Konto aktualisiert, werden die Aktualisierungen nahezu in Echtzeit im System des Empfängers angezeigt. Informationen zum Zugreifen auf Daten, die für Sie mithilfe der Delta-Freigabe freigegeben wurden, finden Sie unter Access-Daten, die für Sie mithilfe der Delta-Freigabe (für Empfänger) freigegeben wurden.
Wie können Sie nachverfolgen, wer freigegebene Daten freigibt und auf sie zugreift?
Datenanbieter auf Unity Catalog-fähigen Azure Databricks-Arbeitsbereichen können Azure Databricks Audit-Protokollierung und Systemtabellen verwenden, um die Erstellung und Änderung von Freigaben und Empfängern zu überwachen und die Empfängeraktivitäten auf Freigaben zu überwachen. Weitere Informationen unter Überwachen der Datenfreigabe.
Datenempfänger, die freigegebene Daten in einem Databricks-Arbeitsbereich verwenden, können die Datenbricks-Überwachungsprotokollierung und Systemtabellen verwenden, um zu verstehen, wer auf welche Daten zugreift. Weitere Informationen unter Überwachen der Datenfreigabe.
Freigabe von Volumes
Sie können Volumes mithilfe des Databricks-to-Databricks-Freigabeflows freigeben. Siehe Hinzufügen von Volumes zu einer Freigabe (für Anbieter) und Lesen von Daten, die mit Delta Sharing von Databricks zu Databricks freigegeben werden (für Empfänger).
Teilmodelle
Sie können Volumes mithilfe des Databricks-to-Databricks-Freigabeflows freigeben. Siehe Hinzufügen von Modellen zu einer Freigabe (für Anbieter) und Lesen von Daten, die mit Delta Sharing von Databricks zu Databricks freigegeben werden (für Empfänger).
Freigeben von Notizbüchern
Sie können Delta Sharing verwenden, um Notebookdateien mithilfe des Databricks-zu-Databricks-Freigabeflows freizugeben. Weitere Informationen finden Sie unter Hinzufügen von Notebookdateien zu einer Freigabe (für Anbieter) und Lesen freigegebener Notebooks (für Empfänger).
Einschränken des Zugriffs auf Zeilen- und Spaltenebene beim Freigeben von Ansichten
Sie können dynamische Ansichten freigeben, die den Zugriff auf bestimmte Tabellendaten basierend auf Empfängereigenschaften einschränken. Weitere Informationen finden Sie unter Hinzufügen dynamischer Ansichten zu einer Freigabe, um Zeilen und Spalten zu filtern.
Delta Sharing und Streaming
Delta Sharing unterstützt Apache Spark Structured Streaming. Ein Anbieter kann eine Tabelle mit Verlauf oder einer Streamingtabelle freigeben, sodass ein Empfänger sie als strukturierte Streamingquelle verwenden kann und freigegebene Daten inkrementell mit geringer Latenz verarbeitet. Empfänger können auch Delta Lake-Zeitreiseabfragen für Tabellen ausführen, die für den Verlauf freigegeben werden.
Informationen zum Freigeben von Tabellen für den Verlauf finden Sie unter Hinzufügen von Tabellen zu einer Freigabe. Informationen zum Verwenden freigegebener Tabellen als Streamingquellen finden Sie unter Abfragen einer Tabelle mit Apache Spark Structured Streaming (für Empfänger von Databricks-zu-Databricks-Freigaben) oder Zugreifen auf eine freigegebene Tabelle mithilfe von Spark Structured Streaming (für Empfänger offener Freigabedaten).
Informationen zum Freigeben von Streamingtabellen finden Sie unter Hinzufügen von Streamingtabellen zu einer Freigabe.
Siehe auch Strukturierte Streaming-Konzepte.
Unterstützungsmatrix für Delta Lake-Features
Delta Sharing unterstützt die meisten Delta Lake-Funktionen, wenn Sie eine Tabelle freigeben. Diese Support-Matrix listet auf:
- Delta Funktionen, die bestimmte Versionen von Databricks Runtime, den Open-Source Delta Sharing Spark Konnektor oder den Open-Source Delta Sharing Python Konnektor erfordern.
- Teilweise unterstützte Features.
| Feature | Provider | Databricks-Empfänger | Open Source-Empfänger |
|---|---|---|---|
| Vektoren löschen |
|
|
|
| Spaltenzuordnung |
|
|
|
| Einheitliches Format |
|
|
|
| V2-Prüfpunkt | Unterstützt mit Einschränkungen | Unterstützt mit Einschränkungen | Unterstützt mit Einschränkungen |
| TimestampNTZ | Supported | Databricks Runtime 14.1 und höher | Delta Sharing Spark-Connector 3.3 und höher |
| Flüssigkeitsclusterbildung | Unterstützt mit Einschränkungen | Unterstützt mit Einschränkungen | Unterstützt mit Einschränkungen |
Häufig gestellte Fragen zur Delta-Freigabe
Im Folgenden finden Sie häufig gestellte Fragen zu Delta Sharing.
Benötige ich Unity Catalog, um Delta Sharing zu verwenden?
Nein, Sie benötigen Unity Catalog nicht für die Freigabe (als Anbieter) oder die Nutzung freigegebener Daten (als Empfänger). Unity Catalog bietet jedoch Vorteile wie Unterstützung für die Freigabe von nicht tabellarischen Ressourcen und KI-Ressourcen, sofort einsatzbereite Governance, Einfachheit und Abfrageleistung.
Anbieter können Daten auf zwei Arten freigeben:
Legen Sie die Ressourcen unter der Unity-Katalogverwaltung frei, und geben Sie diese mithilfe des integrierten Azure Databricks Delta Sharing-Servers frei.
Sie müssen nicht alle Objekte in den Unity-Katalog migrieren. Sie benötigen nur einen Azure Databricks-Arbeitsbereich, der für den Unity-Katalog aktiviert ist, um Ressourcen zu verwalten, die Sie freigeben möchten. In einigen Konten werden neue Arbeitsbereiche automatisch für Unity Catalog aktiviert. Siehe Automatische Aktivierung des Unity Catalog.
Implementieren Sie den offenen Delta-Freigabeserver, um Daten freizugeben, ohne unbedingt Ihr Azure Databricks-Konto zu verwenden.
Empfänger können Daten auf zwei Arten nutzen:
Ohne Databricks-Arbeitsbereich. Verwenden Sie Open Source Delta Sharing-Connectors, die für viele Datenplattformen verfügbar sind, einschließlich Power BI, Pandas und Open Source Apache Spark. Weitere Informationen finden Sie unter Lesen von Daten, die über das Delta Sharing-Protokoll für offene Freigaben mit Bearertoken freigegeben wurden (für Empfänger) und im Open Source-Projekt für Delta Sharing.
In einem Databricks-Arbeitsbereich. Empfängerarbeitsbereiche müssen nicht für Unity Catalog aktiviert werden, dies bietet jedoch Vorteile in Bezug auf Governance, Einfachheit und Leistung.
Empfängerorganisationen, die diese Vorteile benötigen, müssen nicht alle Ressourcen in den Unity-Katalog migrieren. Sie benötigen nur einen Azure Databricks-Arbeitsbereich, der für Unity-Katalog aktiviert ist, um Ressourcen zu verwalten, die für Sie freigegeben sind. In einigen Konten werden neue Arbeitsbereiche automatisch für Unity Catalog aktiviert. Siehe Automatische Aktivierung des Unity Catalog.
Weitere Informationen finden Sie unter Lesen von Daten, die über das Delta Sharing-Protokoll für offene Freigaben mit Bearertoken freigegeben wurden (für Empfänger) und Lesen von per Databricks-zu-Databricks Delta Sharing freigegebenen Daten (für Empfänger).
Muss ich ein Databricks-Kunde sein, um Delta Sharing zu verwenden?
Nein, Die Delta-Freigabe ist ein offenes Protokoll. Sie können Nicht-Databricks-Daten für Empfänger auf jeder Beliebigen Datenplattform freigeben. Anbieter können einen offenen Delta Sharing-Server so konfigurieren, dass er von jeder Computerplattform aus freigeben kann. Empfänger können freigegebene Daten mithilfe von Open Source Delta Sharing Connectors für viele Datenprodukte nutzen, einschließlich Power BI, Pandas und Open Source Spark.
Die Verwendung der Delta-Freigabe auf Azure Databricks, insbesondere die Freigabe aus einem Unity-Katalog-fähigen Arbeitsbereich, hat jedoch viele Vorteile.
Ausführliche Informationen finden Sie in der ersten Frage in diesen häufig gestellten Fragen.
Wie kann ich die Kosten für Delta Sharing berechnen und überprüfen?
Die Kosten für Delta Sharing entstehen bei der gemeinsamen Nutzung und dem Zugriff auf Ansichten, materialisierte Ansichten und Streaming-Tabellen. Dies sind die potenziellen Kostenquellen für das Teilen:
- Von Azure Databricks berechnete Computerkosten.
- Speicher- und Netzwerkübertragungskosten (Ausgang), die vom Speicheranbieter in Rechnung gestellt werden.
- Kosten für externe Berechnungsquellen bei der Freigabe von Fremdschemas und -tabellen.
Die Methode, mit der berechnet wird und wer dafür zahlt, hängt von mehreren Faktoren ab:
- Die Art der empfangenden Datenverarbeitung
- Ob die Freigabe innerhalb desselben Azure Databricks-Kontos oder kontenübergreifend erfolgt
In der folgenden Tabelle wird die Abrechnungsmethode für die Freigabe und den Zugriff auf Ansichten mithilfe von Delta Sharing beschrieben.
| Empfängerberechnung | Kontobeziehung | Wer zahlt | SKU, die für die Abrechnung verwendet wird | Zugriffsverfahren |
|---|---|---|---|---|
| Databricks Serverless | Any | Recipient* | Serverlose Architektur des Empfängers | Empfänger erhält direkten Zugriff auf zugrunde liegende Daten |
| Databricks Classic | Gleiches Konto | Recipient* | Der Klassiker des Empfängers | Empfänger erhält direkten Zugriff auf zugrunde liegende Daten |
| Databricks Classic | Anderes Konto | Recipient | Interaktive serverlose Dienste des Anbieters | Anbieter führt Filterung durch |
| Delta Sharing Connectors öffnen | Any | Provider | Interaktive serverlose Dienste des Anbieters | Anbieter führt Filterung durch |
* Wenn Sie Delta Sharing mit einem Empfänger verwenden, der Serverless-Compute in einem anderen Konto nutzt, oder mit einem Empfänger im selben Konto, fällt keine zusätzlich Gebühr an. Dies bedeutet, dass es keine zusätzlichen Kosten für die Materialisierung der Datenressource gibt.
Beim Freigeben von Fremdtabellen (Beta) wird die Filterung immer ausgeführt und auf der Seite des Anbieters gespeichert. Anbieter sehen möglicherweise eine zusätzliche Gebühr, die dem Standardspeicher zugeordnet ist, der für die Datenmaterialisierung verwendet wird. Während der Betaversion gibt es keine Filterberechnungskosten.
Die Abrechnungszuordnung ist auch über die Systemtabellenreferenz für abrechenbare Nutzung und Systemtabellenreferenz für die materialisierte Historie von Delta Sharing abfragbar. Wenn der Empfänger für die Attribution bezahlt, kann nur der Empfänger den zugehörigen Datensatz in der Systemtabelle sehen. Beispielabfragen finden Sie unter Beispielabfragen.
Entstehen Kosten für ausgehende Delta Sharing-Daten?
Für ausgehende Delta Sharing-Daten innerhalb einer Region entstehen keine Kosten. Im Gegensatz zu anderen Datenfreigabeplattformen erfordert Delta Sharing keine Datenreplikation. Dieses Modell bietet viele Vorteile, allerdings kann Ihr Cloudanbieter möglicherweise Gebühren für ausgehende Daten erheben, wenn Sie Daten cloud- oder regionsübergreifend freigeben. Azure Databricks unterstützt die Freigabe aus Cloudflare R2, bei der keine Gebühren durch ausgehende Daten verursacht wird, und stellt weitere Tools und Empfehlungen bereit, um solche Gebühren zu überwachen und zu vermeiden. Weitere Informationen finden Sie unter Überwachen und Verwalten der Kosten für ausgehende Delta Sharing-Daten (für Anbieter).
Haben Empfänger direkten Zugriff auf die zugrunde liegenden Daten in freigegebenen Ansichten, materialisierten Ansichten und Streamingtabellen?
Für freigegebene Ansichten, Streamingtabellen und materialisierte Ansichten hat der Datenempfänger direkten Zugriff, wenn einer der folgenden Werte zutrifft:
- Der Empfänger verwendet serverloses Computing oder nicht dedizierte klassische Rechenleistung auf demselben Azure Databricks-Konto.
- Der Empfänger verwendet serverlose Berechnung für ein anderes Azure Databricks-Konto.
Andernfalls werden Daten materialisiert und auf der Seite des Anbieters gefiltert.
Die Datenmaterialisierung wird unter dem übergeordneten Speicherort des gemeinsam genutzten Assets gespeichert.
Beim Teilen materialisierter Ressourcen verarbeitet das Rechensystem die Anfrage, indem erforderliche Filter angewendet und eine temporäre materialisierte Zwischenspeicherung im Provider-Speicher erstellt wird. Diese gefilterten Daten werden empfängern mit vorsignierten kurzlebigen URLs übermittelt und stellen sicheren Zugriff sicher, während die Zugriffssteuerung des Anbieters zu Empfängern beibehalten wird.
Können Anbieter den Empfängerzugriff widerrufen?
Ja, der Empfängerzugriff kann bei Bedarf und auf bestimmten Granularitätsebenen widerrufen werden. Sie können den Empfängerzugriff auf bestimmte Freigaben und bestimmte IP-Adressen verweigern, tabellarische Daten für einen Empfänger filtern, Empfängertoken widerrufen und Empfänger vollständig löschen. Siehe Widerrufen des Empfängerzugriffs auf eine Freigabe und Erstellen und Verwalten von Datenempfängern für Delta Sharing (Databricks-zu-Databricks-Freigabe).
Ist es nicht unsicher, vorsignierte URLs zu verwenden?
Die Delta-Freigabe verwendet vorsignierte URLs, um temporären Zugriff auf eine Datei im Objektspeicher bereitzustellen. Sie werden nur Empfängern gewährt, die bereits Zugriff auf die freigegebenen Daten haben. Sie sind sicher, da sie kurzlebig sind und nicht die Zugriffsebene erweitern, die über die bereits gewährten Empfänger hinausgeht.
Werden die Token im offenen Freigabeprotokoll „Delta Sharing“ sicher verwendet?
Da Delta Sharing plattformübergreifende Freigabe ermöglicht – im Gegensatz zu anderen verfügbaren Datenfreigabeplattformen – erfordert das Freigabeprotokoll ein offenes Token. Anbieter können die Tokensicherheit sicherstellen, indem sie die Tokenlebensdauer konfigurieren, Netzwerksteuerelemente festlegen und den Zugriff bei Bedarf widerrufen. Darüber hinaus erweitert das Token nicht die Zugriffsebene, die über die bereits erteilten Empfänger hinausgeht. Siehe Sicherheitsüberlegungen für Token.
Wenn Sie Token nicht zum Verwalten des Zugriffs auf Empfängerfreigaben verwenden möchten, sollten Sie die Databricks-to-Databricks-Freigabe verwenden oder Ihr Databricks-Kontoteam für Alternativen kontaktieren.
Was ist der Unterschied zwischen Lakeflow Connect und Delta Sharing?
Mit der Delta-Freigabe können Sie Livedaten über Plattformen, Clouds und Regionen hinweg sicher freigeben. Databricks empfiehlt die Aufnahme mithilfe von verwalteten Connectors, da sie skaliert werden, um hohe Datenvolumes, Abfragen mit geringer Latenz und API-Grenzwerte von Drittanbietern zu berücksichtigen. Möglicherweise möchten Sie Ihre Daten jedoch abfragen, ohne sie zu verschieben.
Wenn Sie zwischen verwalteten Verbindungen und Delta Sharing wählen, wählen Sie Delta Sharing für die folgenden Szenarien.
- Einschränken der Datenduplizierung.
- Abfragen der neuesten möglichen Daten.
Einschränkungen
- Tabellarische Daten müssen im Delta - oder verwalteten Iceberg-Tabellenformat vorliegen. Sie können ganz einfach Parquet-Tabellen in das Delta-Format und wieder zurück konvertieren. Siehe CONVERT TO DELTA.
- Anbieter können keine Tabellen freigeben, die flüssigen Clustering und V2-Prüfpunkt mit Partitionsfilterung verwenden.
- Anbieter können R2-Tabellen nicht mit Liquid Clustering und V2-Checkpoint teilen.
- Fremdschlüsseleinschränkungen sind in freigegebenen Tabellen nicht verfügbar.
- Freigegebene Sichten müssen für Delta-Tabellen oder andere freigabefähige Sichten definiert werden. Weitere Informationen finden Sie unter Hinzufügen von Ansichten zu einer Freigabe (für Anbieter) und Lesen freigegebener Ansichten (für Empfänger).
- Die Notebookfreigabe wird nur in der Databricks-zu-Databricks-Freigabe unterstützt. Weitere Informationen finden Sie unter Hinzufügen von Notebook-Dateien zu einer Freigabe und Lesen von Daten, die mit Delta Sharing von Databricks zu Databricks freigegeben werden (für Empfänger).
- Die Freigabe von Volume wird nur in der Databricks-zu-Databricks-Freigabe unterstützt. Siehe Hinzufügen von Volumes zu einer Freigabe (für Anbieter) und Lesen von Daten, die mit Delta Sharing von Databricks zu Databricks freigegeben werden (für Empfänger).
- Die Modellfreigabe wird nur in der Databricks-zu-Databricks-Freigabe unterstützt. Siehe Hinzufügen von Modellen zu einer Freigabe (für Anbieter) und Lesen von Daten, die mit Delta Sharing von Databricks zu Databricks freigegeben werden (für Empfänger).
- Die Anzahl von Dateien in Metadaten, die für eine freigegebene Tabelle zulässig sind, ist begrenzt. Weitere Informationen finden Sie unter Fehler: Ressourcenlimit überschritten.
- Schemas mit dem Namen
information_schemakönnen nicht in einen Unity Catalog-Metastore importiert werden, da dieser Schemaname in Unity Catalog reserviert ist. - Das Freigeben von Tabellen wird von Delta Sharing
SHALLOW CLONEnicht unterstützt. Azure Databricks unterstützt nicht die Vorgabe von URLs für Delta-Protokolle, die auf absolute Pfade verweisen. - Das Freigeben von Tabellen mit aktivierten Sortierungen wird von Delta Sharing nicht unterstützt.
- Delta Sharing kann nur UniForm-Tabellen als Delta-Tabellen lesen.
- Die Delta-Freigabe unterstützt nicht das automatische Ändern
responseFormatvon Streamingquellen und beim Neustart des Streamings.
Siehe auch Delta Lake-Featureunterstützungsmatrix.
Ressourcenkontingente
Azure Databricks erzwingt Ressourcenkontingente für alle sicherungsfähigen Delta-Freigabeobjekte. Diese Kontingente sind in Ressourcenlimits aufgeführt. Wenn Sie davon ausgehen, dass Sie diese Ressourcengrenzwerte überschreiten, wenden Sie sich an Ihr Azure Databricks-Kontoteam.
Sie können Ihren Kontingentbedarf mithilfe der Unity Catalog-Ressourcenkontingent-APIs überwachen. Weitere Informationen finden Sie unter Überwachen des Bedarfs an Unity Catalog-Ressourcenkontingenten.