Einführung in die Unterstützung von unstrukturierten Daten

Unter diesem Thema werden die wichtigsten Konzepte vorgestellt und Anleitungen für den Zugriff auf Datendateien mit unstrukturierten Daten und deren gemeinsame Nutzung gegeben.

Unter diesem Thema:

Unterstützung von Cloudspeicherdiensten

Sowohl externe Stagingbereiche (externer Cloudspeicher) als auch interne (d. h. Snowflake) Stagingbereich unterstützen unstrukturierte Daten.

Externe Stagingbereiche

Speichern Sie Dateien in einem externen Cloudspeicher: Amazon S3, Google Cloud Storage oder einer der unterstützten Microsoft Azure-Cloudspeicherdienste:

  • Blob-Speicher

  • Data Lake Storage Gen2

  • General Purpose v1

  • General Purpose v2

Verfügbare URL-Typen für Zugriff auf Dateien

Die folgenden Typen von URLs sind für den Zugriff auf Dateien im Cloudspeicher verfügbar:

Bereichs-URL

Kodierte URL, die temporären Zugriff auf eine Stagingdatei erlaubt, ohne dass Berechtigungen für den Stagingbereich erteilt werden müssen.

Die URL läuft ab, wenn der Zeitraum für persistent gespeicherte Abfrageergebnisse endet (d. h. der Ergebnis-Cache läuft ab). Dieser Zeitraum beträgt derzeit 24 Stunden.

Datei-URL

URL, die die Datenbank, das Schema, den Stagingbereich und den Dateipfad zu einer Menge von Dateien identifiziert. Eine Rolle, die über ausreichende Berechtigungen für den Stagingbereich verfügt, kann auf die Dateien zugreifen.

Vorsignierte URL

Einfache HTTPS-URL für den Zugriff auf eine Datei über einen Webbrowser. Mit dieser URL kann ein Benutzer unter Verwendung eines vorsignierten Zugriffstokens temporär auf eine Datei zugreifen. Die Ablaufzeit des Zugriffstokens ist konfigurierbar.

In der folgenden Tabelle sind die wichtigsten Merkmale dieser URL-Typen beschrieben:

Bereichs-URL

Datei-URL

Vorsignierte URL

Anwendungsfälle

Empfohlen für Dateiadministratoren, um bestimmten Rollen im selben Konto einen eingeschränkten Zugriff auf Datendateien zu gewähren. Ermöglicht den Zugriff auf die Dateien über eine Ansicht, die Bereichs-URLs abruft. Nur Rollen, die über Berechtigungen für die Ansicht verfügen, können auf die Dateien zugreifen. Ideal zur Verwendung in benutzerdefinierten Anwendungen zur Bereitstellung von unstrukturierten Daten für andere Konten über eine Freigabe oder zum Herunterladen und zur Ad-hoc-Analyse unstrukturierter Daten über Snowsight.

Permanente URL zu einer Datei in einem Stagingbereich. Um eine Datei herunterzuladen oder darauf zuzugreifen, senden die Benutzer die Datei-URL zusammen mit dem Autorisierungstoken in einer GET-Anforderung an den REST-API-Endpunkt. Ideal für benutzerdefinierte Anwendungen, die Zugriff auf unstrukturierte Datendateien benötigen.

Wird verwendet, um Dateien herunterzuladen oder darauf zuzugreifen, ohne sich in Snowflake zu authentifizieren oder ein Autorisierungstoken zu übergeben. Vorsignierte URLs sind offen, d. h. jeder Benutzer oder jede Anwendung kann direkt auf die Dateien zugreifen oder sie herunterladen. Ideal für Business-Intelligence-Anwendungen oder Berichtstools, die den unstrukturierten Dateiinhalt anzeigen müssen.

Generierung

Fragen Sie die Funktion BUILD_SCOPED_FILE_URL ab.

Fragen Sie die Verzeichnistabelle des Stagingbereichs ab, der auf die Stagingdateien verweist, oder rufen Sie die Funktion BUILD_STAGE_FILE_URL auf.

Fragen Sie die Funktion GET_PRESIGNED_URL ab.

Verwendung

Die folgenden Optionen sind verfügbar:

  • Klicken Sie in Snowsight in der Abfrageergebnistabelle auf eine Bereichs-URL. Snowsight ruft die Datei nur für den Benutzer ab, der die Bereichs-URL generiert hat.

  • Senden Sie eine Bereichs-URL in einer GET-Anforderung an den Dateisupport-REST-API-Endpunkt. Weitere Informationen dazu finden Sie unter REST-API für die Unterstützung unstrukturierter Daten.

Die folgenden Optionen sind verfügbar:

  • Klicken Sie in Snowsight in der Abfrageergebnistabelle auf eine Datei-URL. Snowsight ruft die Datei nur ab, wenn die aktive Rolle über ausreichende Berechtigungen verfügt.

  • Senden Sie eine Datei-URL in einer GET-Anforderung an den Dateisupport-REST-API-Endpunkt. Weitere Informationen dazu finden Sie unter REST-API für die Unterstützung unstrukturierter Daten.

