[エクスポートコネクション]Snowflake
概要
Airbyte を使用して、Snowflakeへデータ転送(エクスポート)をします。
接続手順
以下の手順に従い、コネクションを使用するために必要な情報を取得し、ecforce AIdp管理画面にて設定を行ってください。
※コネクション作成画面を別タブで開き、情報の取得とコネクションの設定を同時に行うことを推奨します。
Step 1:接続用の認証情報を作成する
Step 2:アカウント名を確認する
Step 3:エクスポートコネクションを作成する
Step 1:接続用の認証情報を作成する
- Snowflakeにログインする
- 【Projects > Worksheets】 にて「Create users in a SQL worksheet」をクリックし、任意のワークシートを作成する
-
ワークシートに以下のSQL文を記述し「⌘ + Shift + Enter」でまとめて実行する
▼ロール作成実行時に指定したロール名(例:AIRBYTE_ROLE)は、コネクション作成画面の項目「ロール」に設定してください。
begin; use role securityadmin;
create role if not exists "AIRBYTE_ROLE";
grant role "AIRBYTE_ROLE" to role SYSADMIN;
commit; show roles;▼ユーザー作成 ※「password」の箇所は変更する
実行時に指定したユーザー名(例:AIRBYTE_USER)とパスワード(例:password)は、コネクション作成画面の以下の項目に設定してください。
・ユーザ名 → 「ユーザー名」
・パスワード → 「パスワード」begin; use role securityadmin; create user if not exists "AIRBYTE_USER" password = "password" default_role = "AIRBYTE_ROLE" default_warehouse = "AIRBYTE_WAREHOUSE"; grant role "AIRBYTE_ROLE" to user "AIRBYTE_USER"; ALTER USER AIRBYTE_USER SET TYPE=LEGACY_SERVICE; commit; show users;
▼ウェアハウス作成
実行時に指定したウェアハウス名(例:AIRBYTE_WAREHOUSE)は、コネクション作成画面の項目「ウェアハウス」に設定してください。
begin; use role sysadmin; create warehouse if not exists "AIRBYTE_WAREHOUSE" warehouse_size = xsmall warehouse_type = standard auto_suspend = 60 auto_resume = true initially_suspended = true; grant USAGE on warehouse "AIRBYTE_WAREHOUSE" to role "AIRBYTE_ROLE"; commit; show warehouses;
▼データベース作成
実行時に指定したデータベース名(例:AIRBYTE_DATABASE)は、コネクション作成画面の項目「データベース」に設定してください。
begin; use role sysadmin; create database if not exists "AIRBYTE_DATABASE"; grant OWNERSHIP on database "AIRBYTE_DATABASE" to role "AIRBYTE_ROLE"; commit; show databases;
▼スキーマ作成
実行時に指定したスキーマ名(例:AIRBYTE_SCHEMA)は、コネクション作成画面の項目「デフォルトスキーマ」に設定してください。
begin; use role sysadmin; use database "AIRBYTE_DATABASE"; create schema if not exists "AIRBYTE_SCHEMA"; commit; show schemas;
▼スキーマとロールの紐づけ
begin; use role sysadmin; use database "AIRBYTE_DATABASE"; grant OWNERSHIP on schema "AIRBYTE_SCHEMA" to role "AIRBYTE_ROLE"; commit; show schemas;
- データベースとスキーマが作成されていることを確認する
Step 2:アカウント名を確認する
- Snowflakeにログインする
- 左メニューの「+ 作成」から「SQLワークシート」をクリックする
-
ワークシート上で以下のSQLを発行する
SELECT CURRENT_REGION(); SELECT CURRENT_ACCOUNT(); -
取得した値からアカウント名(ホスト名)を取得し、コピーする
※リージョン、アカウント名は全て小文字に変換する
例) 「AWS_AP_NORTHEAST_1」「NZ49383」の場合、アカウント名は「nz49383.ap-northeast-1.aws.snowflakecomputing.com」コピーした値は、エクスポートコネクション作成画面の場合は項目「ホスト」に設定してください。
Step 3:エクスポートコネクションを作成する
- ecforce AIdp管理画面にて、「コネクション > コネクションを作成 > エクスポート用コネクションを作成する」をクリックする
- 「Snowflake」を選択して「決定」をクリックする
-
以下の項目を入力して、「接続確認をして保存」をクリックする
項目 説明 接続先サービス 選択した接続先サービス名が表示されます。 接続先名 接続先の名前を設定できます。
※管理用の名前です。説明 接続先の説明が設定できます。 項目 説明 ホスト Step 2:アカウント名を確認するの手順4でコピーした「アカウント名」を設定してください。 ロール Step 1:接続用の認証情報を作成するの手順3「▼ロール作成」で作成したロール名を設定してください。 例)AIRBYTE_ROLE ウェアハウス Step 1:接続用の認証情報を作成するの手順3「▼ウェアハウス作成」で作成したウェアハウス名を設定してください。 例)AIRBYTE_WAREHOUSE データベース Step 1:接続用の認証情報を作成するの手順3「▼データベース作成」で作成したデータベース名を設定してください。 例)AIRBYTE_DATABASE デフォルトスキーマ Step 1:接続用の認証情報を作成するの手順3「▼スキーマ作成」で作成したスキーマ名を設定してください。 例)AIRBYTE_SCHEMA ユーザー名 Step 1:接続用の認証情報を作成するの手順3「▼ユーザー作成」で作成したユーザー名 例)AIRBYTE_USER 認可方式 「ユーザー名とパスワード」を選択してください。 パスワード Step 1:接続用の認証情報を作成するの手順3「▼ユーザー作成」で作成したパスワード JDBC URL パラメータ
※オプションデータベースに接続する際にJDBC URL文字列に渡す追加プロパティを設定してください。
※「&」で区切られたキーを値のペアとしてフォーマットします。RAW テーブルのスキーマ名
※オプションRAW テーブルを書き込むスキーマ名を設定出来ます。 データ保持期間(日) テーブルに適用する Snowflake Time Travel の日数を設定出来ます。
※詳細はこちらFinal テーブルの重複排除に MERGE を使う Final テーブルの重複排除に「MERGE」を使うか否かを設定できます。
※Final テーブルが有効、または同期モードが「DEDUPE」の場合にのみ使用できます。
この記事の目次
このセクションの記事