各製品の資料を入手。
詳細はこちら →CData
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
CData JDBC Driver for REST は、REST へのリアルタイムアクセスをJava ベースのレポートサーバーに統合できる標準のデータベースドライバーです。この記事では、ドライバーをOracle Business Intelligence Enterprise Edition (OBIEE) にデプロイし、変更を反映するREST に関する方法を示します。
以下のステップに従って、WebLogic のクラスパスにJDBC ドライバーを追加します。
WebLogic 12.2.1 の場合、ドライバーJAR と.lic ファイルをORACLE_HOME\user_projects\domains\MY_DOMAIN\lib のようにDOMAIN_HOME\lib に配置します。これらのファイルは、起動時にサーバーのクラスパスに追加されます。
ドライバーをクラスパスに手動で追加することもできます。これは、以前のバージョンで必要です。setDomainEnv.cmd (Windows) または setDomainEnv.sh (Unix) のPRE_CLASSPATH の前に以下を追加します。このスクリプトは、そのドメインのフォルダーのbin サブフォルダーにあります。例:ORACLE_HOME\user_projects\domains\MY_DOMAIN\bin.
set PRE_CLASSPATH=your-installation-directory\lib\cdata.jdbc.rest.jar;%PRE_CLASSPATH%
DOMAIN_HOME\bitools\bin でstop コマンドとstart コマンドを実行するなど、すべてのサーバーを再起動します。
JDBC ドライバーをデプロイした後、BI Publisher からJDBC データソースを作成できます。
データソースへの認証については、データプロバイダーのヘルプドキュメントの「はじめに」を参照してください: データプロバイダーはREST API を双方向データベーステーブルとして、XML/JSON ファイル(ローカルファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)を読み取り専用のビューとしてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。認証についての詳細は、ヘルプドキュメントの「はじめに」を参照してください。
URI を設定し、認証値を指定したら、Format を"XML" または"JSON" に設定して、データ表現をデータ構造により厳密に一致させるようにDataModel を設定します。
DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、以下の基本的な設定を切り替えます。
リレーショナル表現の構成について詳しくは、「REST データのモデル化」を参照してください。次の例で使用されているサンプルデータもあります。データには、人、所有している車、およびそれらの車で行われたさまざまなメンテナンスサービスのエントリが含まれています。The data includes entries for people, the cars they own, and various maintenance services performed on those cars.
JDBC URL の構成については、REST JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.rest.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を構成する際に、Max Rows プロパティを定めることも可能です。これによって戻される行数を制限するため、可視化・レポートのデザイン設計時のパフォーマンスを向上させるのに役立ちます。
以下は一般的なJDBC URL です。
jdbc:rest:DataModel=Relational;URI=C:/people.xml;Format=XML;
リアルタイムのREST に基づいてレポートと分析を作成できるようになります。以下のステップに従って、標準のレポートウィザードを使用してREST への変更を反映するインタラクティブなレポートを作成します。
SELECT [people].[personal.age] AS age, [people].[personal.gender] AS gender,
[people].[personal.name.first] AS first_name, [people].[personal.name.last] AS last_name, [vehicles].[model], FROM
[people] JOIN [vehicles] ON [people].[_id] = [vehicles].[people_id]