snow stage copy

ターゲットパスからターゲットディレクトリにすべてのファイルをコピーします。これはステージへのアップロードとステージからのダウンロードの両方で機能します。

構文

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>
  --format <format>
  --verbose
  --debug
  --silent
Copy

引数

source_path

コピー操作のソースパス。ステージパスまたはローカルのいずれかになります。ローカル・ファイルにはグロブ・パターンを使うことができますが、パターンは引用符で囲む必要があります。

destination_path

コピー操作のターゲットディレクトリパス。ソースがローカルの場合はステージ、ソースがステージの場合はローカルになります。

オプション

--overwrite / --no-overwrite

ターゲットパス内の既存のファイルを上書きします。デフォルト: false。

--parallel INTEGER

ファイルアップロード時に使用する並列スレッド数。デフォルト: 4。

--recursive / --no-recursive

ディレクトリ構造を使用してファイルを再帰的にコピーします。デフォルト: false。

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

Snowflakeがgzipを使用してアップロード中にファイルを圧縮するかどうかを指定します。ダウンロード中は無視されます。デフォルト: false。

--connection, -c, --environment TEXT

config.toml ファイルで定義されている接続の名前。デフォルト: デフォルト

--host TEXT

接続用のホストアドレス。接続に指定された値を上書きします。

--port INTEGER

接続のポート。接続に指定された値を上書きします。

--account, --accountname TEXT

Snowflakeアカウントに割り当てられた名前。接続に指定された値を上書きします。

--user, --username TEXT

Snowflakeに接続するユーザー名。接続に指定された値を上書きします。

--password TEXT

Snowflakeのパスワード。接続に指定された値を上書きします。

--authenticator TEXT

Snowflakeの認証コード。接続に指定された値を上書きします。

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

Snowflake プライベートキーファイルへのパス。接続に指定された値を上書きします。

--token-file-path TEXT

Snowflake に接続する際に使用する OAuth トークンを含むファイルへのパス。

--database, --dbname TEXT

使用するデータベース。接続に指定された値を上書きします。

--schema, --schemaname TEXT

使用するデータベーススキーマ。接続に指定された値を上書きします。

--role, --rolename TEXT

使用するロール。接続に指定された値を上書きします。

--warehouse TEXT

使用するウェアハウス名。接続に指定された値を上書きします。

--temporary-connection, -x

構成で定義された接続ではなく、コマンドラインパラメーターで定義された接続を使用します。デフォルト: false。

--mfa-passcode TEXT

多要素認証(MFA)に使用するトークン。

--enable-diag

Pythonコネクター診断テストを実行します。デフォルト: false。

--diag-log-path TEXT

診断レポートパス。デフォルト: <temporary_directory>

--diag-allowlist-path TEXT

オプションの許可リストへの診断レポートパス。

--format [TABLE|JSON]

出力形式を指定します。デフォルト: TABLE

--verbose, -v

ログレベル info 以上のログエントリを表示します。デフォルト: false。

--debug

ログレベル debug 以上のログ エントリを表示します。デバッグログには追加情報が含まれます。デフォルト: false。

--silent

コンソールへの中間出力をオフにします。デフォルト: false。

--help

このコマンドのヘルプテキストを表示します。

使用上の注意

  • SOURCE_PATH または DESTINATION_PATH のいずれかはローカルディレクトリである必要があり、もう一方はSnowflakeステージ内のディレクトリである必要があります。ステージパスは「@」で始まる必要があります。例:

    • snow stage copy @my_stage dir/ - my_stage ステージからローカルの dir ディレクトリにファイルをコピーします。

    • snow stage copy dir/ @my_stage - ローカルの dir ディレクトリから my_stage にファイルをコピーします。

  • source_path 引数にglobパターンを使用すると、正規表現に一致する複数のファイルを指定できます。globパターンは一重引用符または二重引用符で囲む必要があります。

  • ローカルマシンからステージにファイルをコピーするには、次のようなコマンドを使用します。

    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             ...
    +--------------------------------------------------------------------------------------
    
  • ステージからローカルディレクトリにファイルをダウンロードするには、次のようなコマンドを使用します。

    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 |         |
    +------------------------------------------------+
    
  • 次の例では、ディレクトリ内のすべての .txt ファイルをステージにコピーします。

    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 |         |
    +------------------------------------------------------------------------------------------------------------+