Simple Data Integrator (SDI) バージョン2.0.2024.5から、ODBC経由でSnowflakeへのデータ同期パフォーマンスが大幅に改善されました。以前のバージョンをご利用の方には、バージョンアップをおすすめします。
はじめに
SaaS型データプラットフォームであるSnowflakeをデータウェアハウスとして採用するケースが増えています。既存システムとSnowflakeとのデータ連携が必要になる場面も多くなっており、Simple Data Integratorを使用してその連携が可能です。ここでは、PostgreSqlを例にしてそのデータ連携手順について説明します。ほかのデータベースの手順は類似します。
前提条件
以下の環境が整っていることを確認してください:
- PostgreSQLデータベース: ソースデータベースとしてのPostgreSQLへのアクセス権。
- Snowflakeアカウント: ターゲットシステムとしてのSnowflake環境。
- ODBCドライバー: Snowflakeへの接続に使用するODBCドライバーがインストールされていること。
- Simple Data Integrator: Simple Data Integratorがインストールされていること。
構成図
※一般的なカラムタイプを使用したSnowflakeテーブルを作成し、動作確認を行います。
Source (PostgreSQL)
スキーマ名:public
テーブル名:sample_table
Target (Snowflake)
スキーマ名:PUBLIC
テーブル名:SAMPLE_TABLE
テーブル構造 | |||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||
DDL | |||||||||||||||||||||||||||||||||||||||||||||
|
処理フロー
設定
1.SnowflakeへのODBC設定
Data Source名:Snowflake
参考資料:
https://docs.snowflake.com/ja/developer-guide/odbc/odbc-windows
2.コネクション設定
Source DB、Target DB への接続を設定。
ソースコネクション名 | ターゲットコネクション名 |
---|---|
POSTGRE - Public |
SNOWFLAKE |
公式資料: https://ja.sdi.ricct.com/userguide/connectionpostgre/ |
データタイプは「ODBC」を選択し、DSN名にはODBC設定時のData Source名を入力してください。 公式資料: https://ja.sdi.ricct.com/userguide/connectionodbc/ |
設定方法は下記の記事を参照:
https://qiita.com/RiCCT/items/787a41bb54277a3b26c2
3. マッピング設定
3.1 .「新規マッピング」ボタンをクリックしてマッピング設定画面を開きます。
3.2 . ソースコネクション、テーブル、ターゲットコネクション、テーブルを選択
No | 項目 | 説明 |
---|---|---|
1 | マッピング名 | マッピング名を入力、任意の名前設定できます。システムは名前の重複チェックしていないですが、管理上、ユニークの名前の設定をお勧めします。 |
2 | ソースコネクション | POSTGRE - Publicを選択 |
3 | ソーステーブル | sample_tableを選択 |
4 | コネクションコネクション | SNOWFLAKEを選択 |
5 | コネクションテーブル | PUBLIC.SAMPLE_TABLE |
6 | カラム一覧取得 |
カラム一覧取得 ボタンをクリックしてテーブル定義明細取得 |
3.3 . カラムのマッピングルールを設定
No | 項目 | 説明 |
---|---|---|
7 | ソースカラム | ターゲットカラムに対して、ソースデータの対応するカラムを選択します。同じカラムが存在する場合はデフォルトで自動マッピングされます。今回はデフォルト設定のままにします。 ソースカラム名とターゲットカラム名が異なる場合は、対応するソースカラムを選択してください。 |
8 | マッピング対象 | データ連携を行うかどうかを選択します。今回は全カラムのデータを連携します。 |
9 | 更新方式 |
Merge を選択。 更新方式についての詳細説明は下記の資料を参照: https://ja.sdi.ricct.com/userguide/mappingtarget/ |
3.4 . テスト実行
No | 項目 | 説明 |
---|---|---|
10 | ステータス | 実行成功の場合、マッピングを保存して、設定完了。 エラーが発生した場合、詳細画面でエラー内容を確認した上対応します。 |
11 | 詳細アイコン | 詳細アイコンをクリックしてLOGの詳細参照できます。 |
お勧め
マッピング実行前に、ソースとターゲットのテータ参照
ボタンをクリックして、データを確認した上実行します。マッピング成功の場合、もう一度ターゲットのデータを確認して、結果は期待通りかどうかを判断します。
データが同期されていることを確認できました。
3.5 . 保存
保存
ボタンをクリックして、マッピング設定を保存します。
定期的にデータ連携したい場合、スケジューラーを作成してマッピングを登録します。
スケジューラー設定につきまして、下記のページを参照してください。
https://ja.sdi.ricct.com/userguide/schedule/
以上です。
Simple Data Integrator (SDI) 実践入門