BigQuery JDBC Driver を使用した OBIEE でのレポート作成
CData JDBC Driver for BigQuery は、標準的なデータベースドライバーとして、Java ベースのレポーティングサーバーにBigQuery のデータへのリアルタイムアクセスを統合できます。この記事では、Oracle Business Intelligence Enterprise Edition(OBIEE)にドライバーをデプロイし、変更がリアルタイムに反映されるBigQuery のデータのレポートを作成する方法を説明します。
BigQuery データ連携について
CData は、Google BigQuery のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- OAuth、OAuth JWT、GCP インスタンスなど、すぐに使える幅広い認証スキームのサポートにより、BigQuery へのアクセスを簡素化します。
- BigQuery と他のアプリケーション間の双方向データアクセスにより、データワークフローを強化します。
- SQL ストアドプロシージャを通じて、ジョブの開始・取得・キャンセル、テーブルの削除、ジョブロードの挿入など、主要な BigQuery アクションを実行できます。
多くの CData のお客様は、Google BigQuery をデータウェアハウスとして使用しており、CData ソリューションを使用して、別々のソースからビジネスデータを BigQuery に移行し、包括的な分析を行っています。また、BigQuery データの分析やレポート作成に当社の接続機能を使用するお客様も多く、両方のソリューションを使用しているお客様も多数います。
CData が Google BigQuery 体験をどのように向上させるかについての詳細は、ブログ記事をご覧ください:https://jp.cdata.com/blog/what-is-bigquery
はじめに
JDBC Driver のデプロイ
以下の手順で、JDBC Driver を WebLogic のクラスパスに追加します。
WebLogic 12.2.1 の場合、ドライバーの JAR ファイルと .lic ファイルを DOMAIN_HOME\lib に配置するだけで完了です(例:ORACLE_HOME\user_projects\domains\MY_DOMAIN\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.googlebigquery.jar;%PRE_CLASSPATH%
すべてのサーバーを再起動します(例:DOMAIN_HOME\bitools\bin の stop コマンドと start コマンドを実行)。
BigQuery 用 JDBC データソースの作成
JDBC Driver をデプロイしたら、BI Publisher から JDBC データソースを作成できます。
- BI Publisher にログインします(URL は例えば http://localhost:9502/analytics)。Administration -> Manage BI Publisher をクリックします。
- JDBC Connection -> Add Data Source をクリックします。
- 以下の情報を入力します:
- Data Source Name:ユーザーがレポートで接続を作成する際に使用する名前を入力します。
- Driver Type:Other を選択します。
- Database DriverClass:ドライバークラス cdata.jdbc.googlebigquery.GoogleBigQueryDriver を入力します。
- Connection String:JDBC URL を入力します。
BigQuery 接続プロパティの取得・設定方法
Google BigQuery はOAuth 認証標準を使用します。個々のユーザーとしてGoogle API にアクセスするには、組み込みクレデンシャルを使うか、OAuth アプリを作成します。
OAuth では、Google Apps ドメインのユーザーとしてサービスアカウントを使ってアクセスすることもできます。サービスカウントでの認証では、OAuth JWT を取得するためのアプリケーションを登録する必要があります。
OAuth 値に加え、DatasetId、ProjectId を設定する必要があります。詳細はヘルプドキュメントの「はじめに」を参照してください。
組み込みの接続文字列デザイナー
JDBC URL の構築には、BigQuery JDBC Driver に組み込まれた接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.googlebigquery.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を構成する際、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時のパフォーマンス向上に特に役立ちます。
一般的な JDBC URL は以下のとおりです:
jdbc:googlebigquery:DataSetId=MyDataSetId;ProjectId=MyProjectId;
- Username:ユーザー名を入力します。
- Password:パスワードを入力します。
- Security セクションで、許可するユーザーロールを選択します。
リアルタイム BigQuery レポートの作成
これで、リアルタイムBigQuery のデータに基づいたレポートや分析を作成できます。以下の手順で、標準のレポートウィザードを使用して、BigQuery のデータの変更がリアルタイムに反映されるインタラクティブなレポートを作成します。
- グローバルヘッダーで、New -> Data Model をクリックします。
- Diagram タブで、メニューから SQL query を選択します。
- クエリの名前を入力し、Data Source メニューで作成した BigQuery JDBC データソースを選択します。
- standard SQL を選択し、以下のようなクエリを入力します:
SELECT OrderName, Freight FROM Orders
- View Data をクリックして、レポート作成に使用するサンプルデータを生成します。
- サンプルデータに含める行数を選択し、View をクリックしてから、Save As Sample Data をクリックします。
- Create Report -> Use Data Model をクリックします。
- Guide Me を選択し、Select Layout ページで含めるレポートオブジェクトを選択します。この例では Chart と Table を選択します。
- Freight のような数値カラムを Y 軸の Drop Value Here ボックスにドロップします。OrderName のようなディメンションカラムを X 軸の Drop Label Here ボックスにドロップします。
- Refresh をクリックすると、BigQuery のデータの変更が反映されます。