snow stage copy

Copie tous les fichiers du chemin cible dans le répertoire cible. Cela fonctionne aussi bien pour la mise en zone de préparation que pour le téléchargement de fichiers.

Syntaxe

snow stage copy
  <source_path>
  <destination_path>
  --overwrite / --no-overwrite
  --parallel <parallel>
  --recursive / --no-recursive
  --auto-compress / --no-auto-compress
  --connection <connection>
  --host <host>
  --port <port>
  --account <account>
  --user <user>
  --password <password>
  --authenticator <authenticator>
  --private-key-file <private_key_file>
  --token-file-path <token_file_path>
  --database <database>
  --schema <schema>
  --role <role>
  --warehouse <warehouse>
  --temporary-connection
  --mfa-passcode <mfa_passcode>
  --enable-diag
  --diag-log-path <diag_log_path>
  --diag-allowlist-path <diag_allowlist_path>
  --oauth-client-id <oauth_client_id>
  --oauth-client-secret <oauth_client_secret>
  --oauth-authorization-url <oauth_authorization_url>
  --oauth-token-request-url <oauth_token_request_url>
  --oauth-redirect-uri <oauth_redirect_uri>
  --oauth-scope <oauth_scope>
  --oauth-disable-pkce
  --oauth-enable-refresh-tokens
  --oauth-enable-single-use-refresh-tokens
  --client-store-temporary-credential
  --format <format>
  --verbose
  --debug
  --silent
  --enhanced-exit-codes
Copy

Arguments

source_path

Chemin source pour l’opération de copie. Il peut s’agir d’un chemin de zone de préparation ou d’un chemin local. Vous pouvez utiliser un modèle glob pour les fichiers locaux, mais le modèle doit être placé entre guillemets.

destination_path

Chemin du répertoire cible pour l’opération de copie. Doit être une zone de préparation si la source est locale ou une zone de préparation si la source est une zone de préparation.

Options

--overwrite / --no-overwrite

Écrase les fichiers existants dans le chemin cible. Par défaut : false.

--parallel INTEGER

Nombre de threads parallèles à utiliser lors du téléchargement de fichiers. Par défaut : 4

--recursive / --no-recursive

Copiez des fichiers de manière récursive avec la structure du répertoire. Par défaut : false.

--auto-compress / --no-auto-compress

Indique si Snowflake utilise gzip pour compresser les fichiers pendant le chargement. Ignoré lors du téléchargement. Par défaut : false.

--connection, -c, --environment TEXT

Nom de la connexion, tel que défini dans votre fichier config.toml. Défaut : défaut.

--host TEXT

Adresse de l’hôte pour la connexion. Remplace la valeur spécifiée pour la connexion.

--port INTEGER

Port pour la connexion. Remplace la valeur spécifiée pour la connexion.

--account, --accountname TEXT

Nom attribué à votre compte Snowflake. Remplace la valeur spécifiée pour la connexion.

--user, --username TEXT

Nom d’utilisateur pour se connecter à Snowflake. Remplace la valeur spécifiée pour la connexion.

--password TEXT

Mot de passe Snowflake. Remplace la valeur spécifiée pour la connexion.

--authenticator TEXT

Authentificateur Snowflake. Remplace la valeur spécifiée pour la connexion.

--private-key-file, --private-key-path TEXT

Chemin du fichier de clé privée Snowflake. Remplace la valeur spécifiée pour la connexion.

--token-file-path TEXT

Chemin d’accès au fichier contenant un jeton OAuth à utiliser lors de la connexion à Snowflake.

--database, --dbname TEXT

Base de données à utiliser. Remplace la valeur spécifiée pour la connexion.

--schema, --schemaname TEXT

Schéma de la base de données à utiliser. Remplace la valeur spécifiée pour la connexion.

--role, --rolename TEXT

Rôle à utiliser. Remplace la valeur spécifiée pour la connexion.

--warehouse TEXT

Entrepôt à utiliser. Remplace la valeur spécifiée pour la connexion.

--temporary-connection, -x

Utilise une connexion définie avec les paramètres de la ligne de commande, au lieu d’une connexion définie dans la configuration. Par défaut : false.

--mfa-passcode TEXT

Jeton à utiliser pour l’authentification multifactorielle (MFA)

--enable-diag

Indique s’il faut générer un rapport de diagnostic de la connexion. Par défaut : false.

--diag-log-path TEXT

Chemin d’accès au rapport généré. Il s’agit du répertoire temporaire du système par défaut. Par défaut : <system_temporary_directory>.

--diag-allowlist-path TEXT

Chemin d’accès à un fichier JSON contenant les paramètres de la liste d’autorisations.

--oauth-client-id TEXT

