各製品の資料を入手。
詳細はこちら →Mule アプリケーションからCosmos DB のデータにアクセス:CData JDBC Driver
CData JDBC ドライバとHTTP、SQL を組み合わせれば、Cosmos DB のデータのJSON エンドポイントに接続できるMule アプリケーションを簡単に作成できます。
最終更新日:2022-07-28
この記事で実現できるCosmos DB 連携のシナリオ
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData JDBC Driver for CosmosDB はCosmos DB のデータをMule アプリケーションと連携することで、読み、書き、更新、削除といった機能をおなじみのSQL クエリを使って実現します。JDBC ドライバーを使えば、Cosmos DB のデータをバックアップ、変換、レポート作成、分析するMule アプリケーションをユーザーは簡単に作成できます。
本記事では、Mule プロジェクト内でCData JDBC Driver for CosmosDB を使用して、Cosmos DB のデータのWeb インターフェースを作成する方法を紹介します。作成したアプリケーションを使えば、HTTP 経由でCosmos DB のデータをリクエストして、JSON 形式で結果を取得できます。まったく同様の手順で、すべてのCData JDBC ドライバで250 を超えるデータソースのWeb インターフェースを作成できます。手順は以下のとおりです。
- Anypoint Studio で新しいMule プロジェクトを作る。
- Message Flow にHTTP コネクタを追加する。
- HTTP コネクタのアドレスを設定する。
- HTTP コネクタの追加後、Database Select コネクタを同じフローに追加する。
- データベースへの新しい接続を作成し(または既存の接続を編集し)、プロパティを設定する。
- 接続を「Generic Connection」に設定
- Required Libraries セクションでCData JDBC ドライバのJAR ファイルを指定する(例:cdata.jdbc.cosmosdb.jar)。
- Cosmos DB の接続文字列にURL を指定
CosmosDB 接続プロパティの取得・設定方法
SQL API を使ってCosmos DB アカウントに接続するために必要な接続文字列を取得するには、Azure Portal にログインして「Azure Cosmos DB」を選択し、自分のアカウントを選択します。「Settings」セクションで、「Connection String」をクリックして次の値を設定します。
- AccountEndpoint:この値は、Cosmos DB アカウントの「Keys」ブレードからのCosmos DB アカウントURL に設定してください。
- AccountKey:Azure ポータルで、Cosmos DB サービスに移動してAzure Cosmos DB アカウントを選択します。リソースメニューから、 「Keys」ページに移動します。「PRIMARY KEY」値を見つけ、Token をこの値に設定します。
組み込みの接続文字列デザイナ
JDBC 用のURL の作成にサポートが必要な場合は、Cosmos DB JDBC Driver に組み込まれた接続文字列デザイナを使用できます。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行してください。
java -jar cdata.jdbc.cosmosdb.jar
接続プロパティを入力して、接続文字列をクリップボードにコピーします。
- Driver クラス名をcdata.jdbc.cosmosdb.CosmosDBDriver に指定します。
- 「接続テスト」をクリックします。
- SQL Query Text をCosmos DB のデータをリクエストするためのSQL クエリに設定します。例えば、
SELECT City, CompanyName FROM Customers
。 - Transform Message コンポーネントをフローに追加します。
- Output スクリプトを次のように設定して、ペイロードをJSON に変換します。
%dw 2.0 output application/json --- payload
- Cosmos DB のデータを閲覧するには、HTTP コネクタ用に設定したアドレスに移動します(デフォルトでは、localhost:8081):http://localhost:8081。Web ブラウザおよびJSON エンドポイントを使用可能な他のツール内で、Cosmos DB のデータをJSON として利用できます。
これで、カスタムアプリケーションおよび他のさまざまなBI、帳票、ETL ツールからCosmos DB のデータを(JSON データとして)扱うための簡易なWeb インターフェースを作成できました。Mule アプリケーションからお好みのデータソースにアクセスできる、JDBC Driver for CosmosDB の30日の無償評価版のダウンロードはこちらから。