- Catégories :
Fonctions système (Informations système)
SYSTEM$VALIDATE_STORAGE_INTEGRATION¶
Valide la configuration d’une intégration de stockage spécifiée. La fonction tente d’utiliser l’intégration de stockage pour écrire, lire, lister ou supprimer un fichier pour un emplacement de stockage que vous spécifiez par chemin.
Pour plus d’informations sur la configuration des intégrations de stockage, voir :
- Voir aussi :
Syntaxe¶
SYSTEM$VALIDATE_STORAGE_INTEGRATION( '<storage_integration_name>', '<storage_path>', '<test_file_name>', '<validate_action>' )
Arguments¶
storage_integration_nameNom de l’intégration de stockage à tester.
Les noms d’intégration de stockage sont sensibles à la casse.
storage_pathChemin d’accès complet à un emplacement de stockage que vous souhaitez valider. Le chemin d’accès au stockage doit être une URL figurant dans la liste
STORAGE_ALLOWED_LOCATIONSpour l’intégration de stockage.Amazon S3
's3://bucket/path/'Le préfixe
s3fait référence au stockage S3 dans les régions publiques AWS. Le préfixes3govfait référence au stockage S3 dans les régions gouvernementales.bucketest le nom d’un compartiment S3 qui stocke vos fichiers de données.pathest un chemin d’accès ou un répertoire facultatif figurant dans le compartiment.
Google Cloud Storage
'gcs://bucket/path/'bucketest le nom d’un compartiment GCS qui stocke vos fichiers de données.pathest un chemin d’accès ou un répertoire facultatif figurant dans le compartiment.
Microsoft Azure
'azure://account.blob.core.windows.net/container/path/'accountest le nom du compte de stockage Azure.containerest le nom d’un conteneur de stockage blob Azure qui stocke vos fichiers de données.pathest un chemin d’accès ou un répertoire facultatif figurant dans le compartiment.
test_file_nameNom du fichier à utiliser pour la validation de l’intégration de stockage.
validate_actionAction de validation à effectuer.
- Valeurs :
read- Valide le fait que Snowflake peut lire à partir de l’emplacement de stockage. Cette action échoue si le fichier n’existe pas.write- Valide le fait que Snowflake peut écrire dans l’emplacement de stockage. Cette action échoue si le fichier existe déjà.list- Valide le fait que Snowflake peut établir la liste des fichiers de l’emplacement de stockage.delete- Valide le fait que Snowflake peut supprimer des fichiers dans l’emplacement de stockage.all- Valide toutes les actions possibles dans l’emplacement de stockage.
Renvoie¶
La fonction renvoie un objet JSON avec les propriétés décrites ci-dessous :
Propriété |
Description |
|---|---|
|
Statut du test de validation. Renvoie un statut de |
|
Tableau d’objets contenant l’action de validation demandée ( |
{
"status" : "success",
"actions" : {
"READ" : {
"status" : "success"
},
"DELETE" : {
"status" : "success"
},
"LIST" : {
"status" : "success"
},
"WRITE" : {
"status" : "success"
}
}
}
Exemples¶
L’exemple suivant valide la configuration de l’intégration de stockage example_integration pour toutes les actions de validation. L’exemple renvoie un résultat positif au format JSON.
SELECT
SYSTEM$VALIDATE_STORAGE_INTEGRATION(
'example_integration',
's3://example_bucket/test_path/'',
'validate_all.txt', 'all');
Sortie :
+----------------------------+
| RESULT |
+----------------------------+
| { |
| "status" : "success", |
| "actions" : { |
| "READ" : { |
| "status" : "success" |
| }, |
| "DELETE" : { |
| "status" : "success" |
| }, |
| "LIST" : { |
| "status" : "success" |
| }, |
| "WRITE" : { |
| "status" : "success" |
| } |
| } |
| } |
+----------------------------+
L’exemple suivant montre le résultat lorsque l’intégration de stockage ne dispose pas d’autorisations read.
SELECT
SYSTEM$VALIDATE_STORAGE_INTEGRATION(
'example_integration',
'gcs://example_bucket/test_path/'',
'read_fail.txt', 'all');
Sortie :
+----------------------------------------------------------------------------------------------------------------+
| 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." |
| } |
+----------------------------------------------------------------------------------------------------------------+