CData BizTalk Adapter for Databricks の Receive Location を構成する
この記事の手順に従って、Databricks のデータに接続し、Static One-Way Receive Location を構成して、シンプルなテスト(Databricks のデータを取得して XML ファイルに書き込む)を実行できます。
Receive Location は SQL コマンドを実行し、結果を含む BizTalk メッセージを作成できます。Updategram コマンドを実行する場合は、Send Port を使用してください。
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
はじめに
Receive Port の作成
アプリケーションに Receive Location を追加するには、まず Receive Port を追加する必要があります。Receive Port は複数の Receive Location からデータを受信できます。
- まだ行っていない場合は、BizTalk Administration Console でアプリケーションを開きます。
- アプリケーション内で、Receive Ports を右クリックし、New -> Static One-Way Receive Port をクリックします。Receive Port Properties ダイアログが表示されます。
- Name メニューで、Receive Port の名前を入力します。
Receive Location の作成
Receive Port を作成したら、Receive Location を作成し、Databricks アダプターをトランスポートタイプとして使用するよう構成します。
- Receive Locations を右クリックし、New -> One-Way Receive Location をクリックします。
- 新しい Receive Location がメンバーとなる適切な Receive Port を選択します。Receive Location Properties ダイアログが表示されます。
- Name メニューで、Receive Location の名前を入力します。
- Receive Location プロパティで、Transport Type メニューから CData.Databricks を選択します。
- Receive pipeline メニューで、デフォルトオプションの PassThruReceive を選択します。
アダプターの構成
Transport Properties ダイアログで、アダプターが実行するコマンドを指定します。
- Receive Location プロパティで、Configure をクリックします。アダプターの Transport Properties ダイアログが表示されます。
- SQL Command プロパティに、コマンドを入力します。この例では
SELECT City, CompanyName FROM Customers WHERE Country = 'US'
を使用します。
接続文字列の構成
Connection String Options ダイアログで、認証情報やその他の接続プロパティを設定します。
- Receive Location プロパティで、Configure をクリックします。アダプタープロパティダイアログが表示されます。
- Connection String プロパティのボタンをクリックします。
- Connection String プロパティのボックスをクリックします。Connection String Options ダイアログが表示されます。
- 接続プロパティを入力します。一般的な接続文字列は以下のとおりです:
Server=127.0.0.1;HTTPPath=MyHTTPPath;User=MyUser;Token=MyToken;
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 インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。
- Test Connection をクリックして、接続値を確認し接続をテストします。
各種プロパティとその機能の説明については、ヘルプドキュメントを参照してください。
Send Port を使用してデータを XML ファイルに書き込む
これで Static One-Way Receive Location を Send Port と共に使用する準備が整いました。Receive Location が作成した BizTalk メッセージには Send Port を関連付ける必要があります。データをファイルに書き込むには、File Send Port を作成します。
- BizTalk Administration コンソールで、Send Ports -> New -> Static One-Way Send Port を右クリックします。
構成ウィンドウの上部に Send Port の名前を入力し、Type メニューから FILE を選択します。
- 宛先フォルダを構成します。これがディスク上にファイルが作成される場所になります。
ファイル名には、マクロを使用してファイルが作成された日付を簡単に識別できます。デフォルトでは %MessageId%.xml が使用されます。ただし、これはランダムに生成された BizTalk ID であるため、ユーザーフレンドリーな名前ではありません。Customers_yyyy-MM-dd.xml 形式のファイルを作成するには、Customers_%Date%.xml と入力します。
注:マクロの詳細については、ヘルプドキュメントの BizTalk Configuration セクションを参照してください。
- OK をクリックします。URI フィールドに値が入力されます。
- Send Port の構成画面の左側で Filters をクリックします。
- 以下のプロパティを設定します:
- Property:メニューから "BTS.InboundTransportLocation" を選択します。
- Operator:メニューから "==" を選択します。
- Value:Receive Location の URI を入力します。URI は Receive Location プロパティに表示されています。
- Operator:メニューから "==" を選択します。
- Property:メニューから "BTS.InboundTransportLocation" を選択します。
これで、Send Port を使用して Receive Location から送信されたファイルを書き込めます。
Location と Port を Enlist および Enable する
最後のステップは、Send Port を Enlist し、Receive Location を Enable することです。Send Port を右クリックして Enlist をクリックします。次に、Receive Location を右クリックして Enable をクリックします。
注:Receive Location は最後に Enable してください。これにより、ファイルが Send Port によって確実に書き込み用にピックアップされます。
トラブルシューティング
エラーが発生しているかどうかを確認するには、Administration Console のナビゲーションツリーで "Event Viewer (Local)" を展開します。Windows Logs を展開し、Applications をクリックします。
ログにはシステム上のすべてのアプリケーションのエラーメッセージが含まれるため、エラーメッセージのソースが "CData BizTalk Databricks Receive Adapter" であることを確認することが重要です。エラーメッセージの詳細から、エラーが発生している理由がわかります。エラーの解決方法については、[email protected]/jp にお問い合わせください。