Schneeflake (veraltet)

Snowflake ermöglicht Datenspeicherung, Verarbeitung und Analyselösungen, die schneller, einfacher zu bedienen und flexibler als herkömmliche Angebote sind.

Dieser Connector ist in den folgenden Produkten und Regionen verfügbar:

Dienstleistung Class Regions
Logik-Apps Norm Alle Logik-Apps-Regionen mit Ausnahme der folgenden Bereiche:
     – Azure Government-Regionen
     - Azure China-Regionen
     - US Department of Defense (DoD)
Power Automate Premium Alle Power Automate-Regionen mit Ausnahme der folgenden Bereiche:
     - US Government (GCC)
     - US Government (GCC High)
     - China Cloud betrieben von 21Vianet
     - US Department of Defense (DoD)
Power Apps Premium Alle Power Apps-Regionen mit Ausnahme der folgenden:
     - US Government (GCC)
     - US Government (GCC High)
     - China Cloud betrieben von 21Vianet
     - US Department of Defense (DoD)
Kontakt
Name Schneeflocke
URL https://www.snowflake.com/support
Email support@snowflake.com
Connectormetadaten
Herausgeber Snowflake Inc.
Webseite https://www.snowflake.com
Datenschutzrichtlinie https://www.snowflake.com/privacy-policy
Kategorien Daten

Hinweis

Dieser Connector ist veraltet, bitte verwenden Sie eine erweiterte Alternative zu diesem Connector: Snowflake (Vorschau)-Connector

Dieser Connector basiert auf der Snowflake SQL REST-API. Die Data Cloud von Snowflake wird von einer erweiterten Datenplattform unterstützt, die als selbstverwalteter Dienst bereitgestellt wird. Snowflake ermöglicht Datenspeicherung, Verarbeitung und Analyselösungen, die schneller, einfacher zu bedienen und viel flexibler als herkömmliche Angebote sind. Der Connector verwendet die Snowflake-REST-API V2, um synchrone und asynchrone Abfragen zu übermitteln und entsprechende Ergebnisse abzurufen.

Voraussetzungen

Stellen Sie Informationen zu allen Voraussetzungen bereit, die für die Verwendung dieses Connectors erforderlich sind. Beispielsweise ein Konto auf Ihrer Website oder ein kostenpflichtiger Serviceplan.

So erhalten Sie Anmeldeinformationen

