Allgemeine Informationen zum Verwalten von Freigabeangeboten mit SQL

Anbieter können Freigabeangebote verwenden, um Datenprodukte mit Konten in jeder Snowflake-Region zu teilen. Um mehr über Freigabeangebote zu erfahren, lesen Sie Allgemeine Informationen zur Verwendung von Freigabeangeboten.

Anbieter können die Befehle von SQL verwenden, um Freigabeangebote zu erstellen und zu verwalten und sie bestimmten Verbrauchern anzubieten. Um ein Freigabeangebot über SQL freizugeben, führen Anbieter die folgenden Aufgaben aus:

Bemerkung

Anbieter können keine bezahlten, personalisierten Freigabeangebote oder Freigabeangebote in privaten Datenbörsen anbieten.

Voraussetzungen für die Verwendung von Freigabeangeboten mit SQL

Freigabeangebot und Rolle des Eigentümers der Anwendung

Das Erstellen eines Freigabeangebots erfolgt über das Konto, das die Daten oder das Anwendungspaket enthält. Die Rolle, die ein Datenprodukt mit einem Freigabeangebot verbindet und das Angebot veröffentlicht, muss dieselbe Rolle sein, die das Anwendungspaket bzw. die Freigabe erstellt hat und damit Eigentümerin ist. Sie können die Berechtigung OWNERSHIP für eine Freigabe nicht übertragen.

Wenn Sie eine andere Rolle zum Erstellen und Verwalten des Freigabeangebots verwenden, weisen Sie der Rolle, die Eigentümerin des Anwendungspakets oder der Freigabe ist, die Berechtigung MODIFY für das Freigabeangebot zu. Beispiel:

Rolle des Eigentümers der Freigabe oder des Anwendungspakets:

OWNERSHIP-Berechtigung für die Freigabe oder das Anwendungspaket. Berechtigung MODIFY für das Freigabeangebot.

Rolle des Eigentümers des Freigabeangebots:

Berechtigung OWNERSHIP für das Freigabeangebot.

Globale Berechtigung CREATE DATA EXCHANGE LISTING

Innerhalb des Anbieterkontos können Sie eine der folgenden Möglichkeiten nutzen, um Freigabeangebote zu erstellen und zu verwalten:

ACCOUNTADMIN:

Wenn Sie die Rolle ACCOUNTADMIN verwenden, um Freigabeangebote zu erstellen und zu verwalten, muss die Rolle ORGADMIN zuerst Delegieren Sie Berechtigungen, um die automatische Ausführung einzurichten ausführen.

Kundenspezifische Rolle:

Wenn Sie eine benutzerdefinierte Rolle verwenden, muss die Rolle ORGADMIN zunächst Delegieren Sie Berechtigungen, um die automatische Ausführung einzurichten für die Rolle ACCOUNTADMIN ausführen, mit der Sie der benutzerdefinierten Rolle die entsprechenden Berechtigungen erteilen können.

Weitere Informationen zum Zuweisen von Berechtigungen für Data Sharing finden Sie unter Erteilen von Berechtigungen für andere Rollen:.

Angebots-Manifest definieren

