- Kategorien:
Systemfunktionen (Systeminformationen)
SYSTEM$VALIDATE_STORAGE_INTEGRATION¶
Validiert die Konfiguration einer angegebenen Speicherintegration. Die Funktion versucht, über die Speicherintegration eine Datei für einen Speicherort, den Sie über den Pfad angeben, zu schreiben, zu lesen, aufzulisten oder zu löschen.
Weitere Informationen zur Konfiguration von Speicherintegrationen finden Sie unter:
- Siehe auch:
Syntax¶
SYSTEM$VALIDATE_STORAGE_INTEGRATION( '<storage_integration_name>', '<storage_path>', '<test_file_name>', '<validate_action>' )
Argumente¶
storage_integration_name
Name der zu testenden Speicherintegration.
Bei den Namen der Speicherintegration wird zwischen Groß- und Kleinschreibung unterschieden.
storage_path
Der vollständige Pfad zu einem Speicherort, den Sie validieren möchten. Der Speicherpfad muss eine URL in der
STORAGE_ALLOWED_LOCATIONS
-Liste der Speicherintegration sein.Amazon S3
's3://bucket/path/'
Das Präfix
s3
bezieht sich auf S3-Speicher in öffentlichen AWS-Regionen. Das Präfixs3gov
bezieht sich auf S3-Speicher in Regionen für Regierungsbehörden.bucket
ist der Name des S3-Buckets, in dem Ihre Datendateien gespeichert sind.path
ist ein optionaler Pfad oder ein Verzeichnis im Bucket.
Google Cloud Storage
'gcs://bucket/path/'
bucket
ist der Name des GCS-Buckets, in dem Ihre Datendateien gespeichert sind.path
ist ein optionaler Pfad oder ein Verzeichnis im Bucket.
Microsoft Azure
'azure://account.blob.core.windows.net/container/path/'
account
ist der Name des Azure-Speicherkontos.container
ist der Name des Azure-Blobspeichers, in dem Ihre Datendateien gespeichert sind.path
ist ein optionaler Pfad oder ein Verzeichnis im Bucket.
test_file_name
Der Name der Datei, die für die Validierung der Speicherintegration verwendet werden soll.
validate_action
Die auszuführende Validierungsaktion.
- Werte:
read
– Validiert, ob Snowflake von dem Speicherort lesen kann. Diese Aktion schlägt fehl, wenn die Datei nicht existiert.write
– Validiert, ob Snowflake auf den Speicherort schreiben kann. Diese Aktion schlägt fehl, wenn die Datei bereits existiert.list
– Validiert, ob Snowflake die Dateien des Speicherorts auflisten kann.delete
– Validiert, ob Snowflake Dateien des Speicherorts löschen kann.all
– Validiert alle möglichen Aktionen am Speicherort.
Rückgabewerte¶
Die Funktion gibt ein JSON-Objekt mit den unten beschriebenen Eigenschaften zurück:
Eigenschaft |
Beschreibung |
---|---|
|
Der Status des Validierungstests. Gibt den Status |
|
Array von Objekten, die die angeforderte Validierungsaktion ( |
{
"status" : "success",
"actions" : {
"READ" : {
"status" : "success"
},
"DELETE" : {
"status" : "success"
},
"LIST" : {
"status" : "success"
},
"WRITE" : {
"status" : "success"
}
}
}
Beispiele¶
Das folgende Beispiel validiert die Konfiguration der Speicherintegration example_integration
für alle Validierungsaktionen. Das Beispiel gibt ein erfolgreiches Ergebnis in JSON zurück.
SELECT
SYSTEM$VALIDATE_STORAGE_INTEGRATION(
'example_integration',
's3://example_bucket/test_path/'',
'validate_all.txt', 'all');
Ausgabe:
+----------------------------+
| RESULT |
+----------------------------+
| { |
| "status" : "success", |
| "actions" : { |
| "READ" : { |
| "status" : "success" |
| }, |
| "DELETE" : { |
| "status" : "success" |
| }, |
| "LIST" : { |
| "status" : "success" |
| }, |
| "WRITE" : { |
| "status" : "success" |
| } |
| } |
| } |
+----------------------------+
Das folgende Beispiel zeigt das Ergebnis, wenn die Speicherintegration nicht über die read
-Berechtigung verfügt.
SELECT
SYSTEM$VALIDATE_STORAGE_INTEGRATION(
'example_integration',
'gcs://example_bucket/test_path/'',
'read_fail.txt', 'all');
Ausgabe:
+----------------------------------------------------------------------------------------------------------------+
| RESULT |
+----------------------------------------------------------------------------------------------------------------+
| { |
| "status" : "failure", |
| "actions" : { |
| "READ" : { |
| "message" : "Access Denied (Status Code: 403; Error Code: AccessDenied)", |
| "status" : "failure" |
| }, |
| "DELETE" : { |
| "status" : "success" |
| }, |
| "LIST" : { |
| "status" : "success" |
| }, |
| "WRITE" : { |
| "status" : "success" |
| } |
| }, |
| "message" : "Some of the integration checks failed. Check the Snowflake documentation for more information." |
| } |
+----------------------------------------------------------------------------------------------------------------+