各製品の資料を入手。
詳細はこちら →CData Query Federation Driver の設定方法
CData Query Federation Driver は、複数のデータソースにまたがるデータを単一のデータベース接続I/F としてクエリできる仮想データ統合ドライバーです。RDB、SaaS、NoSQL などの単一データソース向けであるCData Drivers (JDBC Drivers やADO.NET Data Providers)と組み合わせて利用することで、Query Federation Driver は分散して保管されているあらゆるデータを一つのデータベースのようにクエリすることが可能になります。Query Federation Driver で複数のデータソースに対するCRUD クエリを実行できるだけでなく、データソースにまたがるテーブルのJOIN や集計が標準SQL で実行できます。
すべてのデータにアクセスする仮想エンドポイントを作成するには、まずQuery Federation Driver および、使用するデータソースに対応するCData Drivers をインストールしてください。この記事では、JDBC Drivers を使用し、Excel、Salesforce、MySQL のデータソースを使います。Query Federation Driver はほかのどのCData Drivers のデータソースにも対応しています。
ほかの単一データソースのCData Drivers と同じように、Federation Driver は接続文字列を使ってデータソースに接続します。Query Federation Driver のキーとなる接続プロパティは2種類あります:
- Database Configuration: どのCData Driver をQuery Federation Driver で使うかを定義したJSON ファイルの場所を設定します。通常はこちらに配置し、指定します%AppData%/Roaming/CData/Query Federation Data Provider/DatabaseConfiguration.json
- Default Schema: データベース設定で定義された複数のデータベースからどのデータベーススキーマをデフォルトで使うかを設定します
Database Configuration ドキュメントは、JSON オブジェクトでQuery Federation Driver がアクセスできるデータ種類を含みます。JSON オブジェクトはそれぞれ一つのドライバーを指し、スキーマの名前をsalesforcedb もしくはmysqldb のように示します。オブジェクトのほかのフィールドおよび値は使っているFederation Driver がJava ベースかC# ベースかで異なります:
JDBC スキーマフィールド
- driverClass: ドライバーのJDBC クラス名(e.g. cdata.jdbc.salesforce.SalesforceDriver)
- connectionUri: データに接続するJDBC URL (e.g. jdbc:cdata:salesforce:User=user@domain.com;Password=password;)
- driverPath: ドライバーファイルが置かれているロケーション (e.g. C:\Program Files\CData\CData JDBC Driver for Salesforce\lib\cdata.jdbc.salesforce.jar)
DatabaseConfiguration.json File (JDBC) のサンプル
{ "salesforcedb": { "driverClass": "cdata.jdbc.salesforce.SalesforceDriver", "connectionUri": "jdbc:cdata:salesforce:User=user@domain.com;Password=password;", "driverPath": "/PATH/TO/cdata.jdbc.salesforce.jar" }, "exceldb": { "driverClass": "cdata.jdbc.excel.ExcelDriver", "connectionUri": "jdbc:cdata:excel:Excel File=/PATH/TO/MyExcelFile.xlsx;", "driverPath": "/PATH/TO/cdata.jdbc.excel.jar" }, "mysqldb": { "driverClass": "cdata.jdbc.mysql.MySQLDriver", "connectionUri": "jdbc:mysql:Server=localhost;Database=test;User=root;Password=pwd", "driverPath": "/PATH/TO/cdata.jdbc.mysql.jar" } }
ADO.NET スキーマフィールド
- providerName: ADO.NET Provider クラス名 (e.g. System.Data.CData.Salesforce)
- connectionString: データに接続する接続文字 (e.g. User=user@domain.com;Password=password;)
- providerPath: ドライバーファイルが置かれているロケーション (e.g. C:\Program Files\CData\CData ADO.NET Driver for Salesforce\lib\System.Data.CData.Salesforce.dll)
DatabaseConfiguration.json File (ADO) のサンプル
{ "salesforcedb": { "providerName": "System.Data.CData.Salesforce", "connectionString": "User=user@domain.com;Password=password;", "providerPath": "/PATH/TO/System.Data.CData.Salesforce.dll" }, "exceldb": { "providerName": "System.Data.CData.Excel", "connectionString": "Excel File=/PATH/TO/MyExcelFile.xlsx;", "providerPath": "/PATH/TO/System.Data.CData.Excel.dll" }, "mysqldb": { "providerName": "System.Data.CData.MySQL", "connectionString": "Server=localhost;Database=test;User=root;Password=pwd", "providerPath": "/PATH/TO/System.Data.CData.MySQL.dll" } }
Query Federation Driver 接続方法のサンプル
JDBC 対応のツールやアプリケーションからQuery Federation Driver に接続するには、Query Federation Driver のJDBC URL を作成するだけです:
JDBC URL
jdbc:queryfederation:DatabaseConfiguration=/PATH/TO/DatabaseConfiguration.json;DefaultSchema=salesforcedb
ADO.NET対応のツールやアプリケーションからQuery Federation Driver に接続するには、Query Federation Driver の接続文字列を作成するだけです:
ADO.NET 接続文字列
DatabaseConfiguration=/PATH/TO/DatabaseConfiguration.json;DefaultSchema=salesforcedb
さあ、Query Federation Driver の接続設定ができたので、複数のデータソースに単一のデータベースのようにアクセスしてみましょう。ここでは、JDBC データソースへのクエリツールであるDBVisualizer で、Query Federation Driver のデータ接続およびデータ構造を見ることができます。
Query Federation Driver のスキーマレイアウト(DBVisualizer)

無償評価版 & 詳細製品情報
SaaS、RDB、ビッグデータソース、CSV ファイルに渡る複数のデータソースに自在に連携することは企業がデータドリブンな経営を行う上で必須です。高機能、ハイパフォーマンスなQuery Federation Driver を使えば、複数のデータソースを一つのデータベースのように扱いクエリを発行することが可能です。ぜひ、30日の無償試用版 をダウンロードしてお試しください。