Alteryx Designer CloudでSnowflakeのテーブルを作成する時のオプションの挙動について解説します
Designer Cloud(Designer Experience)のOutput Dataツールにて、Snowflakeにデータを保存する際、「TABLE OPTIONS」の部分で以下のような設定が可能となっています。
- Create New
- Overwrite Existing
「Creating New」の場合は、スキーマは既存のところから選択し、テーブル名を「Table Name」に直接記載となります。
「Overwriting Existing」の場合は、以下のように既存テーブルから選択する形となります。
いずれにしても、「Continue」ボタンで次に進めますが、以下のような画面で出力時の設定を行います。以下画面は、「Create New」の場合の画面です。
「Overwriting Existing」の場合は、以下のように「Create New」以外から選択する形となります。
それではそれぞれのオプションの動きについて見ていきたいと思います。
Create New
「Create New」オプションは、最初のオプションで「Create New」を選択した時のみに選択可能です。このオプションは、新規にテーブルを作るものとなります。
ただし、2回目以降の実行の場合の動きについて注意が必要です。2回目以降実行しますと、すでに同名のテーブルが存在するということになります。
この時、元々のテーブル名に対して、作成した時間が後ろにくっついた形でテーブルが生成されます。
なお、生成時間は日本時間ではないことに注意してください(世界標準時になっているようです)。
Append
「Append」オプションは、そのまま元のテーブルにデータが追加される形になります。単なるInsertになります。
Truncate
「Truncate」オプションは、SQLのTruncateと同様、既存のテーブルの既存データを削除し、新しくデータを追加するという形になります。
Drop
「Drop」オプションは、SQLベースで考えるとDropを行った後、Create Tableするイメージとなり、一旦既存の同名テーブルを削除してからテーブルを新しく作り直します。そのため、既存のテーブルの設定(フィールドのサイズ等)は削除されます。
動きとして、文字数などは新規データギリギリ格納できるよう切り詰められた設定になってしまうので、継続的に使うようなテーブルでは注意が必要です(新たに来たデータが格納可能文字数を超えたり、などの可能性があります)。