DBxtra でJSON のデータを使ってダッシュボードを構築
CData のJSON 用 ODBC ドライバーは、ODBC 標準経由でJSON のリアルタイムデータにアクセスし、使い慣れた SQL クエリで各種 BI、レポート、ETL ツールからJSON のデータを利用可能にします。この記事では、汎用 ODBC データプロバイダーとしてJSON に接続し、DBxtra でJSON のデータを基にしたチャート、レポート、ダッシュボードを作成する方法を解説します。
JSON のデータへの接続設定
- まだ設定していない場合は、データソース名(DSN)で必要な接続プロパティを指定します。DSN の設定は組み込みの Microsoft ODBC データソースアドミニストレーターを使用して行えます。これはドライバーインストールの最終ステップでもあります。Microsoft ODBC データソースアドミニストレーターを使用して DSN を作成・設定する方法については、ヘルプドキュメントの「はじめに」の章をご参照ください。
データソースへの認証については、ヘルプドキュメントの「はじめに」を参照してください。CData 製品は、JSON API を双方向データベーステーブルとして、JSON ファイルを読み取り専用ビュー(ローカル ファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)としてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。詳細はヘルプドキュメントの「はじめに」を参照してください。
URI を設定して認証値を入力したら、DataModel を設定してデータ表現とデータ構造をより厳密に一致させます。
DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、次の基本設定を切り替えます。
- Document(デフォルト):JSON データのトップレベルのドキュメントビューをモデル化します。CData 製品 は、ネストされたオブジェクト配列を集約されたJSON オブジェクトとして返します。
- FlattenedDocuments:ネストされた配列オブジェクトと親オブジェクトを、単一テーブルに暗黙的に結合します。
- Relational:階層データから個々の関連テーブルを返します。テーブルには、親ドキュメントにリンクする主キーと外部キーが含まれています。
リレーショナル表現の設定についての詳細は、ヘルプドキュメントの「JSON データのモデリング」を参照してください。また、以下の例で使用されているサンプルデータも確認できます。データには人や所有する車、それらの車に行われたさまざまなメンテナンスサービスのエントリが含まれています。
Amazon S3 内のJSON への接続
URI をバケット内のJSON ドキュメントに設定します。さらに、次のプロパティを設定して認証します。
- AWSAccessKey:AWS アクセスキー(username)に設定。
- AWSSecretKey:AWS シークレットキーに設定。
Box 内のJSON への接続
URI をJSON ファイルへのパスに設定します。Box へ認証するには、OAuth 認証標準を使います。 認証方法については、Box への接続 を参照してください。
Dropbox 内のJSON への接続
URI をJSON ファイルへのパスに設定します。Dropbox へ認証するには、OAuth 認証標準を使います。 認証方法については、Dropbox への接続 を参照してください。ユーザーアカウントまたはサービスアカウントで認証できます。ユーザーアカウントフローでは、以下の接続文字列で示すように、ユーザー資格情報の接続プロパティを設定する必要はありません。 URI=dropbox://folder1/file.json; InitiateOAuth=GETANDREFRESH; OAuthClientId=oauthclientid1; OAuthClientSecret=oauthcliensecret1; CallbackUrl=http://localhost:12345;
SharePoint Online SOAP 内のJSON への接続
URI をJSON ファイルを含むドキュメントライブラリに設定します。認証するには、User、Password、およびStorageBaseURL を設定します。
SharePoint Online REST 内のJSON への接続
URI をJSON ファイルを含むドキュメントライブラリに設定します。StorageBaseURL は任意です。指定しない場合、ドライバーはルートドライブで動作します。 認証するには、OAuth 認証標準を使用します。
FTP 内のJSON への接続
URI をJSON ファイルへのパスが付いたサーバーのアドレスに設定します。認証するには、User およびPassword を設定します。
Google Drive 内のJSON への接続
デスクトップアプリケーションからのGoogle への認証には、InitiateOAuth をGETANDREFRESH に設定して、接続してください。詳細はドキュメントの「Google Drive への接続」を参照してください。
DSN を設定する際には、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させるのに役立ちます。
- DBxtra アプリケーションを開き、New メニューから Project をクリックしてプロジェクト名を入力します。

- Data Connection Type として ODBC Connection を選択します。

- Data Source の参照オプション()をクリックします。
- Data Link Properties ウィンドウの Provider タブで、Microsoft OLE DB Provider for ODBC Drivers を選択します。

- Connection タブで、Data Source Name と使用する初期カタログ(CData)を選択します。

- 接続名を入力し、適切なユーザーグループを選択します。

- プロジェクト内で接続をダブルクリックしてデータに接続します。

JSON のデータでダッシュボードを作成
これでJSON のデータを使ってダッシュボードを作成する準備が整いました。
- プロジェクト内の Report Objects を右クリックし、New Report Object を選択します。

- 新しい Report Object で、リンクをクリックしてクエリを作成します。
- Select Data Connection ウィンドウで、先ほど作成したデータ接続を選択します。

- Query タブで、接続オブジェクトを展開し、ダッシュボードに含めたいテーブル、ビュー、特定のカラムを選択します。検索条件を指定したり、JOIN や集計を含む複雑なクエリを作成することもできます。

- Dashboard タブで、ダッシュボードのビジュアライゼーションと機能を選択します。クエリからのデータ値をダッシュボード項目の適切なフィールド(Values、Series など)に割り当てます。

新しいダッシュボードが作成されたら、JSON のデータ分析を開始できます。JSON 用 ODBC ドライバーのおかげで、ダッシュボードを更新すればソースで行われた変更を即座に確認できます。同様に、常に最新のJSON データを反映したレポートを作成・表示できます。