Informatica Enterprise Data Catalog で Databricks のデータ を追加
Informatica は、データの転送と変換を行うための強力で洗練された手段を提供します。CData JDBC Driver for Databricks を使用すると、業界標準に準拠したドライバーを通じて Informatica Enterprise Data Catalog とシームレスに連携できます。このチュートリアルでは、あらゆる環境で Databricks データを分類・整理する方法を説明します。
Databricks データ連携について
CData を使用すれば、Databricks のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:
- Runtime バージョン 9.1 - 13.X から Pro および Classic Databricks SQL バージョンまで、すべてのバージョンの Databricks にアクセスできます。
- あらゆるホスティングソリューションとの互換性により、お好みの環境で Databricks を使用し続けることができます。
- パーソナルアクセストークン、Azure サービスプリンシパル、Azure AD など、さまざまな方法で安全に認証できます。
- Databricks ファイルシステム、Azure Blob ストレージ、AWS S3 ストレージを使用して Databricks にデータをアップロードできます。
多くのお客様が、さまざまなシステムから Databricks データレイクハウスにデータを移行するために CData のソリューションを使用していますが、ライブ接続ソリューションを使用して、データベースと Databricks 間の接続をフェデレートしているお客様も多数います。これらのお客様は、SQL Server リンクサーバーまたは Polybase を使用して、既存の RDBMS 内から Databricks へのライブアクセスを実現しています。
一般的な Databricks のユースケースと CData のソリューションがデータの問題解決にどのように役立つかについては、ブログをご覧ください:What is Databricks Used For? 6 Use Cases
はじめに
JDBC ドライバーのロード
JDBC ドライバーをロードするには:
- Informatica が動作しているホストに JDBC ドライバーをインストールします。この記事では、ドライバーが cdata.jdbc.databricks.DatabricksDriver にインストールされていることを前提としています。
- 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-databricks/lib $ zip genericJDBC.zip cdata.jdbc.databricks.jar cdata.jdbc.databricks.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.databricks.DatabricksDriver
- URL: jdbc.databricks:Server=127.0.0.1;HTTPPath=MyHTTPPath;User=MyUser;Token=MyToken;
- Database:Databricks データベース名。
- Server:Databricks クラスターのサーバーのホスト名。
- HTTPPath:Databricks クラスターのHTTP パス。
- Token:個人用アクセストークン。この値は、Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
- 個人用アクセストークン
- Microsoft Entra ID(Azure AD)
- Azure サービスプリンシパル
- OAuthU2M
- OAuthM2M
- AuthScheme:PersonalAccessToken。
- Token:Databricks サーバーへの接続に使用するトークン。Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
- Username: user
- Password: password
- 少なくとも1つのソースメタデータスキャンを実行するために、メタデータオプションを設定します。このスキャンでは、ドライバーを使用してサービス経由で利用可能なテーブル、ビュー、ストアドプロシージャを特定します。
- Source Metadata: このオプションを有効にします。
- Catalog: マルチカタログのデータソースの場合は、適切なカタログに設定します。それ以外の場合は、CData に設定します。
- Schema: マルチスキーマのデータソースの場合は、適切なスキーマに設定します。それ以外の場合は、サービス名(例:Couchbase)に設定します。
- Case-sensitivity: 通常、このオプションは無効にしてください。大文字と小文字を区別するデータソースの場合のみ有効にします。
- Import stored procedures: テーブルやビューに加えてストアドプロシージャの定義もインポートしたい場合は、これを有効にします。
- ドライバーの設定を完了し、オプションでカスタム属性とスキャナースケジュールを設定します。
- Monitoring タブに移動し、Run をクリックしてメタデータスキャンを実行します。データソースによっては、数分かかる場合があります。
Databricks 接続プロパティの取得・設定方法
Databricks クラスターに接続するには、以下のプロパティを設定します。
Databricks への認証
CData は、次の認証スキームをサポートしています。
個人用アクセストークン
認証するには、次を設定します。
その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。
組み込みの接続文字列デザイナー
JDBC URL の構築については、Databricks JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。.jar ファイルをダブルクリックするか、コマンドラインから .jar ファイルを実行します。
java -jar cdata.jdbc.databricks.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を設定する際に、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させることができます。
一般的な追加の接続文字列プロパティは以下のとおりです:
JDBC;MSTR_JDBC_JAR_FOLDER=PATH\TO\JAR\;DRIVER=cdata.jdbc.databricks.DatabricksDriver;URL={jdbc:databricks:Server=127.0.0.1;HTTPPath=MyHTTPPath;User=MyUser;Token=MyToken;};
Username と Password プロパティは、使用するドライバーが必要としない場合でも必須です。その場合は、代わりにプレースホルダー値を入力してください。
必要に応じて、他のメタデータスキャナーも有効にできます。
スキャンが完了すると、すべてのメタデータオブジェクトの概要と Metadata Load ジョブのステータスが表示されます。エラーが発生した場合は、ジョブの Log Location リンクを開いて、Informatica またはドライバーが報告したエラーを確認できます。
検出されたメタデータの確認
Catalog Service ブラウザを開いて、データソースから抽出されたメタデータを表示します。メタデータスキャナーの設定時に選択したオプションに応じて、定義したリソースのテーブル、ビュー、ストアドプロシージャの任意の組み合わせが表示されます。