Valeur de l’identifiant du client fourni par le fournisseur d’identité pour l’intégration dans Snowflake.

--oauth-client-secret TEXT

Valeur du secret du client fourni par le fournisseur d’identité pour l’intégration dans Snowflake.

--oauth-authorization-url TEXT

Point de terminaison du fournisseur d’identité fournissant le code d’autorisation au pilote.

--oauth-token-request-url TEXT

Point de terminaison du fournisseur d’identité fournissant les jetons d’accès au pilote.

--oauth-redirect-uri TEXT

URI à utiliser pour la redirection du code d’autorisation.

--oauth-scope TEXT

Champ d’application demandé dans la requête d’autorisation du fournisseur d’identité.

--oauth-disable-pkce

Désactive la clé de preuve pour l’échange de code (PKCE). Par défaut : False.

--oauth-enable-refresh-tokens

Permet une réauthentification silencieuse lorsque le jeton d’accès actuel n’est plus valable. Par défaut : False.

--oauth-enable-single-use-refresh-tokens

Indique s’il faut choisir une sémantique de jeton d’actualisation à usage unique. Par défaut : False.

--client-store-temporary-credential

Enregistrez les identifiants de connexion temporaires.

--format [TABLE|JSON]

Spécifie le format de sortie. Par défaut : TABLE.

--verbose, -v

Affiche les entrées de journal pour les niveaux de journalisation info et supérieurs. Par défaut : false.

--debug

Affiche les entrées de journal pour les niveaux de journalisation debug et supérieurs ; les journaux de débogage contiennent des informations supplémentaires. Par défaut : false.

--silent

Désactive la sortie intermédiaire vers la console. Par défaut : false.

--enhanced-exit-codes

Différenciez les codes d’erreur de sortie en fonction du type d’erreur. Par défaut : false.

--help

Affiche le texte d’aide de cette commande.

Notes sur l’utilisation

  • L’un des deux SOURCE_PATH ou DESTINATION_PATH doit être un répertoire local, tandis que l’autre doit être un répertoire de la zone de préparation Snowflake. Le chemin de la zone de préparation doit commencer par « @ ». Par exemple :

    • snow stage copy @my_stage dir/ - copie les fichiers de la zone de préparation my_stage dans le répertoire local dir.

    • snow stage copy dir/ @my_stage - copie les fichiers du répertoire local dir vers my_stage.

  • Vous pouvez spécifier plusieurs fichiers correspondant à une expression régulière en utilisant un modèle global pour l’argument source_path. Vous devez placer le modèle global entre guillemets simples ou doubles.

Exemples

  • Pour copier des fichiers de la machine locale vers une zone de préparation, utilisez une commande similaire à la suivante :

    snow stage copy local_example_app @example_app_stage/app
    
    Copy
    put file:///.../local_example_app/* @example_app_stage/app4 auto_compress=false parallel=4 overwrite=False
    +--------------------------------------------------------------------------------------
    | source           | target           | source_size | target_size | source_compression...
    |------------------+------------------+-------------+-------------+--------------------
    | environment.yml  | environment.yml  | 62          | 0           | NONE             ...
    | snowflake.yml    | snowflake.yml    | 252         | 0           | NONE             ...
    | streamlit_app.py | streamlit_app.py | 109         | 0           | NONE             ...
    +--------------------------------------------------------------------------------------
    
  • Pour télécharger des fichiers d’une zone de préparation vers un répertoire local, utilisez une commande similaire à la suivante :

    mkdir local_app_backup
    snow stage copy @example_app_stage/app local_app_backup
    
    Copy
    get @example_app_stage/app file:///.../local_app_backup/ parallel=4
    +------------------------------------------------+
    | file             | size | status     | message |
    |------------------+------+------------+---------|
    | environment.yml  | 62   | DOWNLOADED |         |
    | snowflake.yml    | 252  | DOWNLOADED |         |
    | streamlit_app.py | 109  | DOWNLOADED |         |
    +------------------------------------------------+
    
  • L’exemple suivant copie tous les fichiers .txt d’un répertoire dans une zone de préparation.

    snow stage copy "testdir/*.txt" @TEST_STAGE_3
    
    Copy
    put file:///.../testdir/*.txt @TEST_STAGE_3 auto_compress=false parallel=4 overwrite=False
    +------------------------------------------------------------------------------------------------------------+
    | source | target | source_size | target_size | source_compression | target_compression | status   | message |
    |--------+--------+-------------+-------------+--------------------+--------------------+----------+---------|
    | b1.txt | b1.txt | 3           | 16          | NONE               | NONE               | UPLOADED |         |
    | b2.txt | b2.txt | 3           | 16          | NONE               | NONE               | UPLOADED |         |
    +------------------------------------------------------------------------------------------------------------+