Die folgenden Optionen sind verfügbar:

  • Klicken Sie in Snowsight in der Abfrageergebnistabelle auf eine vorsignierte URL.

  • Navigieren Sie direkt in einem Webbrowser zu der vorsignierten URL.

Snowflake Secure Data Sharing

Unstrukturierte Datendateien können von Datenverbrauchern über Spaltenwerte dieses Typs in sicheren, von Datenanbietern freigegebenen Ansichten aufgerufen werden.

Unstrukturierte Datendateien können von Datenverbrauchern nicht über Spaltenwerte dieses Typs in sicheren, von Datenanbietern freigegebenen Ansichten aufgerufen werden.

Unstrukturierte Datendateien können von Datenverbrauchern über Spaltenwerte dieses Typs in sicheren, von Datenanbietern freigegebenen Ansichten aufgerufen werden.

Autorisierung

Nur der Benutzer, der eine Bereichs-URL generiert, kann mit der URL auf die referenzierte Datei zugreifen.

Die im GET-REST-API-Aufruf angegebene Rolle muss über ausreichende Berechtigungen für den Stagingbereich verfügen: USAGE (externer Stagingbereich) oder READ (interner Stagingbereich).

Jede Person, die im Besitz der vorsignierten URL ist, kann auf die referenzierte Datei zugreifen, solange das Token gültig ist.

Ablauf

Der Ablaufzeitraum für den Cache der Abfrageergebnisse (derzeit 24 Stunden).

Permanent.

Die im Argument expiration_time angegebene Zeitdauer.

Serverseitige Verschlüsselung nur für Stagingbereiche

Zur Unterstützung des Dateizugriffs mit vorsignierten URLs erstellen Sie benannte interne oder externe Stagingbereich mit serverseitiger Verschlüsselung anstelle der clientseitigen Verschlüsselung. Wenn die Dateien in einem Stagingbereich clientseitig verschlüsselt sind, können Benutzer die Stagingdateien nur lesen, wenn sie Zugriff auf den Verschlüsselungsschlüssel haben.

Bemerkung

Derzeit ist die Erstellung interner Stagingbereiche mit serverseitiger Verschlüsselung auf die folgenden Snowflake-Clientversionen beschränkt:

  • JDBC-Treiber v3.12.11 (oder höher)

Verzeichnistabellen

Verzeichnistabellen speichern einen Katalog von Stagingdateien im Cloudspeicher. Rollen mit den erforderlichen Berechtigungen können eine Verzeichnistabelle abfragen, um die Datei-URLs für den Zugriff auf die Stagingdateien abzurufen.

Weitere Details dazu finden Sie unter Verzeichnistabellen.

SQL-Funktionen

Die folgenden Dateifunktionen sind für den Zugriff auf Datendateien vorgesehen:

SQL-Funktion

Beschreibung

GET_STAGE_LOCATION

Gibt die URL für einen benannten externen oder internen Stagingbereich zurück, wobei der Name des Stagingbereichs als Eingabe verwendet wird.

GET_RELATIVE_PATH

Extrahiert den Pfad einer Stagingdatei relativ zu ihrem Speicherort im Stagingbereich, wobei der Name des Stagingbereichs und der absolute Dateipfad im Cloudspeicher als Eingaben verwendet werden.

GET_ABSOLUTE_PATH

Gibt den absoluten Pfad einer Stagingdatei zurück, wobei der Name des Stagingbereichs und der Pfad der Datei relativ zu ihrem Speicherort im Stagingbereich als Eingaben verwendet werden.

GET_PRESIGNED_URL

Generiert eine vorsignierte URL, die auf eine Stagingdatei verweist, wobei der Name des Stagingbereichs und der relative Dateipfad als Eingaben verwendet werden. Greifen Sie mit der Funktion auf Dateien in einem externen Stagingbereich zu.

BUILD_SCOPED_FILE_URL

Generiert eine Snowflake-gehostete Bereichs-URL, die auf eine Stagingdatei verweist, wobei der Name des Stagingbereichs und der relative Dateipfad als Eingaben verwendet werden.

BUILD_STAGE_FILE_URL

Generiert eine Snowflake-gehostete Datei-URL, die auf eine Stagingdatei verweist, wobei der Name des Stagingbereichs und der relative Dateipfad als Eingaben verwendet werden.

Herunterladen von Stagingdateien in Snowsight

Benutzer können in der Ergebnistabelle eines Snowsight-Arbeitsblatts auf eine generierte vorsignierte, Bereichs- oder Datei-URL klicken und die referenzierte Datei herunterladen.

  1. Melden Sie sich bei Snowsight, der Snowflake-Weboberfläche, an.

  2. Klicken Sie auf Worksheets » My Worksheets (oder öffnen Sie ein lokales Arbeitsblatt unter Recent oder in Folders) » <Name_des_Arbeitsblatts>

  3. Rückgabe einer vorsignierten, Bereichs- oder Datei-URL in einer Abfrage unter Verwendung von einer der unterstützten Methoden.

  4. Klicken Sie auf die URL in der Ergebnistabelle. Snowsight lädt die Datei herunter, auf die die URL verweist.

    Download pre-signed URL in Snowsight results table
Zurück zum Anfang