概要
本記事では、Informatica Intelligent Data Management Cloud (IDMC) のデータ統合機能である Cloud Data Ingestion and Replication (CDIR) のパフォーマンスを劇的に向上させるオプション 「Snowflake Superpipe」 について紹介します。
オンプレミスDBからSnowflakeへのデータ移行や、ハイブリッドクラウド環境でのデータ統合において、大量のテーブルやデータを一括で転送する「データレプリケーション」は非常に重要な機能です。
通常、Secure Agentのスペック(CPU/メモリ)を強化することでもパフォーマンスは改善しますが、Snowflake Superpipe を活用することで、アーキテクチャレベルでの最適化によるさらなる高速化が可能になります。本記事では、その設定方法と事前準備について解説します。
設定方法
IDMC画面上の設定は非常にシンプルです。
Snowflakeターゲットの設定画面で、「Superpipe」 オプションにチェックを入れるだけで完了します。
このオプションを有効にすると、画面上部の「Stage」設定項目が不要となり、Snowflakeの内部最適化パイプラインを通じて直接データが書き込まれるようになります。
事前準備
IDMC側の設定は簡単ですが、Snowflake側で Superpipeを利用するための権限設定 と キーペア(Key Pair)認証 の準備が必要です。
1. ユーザー・ロールの作成と権限付与
以下は、Superpipeを利用するために必要な最低限の権限設定例です。環境に合わせて適宜修正して実行してください。
-- ユーザーとロールの作成
create user INFACMI_User password='xxxx';
create role INFACMI_superpipe;
grant role INFACMI_superpipe to user INFACMI_User;
-- ウェアハウス・データベースの使用権限
grant usage on warehouse COMPUTE_WH to role INFACMI_superpipe;
grant usage on database NICKDB to role INFACMI_superpipe;
grant usage on schema NICKDB.ANICK to role INFACMI_superpipe;
grant create stream, create view, create table, usage on schema NICKDB.ANICK to role INFACMI_superpipe;
-- デフォルトロールの設定
alter user INFACMI_User set default_role=INFACMI_superpipe;
2. キーペア認証の設定
Superpipeを利用するには、IDMCのSnowflake接続設定で キーペア認証 を選択する必要があります。
Secure Agentサーバー上で秘密鍵(Private Key)を生成し、そのパスをIDMCの接続プロパティに設定します。

秘密鍵の生成:
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -v2 AES-256-CBC -out rsa_key.p8
Public Keyを生成します。
openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub
Snowflakeユーザーへの公開鍵の紐付け: Snowflake上で生成した公開鍵の内容(ヘッダー/フッターを除いた文字列)をユーザーに付与します。
alter user INFACMI_User set rsa_public_key= 'MIIBIjANBgk.....AB';
パフォーマンス確認
設定完了後、ジョブを実行して通常のロード処理と比較してみてください。

スペックに関する注意点 CDIRを効率的に動作させるためには、Secure Agentサーバーに最低でも 8コアCPU、16GBメモリ 以上のスペックが推奨されます。これ以下のスペックの場合、Superpipeを有効にしてもハードウェア側のリソースがボトルネックとなり、十分なパフォーマンス向上が得られない可能性があります。
まとめ
大量データのレプリケーションにおいて、Snowflake Superpipeは非常に強力な機能です。特に初期移行などでデータ量が多い場合には、大きな時間短縮が見込めます。ぜひ活用してみてください。