Richten Sie die Microsoft Entra ID-Authentifizierung für Snowflake ein, indem Sie die folgenden Schritte ausführen:

  1. Führen Sie in Schritt 1: Konfigurieren Sie die OAuth-Ressource in der Microsoft Entra-ID, führen Sie die Schritte 1-10 aus, und definieren Sie den Bereich wie SESSION:ROLE-ANY in den folgenden Anweisungen.
  2. Führen Sie in Schritt 2: Erstellen eines OAuth-Clients in der Microsoft Entra-ID die Schritte 1-13 aus.
  3. Navigieren Sie zu Authentifizierung ->Plattformkonfigurationen ->Plattformkonfigurationen hinzufügen -Plattform hinzufügen ->Hinzufügen "https://global.consent.azure-apim.net/redirect" –> Klicken Sie auf "Speichern". Stellen Sie sicher, dass die Umleitungs-URL im Snowflake OAuth-Client und nicht in der Snowflake OAuth-Ressource festgelegt ist.
  4. Wechseln Sie zu der ressource, die in Schritt 1 erstellt wurde, und wechseln Sie zum Verfügbarmachen einer API –>Hinzufügen einer Clientanwendung –>Fügen Sie Ihre APPLICATION_CLIENT_ID von früheren Schritten oben in Schritt 3 hinzu –> Klicken Sie auf "Speichern".
  5. Befolgen Sie Schritt 3: Sammeln Sie microsoft Entra-ID-Informationen für Snowflake vollständig.
  6. Kopieren Sie den folgenden Text, und fügen Sie ihn in Ihr Snowflake-Arbeitsblatt ein. Dort führen Sie Ihre Abfragen in Snowflake aus. Bevor Sie die Abfrage ausführen, stellen Sie sicher, dass Sie die folgenden Ersetzungen vornehmen, damit die Abfrage erfolgreich ausgeführt wird. A. Wechseln Sie in Microsoft Azure zu Ihrer Snowflake OAuth-Ressourcen-App, und klicken Sie auf Endpunkte. B. Um die AZURE_AD_ISSUER in Zeile 5 zu erhalten, kopieren Sie den Link im Dokumentfeld "Verbundmetadaten ", und öffnen Sie den Link auf einer neuen Registerkarte. Kopieren Sie den EntityID-Link, der ungefähr wie folgt aussehen soll: https://sts.windows.net/90288a9b-97df-4c6d-b025-95713f21cef9/. Fügen Sie sie in die Abfrage ein, und stellen Sie sicher, dass sie / vor dem letzten Anführungszeichen stehen und dass Sie die Anführungszeichen beibehalten. C. Um die Schlüssel-URL in Zeile 6 abzurufen, kopieren Sie den Link im Dokumentfeld "OpenID Connect-Metadaten ", und öffnen Sie den Link auf einer neuen Registerkarte. Kopieren Sie die jwks_uri, die etwa wie folgt aussehen soll: https://login.microsoftonline.com/90288a9b-97df-4c6d-b025-95713f21cef9/discovery/v2.0/keys. Fügen Sie sie in die Abfrage ein, und stellen Sie sicher, dass Sie die Anführungszeichen beibehalten.
    D. Ersetzen Sie die Zielgruppenlisten-URL in Zeile 7 durch Application ID URI Schritt 1. Behalten Sie die Anführungszeichen bei.
    E. Wenn Ihr Snowflake-Konto dieselbe E-Mail-Adresse wie Ihr Microsoft Azure-Konto verwendet, ersetzen Sie login_name in Zeile 9 durch email_address. Wenn nicht, behalten Sie dies bei, und geben Sie ihn nicht in Ihren Anmeldenamen ein. Behalten Sie die Anführungszeichen bei.
    F. Stellen Sie sicher, dass Sie Ihre Rolle als ACCOUNTADMIN. Jetzt können Sie Ihre Abfrage ausführen.
create security integration connector
       type = external_oauth
       enabled = true
       external_oauth_type = azure
       external_oauth_issuer = '<AZURE_AD_ISSUER>'     
       external_oauth_jws_keys_url = 'https://login.windows.net/common/discovery/keys'
       external_oauth_audience_list = ('https://analysis.usgovcloudapi.net/powerbi/connector/snowflake')
       external_oauth_token_user_mapping_claim = 'upn'
       external_oauth_snowflake_user_mapping_attribute = 'login_name'
       external_oauth_any_role_mode = 'ENABLE';

Erste Schritte mit Ihrem Connector

Submit SQL-Anweisung für die Ausführung

Überprüfen des Status und Abrufen von Ergebnissen

Abbrechen der Ausführung einer Anweisung

Bekannte Probleme und Einschränkungen

  1. Wenn Sie beim Erstellen einer neuen Verbindung eine Antwort von 500 erhalten, ist dies ein vorübergehender Fehler. Bitte warten Sie einige Minuten, und versuchen Sie es erneut.
  2. Wenn Sie eine 401-Antwort erhalten und Ihr Feld "Host" in Schritt 1 diesem Format folgt" "orgname-accountname", ersetzen Sie das Feld "Host" durch Ihre "Locator"-URL.
  3. Der Connector kann ein Timeout mit umfangreichen Abfrageergebnissen haben.

Häufig gestellte Fragen

  1. Wie kann der Connector in Power Apps verwendet werden? Derzeit unterstützt Power Apps kein dynamisches Schema. Sie können den Connector weiterhin aus Power Apps verwenden, indem Sie einen Fluss aus der App statt direkt aus einer App aufrufen.

Drosselungsgrenzwerte

Name Aufrufe Verlängerungszeitraum
API-Aufrufe pro Verbindung 100 60 Sekunden

