Einführung in Secure Data Sharing

Secure Data Sharing ermöglicht die Freigabe ausgewählter Objekte einer Datenbank Ihres Kontos für andere Snowflake-Konten. Die folgenden Snowflake-Datenbankobjekte können freigegeben werden:

  • Tabellen

  • Externe Tabellen

  • Sichere Ansichten

  • Sichere materialisierte Ansichten

  • Sichere UDFs

Snowflake ermöglicht die gemeinsame Nutzung von Datenbanken durch Freigaben, die von Datenanbietern erstellt und von Datenverbrauchern „importiert“ werden.

Wichtig

Alle Datenbankobjekte, die von Konten gemeinsam genutzt werden, sind schreibgeschützt (d. h. die Objekte können weder geändert noch gelöscht werden, einschließlich Hinzufügen oder Ändern von Tabellendaten).

Unter diesem Thema:

Wie funktioniert Secure Data Sharing?

Bei Secure Data Sharing werden keine Istdaten zwischen Konten kopiert oder übertragen. Alle Freigaben werden über die einzigartige Serviceschicht und den Metadatenspeicher von Snowflake ausgeführt. Dies ist ein wichtiges Konzept, denn es bedeutet, dass die freigegebenen Daten nicht unter einem Verbraucherkonto gespeichert werden müssen und der Verbraucher somit die monatlichen Datenspeichergebühren einsparen kann. Die einzigen Kosten für Verbraucher entstehen durch die Computeressourcen (d. h. die virtuellen Warehouses), die zur Abfrage der freigegebenen Daten verwendet werden.

Da keine Daten kopiert oder ausgetauscht werden, ist die Einrichtung von Secure Data Sharing für Anbieter schnell und einfach. Der Zugriff auf die freigegebenen Daten ist für Verbraucher sofort möglich:

  • Der Anbieter erstellt in seinem Konto die Freigabe einer Datenbank und gewährt dann Zugriff auf bestimmte Objekte in der Datenbank. Der Anbieter kann auch Daten aus mehreren Datenbanken freigeben, sofern diese Datenbanken demselben Konto angehören. Ein oder mehrere Konten werden dann der Freigabe hinzugefügt. Dazu können auch Ihre eigenen Konten gehören (wenn Sie mehrere Snowflake-Konten haben).

    Weitere Details dazu finden Sie unter Was ist eine Freigabe? (unter diesem Thema).

  • Auf der Verbraucherseite wird aus der Freigabe eine schreibgeschützte Datenbank erstellt. Der Zugriff auf diese Datenbank ist über die gleiche, standardmäßige rollenbasierte Zugriffssteuerung konfigurierbar, die Snowflake für alle Objekte im System bereitstellt.

Durch diese Architektur ermöglicht Snowflake den Aufbau eines Netzwerks aus Anbietern, die Daten mit mehreren Verbrauchern (auch innerhalb ihrer eigenen Organisation) teilen können, und Verbrauchern, die auf freigegebene Daten mehrerer Anbieter zugreifen können:

Overview of provider accounts sharing data with consumer accounts

Bemerkung

Jedes vollständige Snowflake-Konto kann freigegebene Daten bereitstellen und verwenden. Snowflake unterstützt auch Konten von Dritten. Bei dieser speziellen Art von Konto werden freigegebene Daten von einem einzigen Anbieterkonto genutzt. Weitere Details dazu finden Sie unter Leserkonten (unter diesem Thema).

Was ist eine Freigabe?

Freigaben sind benannte Objekte in Snowflake, die alle Informationen enthalten, die für die Freigabe einer Datenbank erforderlich sind. Jede Freigabe besteht aus:

  • Berechtigungen, die Zugriff auf die Datenbank und das Schema gewähren, die die freizugebenden Objekte enthalten.

  • Die Berechtigungen, die den Zugriff auf bestimmte Objekte in der Datenbank gewähren.

  • Verbraucherkonten, die die Datenbank und deren Objekte freigegeben werden.

