Informatica Enterprise Data Catalog で Snowflake のデータ を追加
Informatica は、データの転送と変換を行うための強力で洗練された手段を提供します。CData JDBC Driver for Snowflake を使用すると、業界標準に準拠したドライバーを通じて Informatica Enterprise Data Catalog とシームレスに連携できます。このチュートリアルでは、あらゆる環境で Snowflake データを分類・整理する方法を説明します。
Snowflake データ連携について
CData は、Snowflake のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- Snowflake データを迅速かつ効率的に読み書きできます。
- 指定された Warehouse、Database、Schema のメタデータを動的に取得できます。
- OAuth、OKTA、Azure AD、Azure マネージド サービス ID、PingFederate、秘密鍵など、さまざまな方法で認証できます。
多くの CData ユーザーは、CData ソリューションを使用して、お気に入りのツールやアプリケーションから Snowflake にアクセスし、さまざまなシステムからデータを Snowflake にレプリケートして、包括的なウェアハウジングと分析を行っています。
CData ソリューションとの Snowflake 統合についての詳細は、ブログをご覧ください:https://jp.cdata.com/blog/snowflake-integrations
はじめに
JDBC ドライバーのロード
JDBC ドライバーをロードするには:
- Informatica が動作しているホストに JDBC ドライバーをインストールします。この記事では、ドライバーが cdata.jdbc.snowflake.SnowflakeDriver にインストールされていることを前提としています。
- JDBC インストールディレクトリに移動し、ドライバーとそのライセンスファイルを含む genericJDBC.zip という名前の zip ファイルを作成します。
- genericJDBC.zip ファイルを Informatica 内の Catalog Service ディレクトリに移動します。この記事では、Informatica が /opt/informatica にインストールされていることを前提としています。このフォルダでの作業には、おそらく root 権限が必要です。続行する前に、su または sudo で root に切り替えてください。
- zip ファイルを展開するために、カスタムデプロイメント設定を編集します。
- Admin コンソールから Catalog Service をリフレッシュします。
$ java -jar setup.jar
$ cd ~/cdata-jdbc-driver-for-snowflake/lib $ zip genericJDBC.zip cdata.jdbc.snowflake.jar cdata.jdbc.snowflake.lic
# mv genericJDBC.zip /opt/informatica/services/CatalogService/ScannerBinaries
# cd /opt/informatica/services/CatalogService/ScannerBinaries/CustomDeployer/ # nano scannerDeployer.xml
既存の ExecutionContextProperty ノードを展開した後、以下の内容で新しい ExecutionContextProperty ノードを追加します。
<ExecutionContextProperty
isLocationProperty="true"
dependencyToUnpack="genericJDBC.zip">
<PropertyName>JDBCScanner_DriverLocation</PropertyName>
<PropertyValue>scanner_miti/genericJDBC/Drivers</PropertyValue>
</ExecutionContextProperty>
JDBC リソースの設定
JDBC リソースを設定するには:
- Catalog 管理画面を開き、以下のプロパティで新しい JDBC リソースを追加します:
- Driver Class: cdata.jdbc.snowflake.SnowflakeDriver
- URL: jdbc.snowflake:User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;
- Url:お使いのSnowflake URL を指定します。例:https://orgname-myaccount.snowflakecomputing.com
- Legacy URL を使用する場合:https://myaccount.region.snowflakecomputing.com
- ご自身のURL は以下のステップで確認できます。
- Snowflake UI の左下にあるユーザー名をクリックします
- Account ID にカーソルを合わせます
- Copy Account URL アイコンをクリックして、アカウントURL をコピーします
- Database(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限したい場合に設定します
- Schema(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限したい場合に設定します
- User:認証に使用するユーザーアカウント
- PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー
- PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)
- PrivateKeyPassword:指定されたプライベートキーのパスワード
- Username: user
- Password: password
- 少なくとも1つのソースメタデータスキャンを実行するために、メタデータオプションを設定します。このスキャンでは、ドライバーを使用してサービス経由で利用可能なテーブル、ビュー、ストアドプロシージャを特定します。
- Source Metadata: このオプションを有効にします。
- Catalog: マルチカタログのデータソースの場合は、適切なカタログに設定します。それ以外の場合は、CData に設定します。
- Schema: マルチスキーマのデータソースの場合は、適切なスキーマに設定します。それ以外の場合は、サービス名(例:Couchbase)に設定します。
- Case-sensitivity: 通常、このオプションは無効にしてください。大文字と小文字を区別するデータソースの場合のみ有効にします。
- Import stored procedures: テーブルやビューに加えてストアドプロシージャの定義もインポートしたい場合は、これを有効にします。
- ドライバーの設定を完了し、オプションでカスタム属性とスキャナースケジュールを設定します。
- Monitoring タブに移動し、Run をクリックしてメタデータスキャンを実行します。データソースによっては、数分かかる場合があります。
それでは、Snowflake データベースに接続していきましょう。認証に加えて、以下の接続プロパティを設定します。
Snowflakeへの認証
CData 製品では、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、User とPassword を設定し、AuthScheme プロパティで認証方法を選択してください。
キーペア認証
ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成し、キーペア認証で接続することも可能です。この方法で接続するには、AuthScheme をPRIVATEKEY に設定し、以下の値を設定してください。
その他の認証方法については、ヘルプドキュメントの「Snowflakeへの認証」セクションをご確認ください。
組み込みの接続文字列デザイナー
JDBC URL の構築については、Snowflake JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。.jar ファイルをダブルクリックするか、コマンドラインから .jar ファイルを実行します。
java -jar cdata.jdbc.snowflake.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を設定する際に、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させることができます。
一般的な追加の接続文字列プロパティは以下のとおりです:
JDBC;MSTR_JDBC_JAR_FOLDER=PATH\TO\JAR\;DRIVER=cdata.jdbc.snowflake.SnowflakeDriver;URL={jdbc:snowflake:User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;};
Username と Password プロパティは、使用するドライバーが必要としない場合でも必須です。その場合は、代わりにプレースホルダー値を入力してください。
必要に応じて、他のメタデータスキャナーも有効にできます。
スキャンが完了すると、すべてのメタデータオブジェクトの概要と Metadata Load ジョブのステータスが表示されます。エラーが発生した場合は、ジョブの Log Location リンクを開いて、Informatica またはドライバーが報告したエラーを確認できます。
検出されたメタデータの確認
Catalog Service ブラウザを開いて、データソースから抽出されたメタデータを表示します。メタデータスキャナーの設定時に選択したオプションに応じて、定義したリソースのテーブル、ビュー、ストアドプロシージャの任意の組み合わせが表示されます。