転送先 - Snowflake
- 07 Aug 2023
- 1 分で読み終わります
- 印刷
- ダークライト
転送先 - Snowflake
- 更新日 07 Aug 2023
- 1 分で読み終わります
- 印刷
- ダークライト
Article Summary
Share feedback
Thanks for sharing your feedback!
概要
Snowflakeへデータを転送する設定のヘルプページです。
対応プロトコル
- データ転送(Embulk)
embulk-output-snowflake (v0.5.0)を使用
制約
- 転送先Snowflakeでは、認証方式でユーザ・パスワード認証を選択した接続情報のみ、使用できます。
設定項目
STEP1 基本設定
項目名 | 必須 | デフォルト値 | 内容 |
---|---|---|---|
Snowflake接続情報 | Yes | - | あらかじめ登録してあるSnowflakeの接続情報から、今回の転送設定に必要な権限を持つものを選択します。 |
ウェアハウス | Yes | - | データを転送したい先のウェアハウスを選択します。 |
データベース | Yes | - | データを転送したい先のデータベース名を選択します。 |
スキーマ | Yes | - | データを転送したい先のスキーマ名を選択します。 |
テーブル | Yes | - | データを転送したい先のテーブル名を入力します。 |
転送モード | Yes | 追記 (INSERT ) | 転送モードを選択します。 各転送モードについて、詳しくは後述の転送モードについてを参照ください。 |
マージキー | No | - | 転送モードでUPSERT (MERGE) を選択したときに入力します。マージキー(主キー)扱いとする、値の重複がなく、NULL値も持たないカラムの名前を入力してください。 |
STEP1の詳細設定
詳細設定をクリックすると、設定項目が表示されます。
項目名 | デフォルト値 | 内容 |
---|---|---|
空文字をNULLに置換する | ON | 空文字をNULLに置換するかどうかを選択できます。 空文字のまま転送したい場合は、設定をOFFにしてください。 |
STEP2 出力オプション
項目名 | デフォルト値 | 詳細 |
---|---|---|
カラム設定 | - | 一時テーブルを作る際のカラムを指定します。型のデフォルト値は以下のとおりです。boolean : BOOLEAN string :VARCHAR(65535) long : BIGINT double : DOUBLE PRECISION timestamp : TIMESTAMP_NTZ(9) json : VARIANT 上記以外を使用したい場合に設定が必要となります。 指定できる型について、詳しくは公式ドキュメントを参照ください。 |
最大リトライ回数 | 12 | リトライを最大何回まで実行するかを指定します。 |
リトライ待ち時間 | 1,000 | リトライ時の待ち時間を指定します。 |
リトライ待ち時間の最大値 | 1,800,000 | リトライ時の待ち時間の最大値を指定します。 |
デフォルトのタイムゾーン | UTC | timestamp 型のカラムに指定するタイムゾーンを入力します。 |
転送モードについて
モード | 詳細 |
---|---|
追記 (INSERT ) | テーブルへの追記を行います。 はじめに一時テーブルを生成してそこにデータを投入し、次に一時テーブルから転送先テーブルへの INSERT を行います。そのため、転送が途中で失敗した際に中途半端なデータが転送先テーブルに残ることがありません。 また、転送先テーブルが存在しない場合は自動的にテーブルを作成します。 |
追記 (INSERT DIRECT ) | テーブルへの追記を行います。 一時テーブル等は作成せず、直接転送先テーブルにデータを投入します。 そのため、転送が途中で失敗した際には中途半端な状態のデータが残る場合があります。 また、転送先テーブルが存在しない場合は自動的にテーブルを作成します。 |
全件洗い替え (TRUNCATE INSERT ) | テーブルの洗い替えを行います。 はじめに一時テーブルを生成してそこにデータを投入し、次に一時テーブルから転送先テーブルへの INSERT を行います。なお、 INSERT の直前にTRUNCATE を行うため、洗い替えとなります。 |
全件洗い替え (REPLACE ) | テーブルの洗い替えを行います。 はじめに一時テーブルを生成してそこにデータを投入し、これが成功した場合、転送先のテーブルを削除し一時テーブルの名前を変更します。 |
UPSERT (MERGE) | テーブルのUPSERT を行います。はじめに一時テーブルを生成し、そこにデータをすべて投入します。 次に転送先テーブルに対して、一時テーブルにキーが存在するレコードを更新し、その後キーが存在しないレコードを挿入します。 なお、マージキーにNULLが含まれている場合は正しく機能しません。 |
この記事は役に立ちましたか?