Um ein Freigabeangebot zu erstellen, müssen Sie zunächst ein Angebots-Manifest erstellen. Manifeste werden in YAML (https://yaml.org/spec/) geschrieben und enthalten ein Präfix sowie erforderliche und optionale Felder.

Um beispielsweise ein einfaches Freigabeangebot mit Titel und Angebotsbedingungen zu erstellen, definieren Sie ein Manifest ähnlich wie das Folgende:

title: A title for the listing.
subtitle: An optional subtitle.
description: A general description.
profile: Provider profile reference.
listing_terms: ...
targets: ...
Copy

Jedes Manifest enthält dann weitere Abschnitte, wie zum Beispiel:

auto_fulfillment: ...
Copy

Und eine Reihe von optionalen Feldern, wie data_dictionary, business_needs und mehr.

Ein einfaches Manifest würde Folgendes enthalten:

title: "MyFirstListing"
subtitle: "Example listing"
description: "This is my first listing!"
listing_terms:
  type: "OFFLINE"
targets:
   accounts: ["Org1.Account1"]
Copy

Weitere Informationen dazu finden Sie unter Referenz zum Freigabeangebots-Manifest.

Weitere Beispiele und Anwendungsfälle im Zusammenhang mit der Verwaltung von Freigabeangeboten über SQL finden Sie unter Freigabeangebote mit SQL als Anbieter verwalten – Beispiele.

Freigabeangebot mit SQL erstellen

Um ein Freigabeangebot zu erstellen, verwenden Sie den Befehl CREATE LISTING. Dabei geben Sie einen Namen und die Details des Freigabeangebots inline in einem YAML-Manifest an, das das Freigabeangebot beschreibt. Freigabeangebote, die mit CREATE LISTING … erstellt wurden, werden automatisch veröffentlicht. Nachdem ein Freigabeangebot erstellt wurde, können Sie es mit ALTER LISTING ändern, was auch das Veröffentlichen und Zurückziehen einschließt.

Beachten Sie, dass im Gegensatz zu Snowsight beim Erstellen eines Freigabeangebots mit SQL die zugehörige Freigabe bereits existieren muss.

Zusätzlich können die Freigabeangebote beschrieben, angezeigt, veröffentlicht und zurückgezogen und gelöscht werden.

Bemerkung

Das Erstellen eines Eintrags mit SQL ist konzeptionell ähnlich wie Daten oder Apps für bestimmte Verbraucher über ein privates Freigabeangebot bereitstellen. Sie sollten mit dem Erstellen, Anzeigen und Veröffentlichen von Freigabeangeboten mit Snowsight und Provider Studio vertraut sein, bevor Sie Freigabeangebote mit SQL erstellen. Weitere Informationen finden Sie unter `Daten oder Apps für bestimmte Verbraucher über ein privates Freigabeangebot bereitstellen`_.

Bevor Sie Ihr Freigabeangebot erstellen, stellen Sie sicher, dass Sie alle Voraussetzungen erfüllt haben.

Wenn Sie beispielsweise eine Freigabeangebot my1stlisting im Status DRAFT mit dem Titel „My first SQL listing“ über die Freigabe myshare erstellen möchten, führen Sie den folgenden Befehl aus:

CREATE EXTERNAL LISTING my1stlisting
SHARE myshare AS
$$
 title: "My first SQL listing"
 description: "This is my first listing"
 listing_terms:
   type: "OFFLINE"
 targets:
   accounts: ["Org1.Account1"]
$$ PUBLISH=FALSE REVIEW=FALSE;
Copy

Bemerkung

Die Bezeichner werden anhand des NAME des Freigabeangebots identifiziert. Ein Freigabeangebot-NAME ist der Bezeichner, der bei der Erstellung des Freigabeangebots verwendet wurde. Im obigen Beispiel lautet der NAME-Wert des Freigabeangebots MY1STLISTING. Während Titel, Untertitel und andere Merkmale des Freigabeangebots geändert werden können, kann NAME nicht durch Angabe eines neuen Namens in yaml geändert werden. Verwenden Sie ALTER LISTING … RENAME TO, um ein Freigabeangebot umzubenennen. Befehle wie ALTER LISTING, SHOW LISTINGS, DESCRIBE LISTING und DROP LISTING verwenden alle NAME, um ein Freigabeangebot zu identifizieren. Der Freigabeangebot-NAME wird nicht in Snowsight angezeigt, wo die Freigabeangebote anhand des Titels identifiziert werden.

Weitere Beispiele und Anwendungsfälle für das Verwalten von Freigabeangeboten mit SQL finden Sie unter Freigabeangebote mit SQL als Anbieter verwalten – Beispiele.

Freigabeangebote mit SQL veröffentlichen

Sie können Freigabeangebote über ALTER LISTING … PUBLISH und ALTER LISTING … UNPUBLISH veröffentlichen bzw. zurückziehen.

Weitere Informationen zum Veröffentlichen von Einträgen mit Snowsight finden Sie unter Freigabeangebote veröffentlichen.

Beachten Sie, dass Freigabeangebote automatisch veröffentlicht werden können, wenn sie mit CREATE LISTING erstellt werden.

Um zum Beispiel das zuvor unveröffentlichte Freigabeangebot zu veröffentlichen, führen Sie den folgenden Befehl aus:

ALTER LISTING MY1STLISTING PUBLISH;
Copy

Außerdem kann ein Freigabeangebot erst gelöscht werden kann, wenn seine Veröffentlichung zurückgezogen wurde. Um die Veröffentlichung eines zuvor veröffentlichten Freigabeangebots zurückzuziehen, führen Sie einen Befehl ähnlich dem folgenden aus:

ALTER LISTING MY1STLISTING UNPUBLISH;
Copy

Weitere Beispiele und Anwendungsfälle für das Verwalten von Freigabeangeboten mit SQL finden Sie unter Freigabeangebote mit SQL als Anbieter verwalten – Beispiele.


Das vorherige Beispiel enthielt keine Ziele oder Verwendungsbeispiele. Sie können den Befehl ALTER LISTING verwenden, um die Eigenschaften eines Angebots zu ändern. In diesem Beispiel aktualisieren wir eine bestehendes Angebot, um Ziele und Beispiel-SQL hinzuzufügen. Beachten Sie, dass das ursprüngliche YAML-Manifest um neue Inhalte erweitert wird.

Um ein Freigabeangebot so zu ändern, dass es zusätzliche Felder enthält, führen Sie einen Befehl ähnlich dem folgenden aus:

ALTER LISTING MY1STLISTING AS
$$
   title: "My First SQL Listing"
   description: "This is my first listing"
   listing_terms:
     type: "OFFLINE"
   targets:
     accounts: ["Org1.Account1"]
   usage_examples:
     - title: "this is a test sql"
       description: "Simple example"
       query: "select *"
$$;
Copy

Weitere Beispiele und Anwendungsfälle für das Verwalten von Freigabeangeboten mit SQL finden Sie unter Freigabeangebote mit SQL als Anbieter verwalten – Beispiele.

Freigabeangebot mit SQL untersuchen

Ähnlich wie bei Tabellen und anderen SQL-Elementen können Freigabeangebote beschrieben und angezeigt werden. DESCRIBE LISTING nimmt einen einzelnen Angebotsnamen als Parameter und gibt Details zu diesem Angebot zurück. SHOW LISTINGS kann Informationen zu einer Gruppe von Angeboten liefern, wenn Sie einen LIKE-Filter verwenden, oder zu allen Angeboten, die von einem bestimmten Konto erstellt wurden, wenn kein Filter angegeben wird.

Um die Details zu Freigabeangebot MY1STLISTING anzuzeigen, führen Sie einen Befehl wie den folgenden aus:

SHOW LISTINGS LIKE 'MY1STLISTING';
Copy

Um alle Angebote anzuzeigen, auf die Ihre Rolle Zugriff hat, führen Sie einen Befehl wie den folgenden aus:

SHOW LISTINGS;
Copy

Um das Freigabeangebot MY1STLISTING zu beschreiben, führen Sie einen Befehl wie den folgenden aus:

DESC LISTING MY1STLISTING;
Copy

Freigabeangebot mit SQL löschen

Um ein Freigabeangebot zu entfernen, müssen Sie die Veröffentlichung des Angebots zunächst zurückziehen. Sie sollten mit dem Entfernen von Freigabeangeboten mit Snowsight vertraut sein, bevor Sie Angebote mit SQL löschen. Weitere Informationen zum Entfernen von Einträgen mit Snowsight finden Sie unter Entfernen von Freigabeangeboten als Anbieter.

Um die Veröffentlichung eines Freigabeangebots zurückzuziehen, führen Sie einen Befehl wie den folgenden aus:

ALTER LISTING MY1STLISTING UNPUBLISH;
Copy

Um eine Freigabeangebot zu löschen, führen Sie einen Befehl wie den folgenden aus:

DROP LISTING IF EXISTS MY1STLISTING
Copy