HULFT Integrate で Databricks のデータ に接続
HULFT Integrate は、ドラッグ&ドロップのユーザーインターフェースでコーポレーションフロー、データ変換、処理を簡単に作成できる最新のデータ連携プラットフォームです。CData JDBC Driver for Databricks と組み合わせることで、HULFT Integrate からリアルタイムの Databricks のデータ を扱うことができます。この記事では、Databricks への接続方法と、データを CSV ファイルに出力する手順をご紹介します。
CData JDBC ドライバーは、最適化されたデータ処理機能を備えており、リアルタイムの Databricks のデータ との連携において比類のないパフォーマンスを発揮します。Databricks に対して複雑な SQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされている SQL 操作を直接 Databricks にプッシュし、サポートされていない操作(主に SQL 関数や JOIN 操作)は内蔵の SQL エンジンでクライアント側で処理します。また、動的なメタデータクエリ機能により、ネイティブなデータ型を使用して 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
はじめに
Databricks へのアクセスを有効化
HULFT Integrate プロジェクトから Databricks のデータ へのアクセスを有効にするには、以下の手順で設定します:
- CData JDBC Driver の JAR ファイル(およびライセンスファイルがある場合はそれも)、cdata.jdbc.databricks.jar(および cdata.jdbc.databricks.lic)を、Integrate Server の jdbc_adapter サブフォルダにコピーします
- HULFT Integrate Server を再起動し、HULFT Integrate Studio を起動します
Databricks のデータ にアクセスするプロジェクトの作成
JAR ファイルをコピーしたら、Databricks のデータ にアクセスするプロジェクトを作成できます。まず、Integrate Studio を開いて新しいプロジェクトを作成しましょう。
- プロジェクト名を入力します
- 「スクリプトを作成」チェックボックスがオンになっていることを確認します
- 「次へ」をクリックします
- スクリプト名を入力します(例:DatabrickstoCSV)
プロジェクトを作成したら、Databricks のデータ を CSV ファイルにコピーするためのコンポーネントをスクリプトに追加します。
Execute Select SQL コンポーネントの設定
ツールパレット(Database -> JDBC)から「Execute Select SQL」コンポーネントをスクリプトワークスペースにドラッグします。
- 「必須設定」タブの接続先で、「追加」をクリックして Databricks 用の新しい接続を作成します。以下のプロパティを設定します:
- 名前:Databricks Connection Settings
- ドライバークラス名:cdata.jdbc.databricks.DatabricksDriver
- URL:jdbc:databricks:Server=127.0.0.1;HTTPPath=MyHTTPPath;User=MyUser;Token=MyToken;
組み込みの接続文字列デザイナー
JDBC URL の構築には、Databricks JDBC Driver に組み込まれている接続文字列デザイナーをご利用ください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.databricks.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
Databricks 接続プロパティの取得・設定方法
Databricks クラスターに接続するには、以下のプロパティを設定します。
- Database:Databricks データベース名。
- Server:Databricks クラスターのサーバーのホスト名。
- HTTPPath:Databricks クラスターのHTTP パス。
- Token:個人用アクセストークン。この値は、Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
Databricks への認証
CData は、次の認証スキームをサポートしています。
- 個人用アクセストークン
- Microsoft Entra ID(Azure AD)
- Azure サービスプリンシパル
- OAuthU2M
- OAuthM2M
個人用アクセストークン
認証するには、次を設定します。
- AuthScheme:PersonalAccessToken。
- Token:Databricks サーバーへの接続に使用するトークン。Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。
- SQL ステートメントを記述します。例:
SELECT City, CompanyName FROM Customers
- 「抽出テスト」をクリックして、接続とクエリが正しく設定されていることを確認します
- 「SQL を実行して出力スキーマを設定」をクリックします
- 「完了」をクリックします
Write CSV File コンポーネントの設定
ツールパレット(File -> CSV)から「Write CSV File」コンポーネントをワークスペースにドラッグします。
- クエリ結果を書き込むファイルを設定します(例:Customers.csv)
- 「入力データ」を「Select SQL」コンポーネントに設定します
- SQL クエリで選択した各フィールドのカラムを追加します
- 「書き込み設定」タブで、「最初の行にカラム名を挿入する」チェックボックスをオンにします
- 「完了」をクリックします
Databricks フィールドを CSV カラムにマッピング
「Select」コンポーネントの各カラムを、「CSV」コンポーネントの対応するカラムにマッピングします。
スクリプトの完成
「Start」コンポーネントを「Select」コンポーネントに、「CSV」コンポーネントを「End」コンポーネントにドラッグして接続します。スクリプトをビルドして実行すると、Databricks のデータ が CSV ファイルに出力されます。
CData JDBC Driver for Databricksの30日間の無償トライアルをダウンロードして、HULFT Integrate でリアルタイムの Databricks のデータ を活用してみてください。ご不明な点があれば、サポートチームまでお気軽にお問い合わせください。