HULFT Integrate で REST のデータ に接続
HULFT Integrate は、ドラッグ&ドロップのユーザーインターフェースでコーポレーションフロー、データ変換、処理を簡単に作成できる最新のデータ連携プラットフォームです。CData JDBC Driver for REST と組み合わせることで、HULFT Integrate からリアルタイムの REST のデータ を扱うことができます。この記事では、REST への接続方法と、データを CSV ファイルに出力する手順をご紹介します。
CData JDBC ドライバーは、最適化されたデータ処理機能を備えており、リアルタイムの REST のデータ との連携において比類のないパフォーマンスを発揮します。REST に対して複雑な SQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされている SQL 操作を直接 REST にプッシュし、サポートされていない操作(主に SQL 関数や JOIN 操作)は内蔵の SQL エンジンでクライアント側で処理します。また、動的なメタデータクエリ機能により、ネイティブなデータ型を使用して REST のデータ を操作・分析できます。
REST へのアクセスを有効化
HULFT Integrate プロジェクトから REST のデータ へのアクセスを有効にするには、以下の手順で設定します:
- CData JDBC Driver の JAR ファイル(およびライセンスファイルがある場合はそれも)、cdata.jdbc.rest.jar(および cdata.jdbc.rest.lic)を、Integrate Server の jdbc_adapter サブフォルダにコピーします
- HULFT Integrate Server を再起動し、HULFT Integrate Studio を起動します
REST のデータ にアクセスするプロジェクトの作成
JAR ファイルをコピーしたら、REST のデータ にアクセスするプロジェクトを作成できます。まず、Integrate Studio を開いて新しいプロジェクトを作成しましょう。
- プロジェクト名を入力します
- 「スクリプトを作成」チェックボックスがオンになっていることを確認します
- 「次へ」をクリックします
- スクリプト名を入力します(例:RESTtoCSV)
プロジェクトを作成したら、REST のデータ を CSV ファイルにコピーするためのコンポーネントをスクリプトに追加します。
Execute Select SQL コンポーネントの設定
ツールパレット(Database -> JDBC)から「Execute Select SQL」コンポーネントをスクリプトワークスペースにドラッグします。
- 「必須設定」タブの接続先で、「追加」をクリックして REST 用の新しい接続を作成します。以下のプロパティを設定します:
- 名前:REST Connection Settings
- ドライバークラス名:cdata.jdbc.rest.RESTDriver
- URL:jdbc:rest:DataModel=Relational;URI=C:/people.xml;Format=XML;
組み込みの接続文字列デザイナー
JDBC URL の構築には、REST JDBC Driver に組み込まれている接続文字列デザイナーをご利用ください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.rest.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
データソースへの認証については、データプロバイダーのヘルプドキュメントの「はじめに」を参照してください: データプロバイダーはREST API を双方向データベーステーブルとして、XML/JSON ファイル(ローカルファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)を読み取り専用のビューとしてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。認証についての詳細は、ヘルプドキュメントの「はじめに」を参照してください。
URI を設定し、認証値を指定したら、Format を"XML" または"JSON" に設定して、データ表現をデータ構造により厳密に一致させるようにDataModel を設定します。
DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、以下の基本的な設定を切り替えます。
- Document (デフォルト):REST データのトップレベルのドキュメントビューをモデル化します。データプロバイダーはネストされたエレメントをデータの集計として返します。
- FlattenedDocuments:ネストされたドキュメントとその親を単一テーブルとして暗黙的に結合します。
- Relational:階層データから個々の関連テーブルを返します。テーブルには、親ドキュメントにリンクする主キーと外部キーが含まれます。
リレーショナル表現の構成について詳しくは、「REST データのモデル化」を参照してください。次の例で使用されているサンプルデータもあります。データには、人、所有している車、およびそれらの車で行われたさまざまなメンテナンスサービスのエントリが含まれています。The data includes entries for people, the cars they own, and various maintenance services performed on those cars.
- SQL ステートメントを記述します。例:
SELECT [ personal.name.first ], [ personal.name.last ] FROM people
- 「抽出テスト」をクリックして、接続とクエリが正しく設定されていることを確認します
- 「SQL を実行して出力スキーマを設定」をクリックします
- 「完了」をクリックします
Write CSV File コンポーネントの設定
ツールパレット(File -> CSV)から「Write CSV File」コンポーネントをワークスペースにドラッグします。
- クエリ結果を書き込むファイルを設定します(例:people.csv)
- 「入力データ」を「Select SQL」コンポーネントに設定します
- SQL クエリで選択した各フィールドのカラムを追加します
- 「書き込み設定」タブで、「最初の行にカラム名を挿入する」チェックボックスをオンにします
- 「完了」をクリックします
REST フィールドを CSV カラムにマッピング
「Select」コンポーネントの各カラムを、「CSV」コンポーネントの対応するカラムにマッピングします。
スクリプトの完成
「Start」コンポーネントを「Select」コンポーネントに、「CSV」コンポーネントを「End」コンポーネントにドラッグして接続します。スクリプトをビルドして実行すると、REST のデータ が CSV ファイルに出力されます。
CData JDBC Driver for RESTの30日間の無償トライアルをダウンロードして、HULFT Integrate でリアルタイムの REST のデータ を活用してみてください。ご不明な点があれば、サポートチームまでお気軽にお問い合わせください。