Sobald aus einer Freigabe eine Datenbank (in einem Verbraucherkonto) erstellt wurde, sind alle freigegebenen Objekte den Benutzern des Verbraucherkontos zugänglich:

Relationship between databases, database objects, shares, and accounts

Freigaben sind sicher, konfigurierbar und zu 100 % vom Anbieterkonto kontrolliert:

  • Neue Objekte, die einer Freigabe hinzugefügt werden, stehen allen Verbrauchern sofort zur Verfügung und ermöglichen den Echtzeitzugriff auf freigegebene Daten.

  • Der Zugriff auf eine Freigabe (oder eines der Objekte in einer Freigabe) kann jederzeit widerrufen werden.

Übersicht zu Datenanbietern und Datenverbrauchern

Anbieter

Ein Datenanbieter ist jedes Snowflake-Konto, das Freigaben erstellt und sie anderen Snowflake-Konten zur Nutzung zur Verfügung stellt. Als Datenanbieter geben Sie eine Datenbank für ein oder mehrere Snowflake-Konten frei. Für jede Datenbank, die Sie freigeben, unterstützt Snowflake die Verwendung von Berechtigungen, um eine detaillierte Zugriffssteuerung auf ausgewählte Objekte in der Datenbank zu ermöglichen (d. h. Sie erteilen Zugriffsrechte für ein oder mehrere spezifische Objekte in der Datenbank).

Snowflake setzt keine festen Grenzen für die Anzahl der Freigaben, die Sie erstellen können, oder die Anzahl der Konten, die Sie zu einer Freigabe hinzufügen können.

Eine Kurzanleitung für die Freigabe von Daten als Anbieter finden Sie unter Erste Schritte für sichere Datenfreigaben. Detaillierte Informationen dazu finden Sie unter Verwenden von Freigaben.

Verbraucher

Ein Datenverbraucher ist jedes Konto, das eine Datenbank aus einer von einem Datenanbieter bereitgestellten Freigabe erstellt. Sobald Sie als Datenverbraucher eine freigegebene Datenbank zu Ihrem Konto hinzugefügt haben, können Sie auf die Objekte in der Datenbank zugreifen und diese abfragen, genau wie bei jeder anderer Datenbank in Ihrem Konto.

Snowflake setzt der Anzahl der Freigaben, die Sie von Datenanbietern nutzen können, keine definierten Grenzen, allerdings können Sie pro Freigabe nur eine Datenbank erstellen.

Weitere Details dazu finden Sie unter Datenverbraucher.

Konten von Drittanbietern

Leserkonten

Datenfreigaben werden nur zwischen Snowflake-Konten unterstützt. Als Datenanbieter möchten Sie möglicherweise Daten auch für einen Verbraucher freigeben, der noch kein Snowflake-Konto hat und/oder nicht bereit ist, ein lizenzierter Snowflake-Kunde zu werden.

Um den Datenaustausch mit diesen Verbrauchern zu erleichtern, unterstützt Snowflake Datenanbieter bei der Einrichtung von Leserkonten. Leserkonten (früher bekannt als „Nur-Lese-Konten“) bieten eine schnelle, einfache und kostengünstige Möglichkeit, Daten freizugeben, ohne dass der Verbraucher ein Snowflake-Kunde werden muss.

Jedes Leserkonto gehört zu dem Anbieterkonto, von dem es erstellt wurde. Ähnlich wie bei Standard-Verbraucherkonten verwendet das Anbieterkonto Freigaben, um Datenbanken für Leserkonten freizugeben. Ein Leserkonto kann jedoch nur Daten des Anbieterkontos verwenden, von dem es erstellt wurde:

Overview of data sharing reader accounts

Benutzer in einem Leserkonto können Daten abfragen, die für das Konto freigegeben wurden, können aber keine der DML-Aufgaben ausführen, die für ein vollständiges Konto erlaubt sind (Laden, Einfügen, Aktualisieren usw. von Daten).

Weitere Details dazu finden Sie unter Verwalten von Leserkonten.