Aktionen

Abbrechen der Ausführung einer Anweisung

Abbrechen der Ausführung einer Anweisung

Konvertieren von Resultsetzeilen von Array in Objekte

Konvertieren von Resultsetzeilen von Array in Objekte

Submit SQL-Anweisung für die Ausführung

Übermitteln einer SQL-Anweisung für die Ausführung

Überprüfen des Status und Abrufen von Ergebnissen

Überprüfen des Status der Ausführung einer Anweisung und Abrufen der Ergebnisse

Abbrechen der Ausführung einer Anweisung

Abbrechen der Ausführung einer Anweisung

Parameter

Name Schlüssel Erforderlich Typ Beschreibung
Instance
Instance True string

Der URI Ihrer Snowflake-Instanz (ohne https://)

Anweisungshandle
statementHandle True string

Anweisungshandle

Anfrage-ID
requestId string

Anfrage-ID

Gibt zurück

Name Pfad Typ Beschreibung
Code
code string

Code

sqlState
sqlState string

sqlState

message
message string

message

statementHandle
statementHandle string

statementHandle

statementStatusUrl
statementStatusUrl string

statementStatusUrl

Konvertieren von Resultsetzeilen von Array in Objekte

Konvertieren von Resultsetzeilen von Array in Objekte

Parameter

Name Schlüssel Erforderlich Typ Beschreibung
rowType
resultSetMetaData string
Daten
data string

Gibt zurück

Name Pfad Typ Beschreibung
Daten
data array of object

Resultsetdaten.

items
data object

Submit SQL-Anweisung für die Ausführung

Übermitteln einer SQL-Anweisung für die Ausführung

Parameter

Name Schlüssel Erforderlich Typ Beschreibung
Instance
Instance True string

Der URI Ihrer Snowflake-Instanz (ohne https://)

Anfrage-ID
requestId string

Die ID der Anforderung

Asynchron
async boolean

Gibt an, ob die Abfrage asynchron ausgeführt werden soll.

nullable
nullable boolean

Wenn Nullwerte falsch sind, werden Nullwerte durch Zeichenfolge ersetzt.

Anweisung
statement string

Die auszuführende SQL-Anweisung – Batches von Anweisungen, die noch nicht unterstützt werden

timeout
timeout integer

Anzahl der Sekunden vor Dem Timeout

Datenbank
database string

Datenbank

schema
schema string

schema

warehouse
warehouse string

warehouse

role
role string

role

timezone
timezone string

Zeitzone, die beim Ausführen der Anweisung verwendet werden soll.

Abfragetag
query_tag string

Abfragetag, das Sie der SQL-Anweisung zuordnen möchten.

Binärausgabeformat
binary_output_format string

Ausgabeformat für Binärwerte.

Datumsausgabeformat
date_output_format string

Ausgabeformat für DATUM-Werte.

Zeitausgabeformat
time_output_format string

Ausgabeformat für TIME-Werte.

Zeitstempelausgabeformat
timestamp_output_format string

Ausgabeformat für TIMESTAMP-Werte.

Timestamp ltz-Ausgabeformat
timestamp_ltz_output_format string

Ausgabeformat für TIMESTAMP_LTZ Werte.

timestamp_ntz_output_format
timestamp_ntz_output_format string

Ausgabeformat für TIMESTAMP_NTZ Werte.

Zeitstempel-tz-Ausgabeformat
timestamp_tz_output_format string

Ausgabeformat für TIMESTAMP_TZ Werte.

Multi-Anweisungsanzahl
multi_statement_count integer

Anzahl der Auszuführenden Anweisungen bei Verwendung der Multi-Anweisungsfunktion. 0 impliziert die variable Anzahl von Anweisungen. Negative Zahlen sind nicht zulässig.

Gibt zurück

Name Pfad Typ Beschreibung
Code
code string
sqlState
sqlState string
message
message string
statementHandle
statementHandle string
createdOn
createdOn integer

Zeitstempel, der angibt, wann die Ausführung der Anweisung gestartet wurde. Der Zeitstempel wird seit der Epoche in Millisekunden ausgedrückt.

statementStatusUrl
statementStatusUrl string
format
resultSetMetaData.format string

Für v2-Endpunkte ist der einzige mögliche Wert für dieses Feld jsonv2.

rowType
resultSetMetaData.rowType array of object
name
resultSetMetaData.rowType.name string
type
resultSetMetaData.rowType.type string
nullable
resultSetMetaData.rowType.nullable boolean
partitionInfo
partitionInfo array of object

Partitionsinformationen

rowCount
partitionInfo.rowCount integer

Anzahl der Zeilen in der Partition.

compressedSize
partitionInfo.compressedSize integer

die Partitionsgröße vor der Dekomprimierung. Dies kann in der partitionInfo vorhanden sein oder nicht. Nicht komprimierte Größe wäre immer vorhanden.

unkompressedSize
partitionInfo.uncompressedSize integer

die Partitionsgröße nach der Dekomprimierung

nullable
nullable boolean

false, wenn null durch eine Zeichenfolge 'null' ersetzt wird andernfalls false

Daten
data array of array

Resultsetdaten.

items
data array of string
numRowsInserted
stats.numRowsInserted integer

Anzahl der zeilen, die eingefügt wurden.

numRowsUpdated
stats.numRowsUpdated integer

Die Anzahl der Zeilen, die aktualisiert wurden.

numRowsDeleted
stats.numRowsDeleted integer

Anzahl der zeilen, die gelöscht wurden.

numDuplicateRowsUpdated
stats.numDuplicateRowsUpdated integer

Anzahl doppelter Zeilen, die aktualisiert wurden.

Überprüfen des Status und Abrufen von Ergebnissen

Überprüfen des Status der Ausführung einer Anweisung und Abrufen der Ergebnisse

Parameter

Name Schlüssel Erforderlich Typ Beschreibung
Instance
Instance True string

Der URI Ihrer Snowflake-Instanz (ohne https://)

Anweisungshandle
statementHandle True string

Anweisungshandle

Anfrage-ID
requestId string

Anfrage-ID

Trennwand
partition integer

Trennwand

Gibt zurück

Name Pfad Typ Beschreibung
Code
code string
sqlState
sqlState string
message
message string
statementHandle
statementHandle string
createdOn
createdOn integer

Zeitstempel, der angibt, wann die Ausführung der Anweisung gestartet wurde. Der Zeitstempel wird seit der Epoche in Millisekunden ausgedrückt.

statementStatusUrl
statementStatusUrl string
format
resultSetMetaData.format string

Für v2-Endpunkte ist der einzige mögliche Wert für dieses Feld jsonv2.

rowType
resultSetMetaData.rowType array of object
name
resultSetMetaData.rowType.name string
type
resultSetMetaData.rowType.type string
nullable
resultSetMetaData.rowType.nullable boolean
partitionInfo
partitionInfo array of object

Partitionsinformationen

rowCount
partitionInfo.rowCount integer

Anzahl der Zeilen in der Partition.

compressedSize
partitionInfo.compressedSize integer

die Partitionsgröße vor der Dekomprimierung. Dies kann in der partitionInfo vorhanden sein oder nicht. Nicht komprimierte Größe wäre immer vorhanden.

unkompressedSize
partitionInfo.uncompressedSize integer

die Partitionsgröße nach der Dekomprimierung

nullable
nullable boolean

false, wenn null durch eine Zeichenfolge 'null' ersetzt wird andernfalls false

Daten
data array of array

Resultsetdaten.

items
data array of string
numRowsInserted
stats.numRowsInserted integer

Anzahl der zeilen, die eingefügt wurden.

numRowsUpdated
stats.numRowsUpdated integer

Die Anzahl der Zeilen, die aktualisiert wurden.

numRowsDeleted
stats.numRowsDeleted integer

Anzahl der zeilen, die gelöscht wurden.

numDuplicateRowsUpdated
stats.numDuplicateRowsUpdated integer

Anzahl doppelter Zeilen, die aktualisiert wurden.