- 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_name
Nom de l’intégration de stockage à tester.
Les noms d’intégration de stockage sont sensibles à la casse.
storage_path
Chemin 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_LOCATIONS
pour l’intégration de stockage.Amazon S3
's3://bucket/path/'
Le préfixe
s3
fait référence au stockage S3 dans les régions publiques AWS. Le préfixes3gov
fait référence au stockage S3 dans les régions gouvernementales.bucket
est le nom d’un compartiment S3 qui stocke vos fichiers de données.path
est un chemin d’accès ou un répertoire facultatif figurant dans le compartiment.
Google Cloud Storage
'gcs://bucket/path/'
bucket
est le nom d’un compartiment GCS qui stocke vos fichiers de données.path
est un chemin d’accès ou un répertoire facultatif figurant dans le compartiment.
Microsoft Azure
'azure://account.blob.core.windows.net/container/path/'
account
est le nom du compte de stockage Azure.container
est le nom d’un conteneur de stockage blob Azure qui stocke vos fichiers de données.path
est un chemin d’accès ou un répertoire facultatif figurant dans le compartiment.
test_file_name
Nom du fichier à utiliser pour la validation de l’intégration de stockage.
validate_action
Action 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." |
| } |
+----------------------------------------------------------------------------------------------------------------+