snow stage copy¶
Copia todos os arquivos do caminho de destino para o diretório de destino. Isso funciona tanto para carregar quanto para baixar arquivos do estágio.
Sintaxe¶
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
Argumentos¶
source_path
Caminho de origem para operação de cópia. Pode ser um caminho de estágio ou local. É possível usar um padrão glob para arquivos locais, mas o padrão deve estar entre aspas.
destination_path
Caminho do diretório de destino para operação de cópia. Deve ser estágio se a origem for local ou local se a origem for estágio.
Opções¶
--overwrite / --no-overwrite
Substitui arquivos existentes no caminho de destino. Padrão: falso.
--parallel INTEGER
Número de threads paralelos a serem usados ao enviar arquivos. Padrão: 4.
--recursive / --no-recursive
Copie arquivos recursivamente com estrutura de diretório. Padrão: falso.
--auto-compress / --no-auto-compress
Especifica se o Snowflake usa gzip para comprimir arquivos durante o upload. Ignorado durante o download. Padrão: falso.
--connection, -c, --environment TEXT
Nome da conexão, conforme definido no arquivo
config.toml
. Padrão:default
.--host TEXT
Endereço do host da conexão. Substitui o valor especificado para a conexão.
--port INTEGER
Porta para a conexão. Substitui o valor especificado para a conexão.
--account, --accountname TEXT
Nome atribuído à sua conta Snowflake. Substitui o valor especificado para a conexão.
--user, --username TEXT
Nome de usuário para se conectar ao Snowflake. Substitui o valor especificado para a conexão.
--password TEXT
Senha do Snowflake. Substitui o valor especificado para a conexão.
--authenticator TEXT
Autenticador Snowflake. Substitui o valor especificado para a conexão.
--private-key-file, --private-key-path TEXT
Caminho do arquivo de chave privada Snowflake. Substitui o valor especificado para a conexão.
--token-file-path TEXT
Caminho para o arquivo com um token OAuth a ser usado ao se conectar ao Snowflake.
--database, --dbname TEXT
Banco de dados a ser usado. Substitui o valor especificado para a conexão.
--schema, --schemaname TEXT
Esquema de banco de dados a ser usado. Substitui o valor especificado para a conexão.
--role, --rolename TEXT
Função a ser usada. Substitui o valor especificado para a conexão.
--warehouse TEXT
Warehouse a ser usado. Substitui o valor especificado para a conexão.
--temporary-connection, -x
Usa uma conexão definida com parâmetros de linha de comando, em vez de uma definida na configuração. Padrão: falso.
--mfa-passcode TEXT
Token a ser usado para autenticação multifator (MFA).
--enable-diag
Se deve gerar um relatório de diagnóstico de conexão. Padrão: falso.
--diag-log-path TEXT
Caminho para o relatório gerado. O padrão é o diretório temporário do sistema. Padrão: <system_temporary_directory>.
--diag-allowlist-path TEXT
Caminho para um arquivo JSON que contém parâmetros da lista de permissões.
--oauth-client-id TEXT
Valor do ID de cliente fornecido pelo provedor de identidade para integração com o Snowflake.
--oauth-client-secret TEXT
Valor do segredo do cliente fornecido pelo provedor de identidade para integração com o Snowflake.
--oauth-authorization-url TEXT
Ponto de extremidade do provedor de identidade que fornece o código de autorização ao driver.
--oauth-token-request-url TEXT
Ponto de extremidade do provedor de identidade que fornece os tokens de acesso ao driver.
--oauth-redirect-uri TEXT
URI a ser usado para redirecionamento de código de autorização.
--oauth-scope TEXT
Escopo solicitado na solicitação de autorização do provedor de identidade.
--oauth-disable-pkce
Desativa o Proof Key for Code Exchange (PKCE). Padrão:
False
.--oauth-enable-refresh-tokens
Permite uma reautenticação silenciosa quando o token de acesso real fica desatualizado. Padrão:
False
.--oauth-enable-single-use-refresh-tokens
Se o usuário deve optar pela semântica de token de atualização de uso único. Padrão:
False
.--client-store-temporary-credential
Armazena a credencial temporária.
--format [TABLE|JSON]
Especifica o formato de saída. Padrão: TABLE.
--verbose, -v
Exibe entradas de log para os níveis de log
info
e superiores. Padrão: falso.--debug
Exibe entradas de log para níveis de log de
depuração
e superiores; os logs de depuração contêm informações adicionais. Padrão: falso.--silent
Desliga a saída intermediária para o console. Padrão: falso.
--enhanced-exit-codes
Diferencia os códigos de erro de saída com base no tipo de falha. Padrão: falso.
--help
Exibe o texto de ajuda para este comando.
Notas de uso¶
Um de
SOURCE_PATH
ouDESTINATION_PATH
deve ser um diretório local, enquanto o outro deve ser um diretório no estágio Snowflake. O caminho do estágio deve começar com “@”. Por exemplo:snow stage copy @my_stage dir/
- copia arquivos do estágiomy_stage
para o diretório localdir
.snow stage copy dir/ @my_stage
- copia arquivos do diretório localdir
paramy_stage
.
Você pode especificar vários arquivos que correspondem a uma expressão regular usando um padrão glob para o argumento
source_path
. Você deve colocar o padrão glob entre aspas simples ou duplas.
Exemplos¶
Para copiar arquivos da máquina local para um estágio, use um comando semelhante ao seguinte:
snow stage copy local_example_app @example_app_stage/app
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 ... +--------------------------------------------------------------------------------------
Para baixar arquivos de um estágio para um diretório local, use um comando semelhante ao seguinte:
mkdir local_app_backup snow stage copy @example_app_stage/app local_app_backup
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 | | +------------------------------------------------+
O exemplo a seguir copia todos os arquivos
.txt
em um diretório para um estágio.snow stage copy "testdir/*.txt" @TEST_STAGE_3
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 | | +------------------------------------------------------------------------------------------------------------+