こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData ODBC Driver for JSON は、ODBC 標準に準拠しており、BI ツールからIDE まで幅広いアプリケーションでJSON への接続を提供します。
この記事では、CPM/BIツールのBoardからJSON に接続、レポートを作成する方法を説明します。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持った製品です。
- JSON をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレデータソースに対応
- 多様なアプリケーション、ツールにJSON のデータを連携
- ノーコードでの手軽な接続設定
- 標準SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてJSON の接続を設定、2.board 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとJSON への接続設定
まずは、本記事右側のサイドバーからJSON ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
- インストール後、ODBCデータソースアドミニストレーターにて[システムDSN]タブをクリックし、CData JSON Source Sys(64bit or 32bit)の接続情報を構成します。(※BoardはシステムDSNのみに対応しています。ユーザー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
への接続」を参照してください。
Board DB の作成
最初にBoardの接続情報やキューブ等を格納するDBを作成します。
- Boardを立ち上げて、任意の接続先へ接続します。
- [Database]タブから[New DB]をクリックします。
- 開いたDB作成用ウィンドウにて、任意の[Database name][Language][From Year][To Year]を入力し[OK]をクリックします。
SQL FastTrackを用いたODBCデータソースからのデータロード
次にSQL FastTrackの機能を用いてODBCデータソースから JSON のデータをBoard上にロードします。
- [Database]タブの[SQL FastTrack]をクリックし、Data souceの[New]ボタンをクリックします。
- 接続先を設定するためのウィンドウが表示されますので、[OLE-DB Wizard]をクリックします。
- 開いたデータリンクプロパティの[プロバイダー]タブから[Microsoft OLE DB Provider for ODBC Drivers]を選択し、[次へ]をクリックします。
- [接続タブ]の[1.データソースを指定します]から事前に設定したODBC DSNを選択し、[3.使用する初期カタログを入力します]に[CData]を入力の上、[OK]をクリックします。
- 任意の[Name]を入力し[Save & Connect]をクリックします。
- SQL FastTrackの画面に戻った後、[Connect]をクリックします。
- Connectをクリック後、Data souce画面左側に JSON のテーブル一覧が表示されます。分析対象とするテーブルをダブルクリックすると、自動的にSQL クエリが記述されます。記述内容を確認の上、[Execute Query]をクリックします。
- Execute Queryをクリックすると、テーブルに格納された項目一覧が以下の図のように表示されます。分析で使用したい任意の項目を[Code][Desc][Cube]のいずれかにチェックを入れ、Cube/Entityを入力し、Track実行ボタンをクリックします。
- 確認ダイアログが表示されますので、[Yes]をクリックします。
- SQL FastTrackの機能により、ODBC データソースからデータがロードされ、自動的にEntityとCubeが生成されます。
- 以下のダイアログが表示されれば、Boardへのデータロードは完了です。
グラフの作成
ロードしたデータを元に簡単なグラフの作成方法を紹介します。
- 最初に各種Screenを格納するためのCapsuleを作成します。[Home]タブを選択し[Capsule]から[New Capsule]をクリックします。
- 任意の[Capsule Name]を入力し[OK]をクリックします。
- 続いてScreenを作成するための画面が表示されるため任意の[Screen Name]を入力し[OK]をクリックします。
- Screenが作成されると、ChartやDataViewを配置することが可能になります。[Charts]から[Chart]を選択し、Screenにドラッグ・アンド・ドロップでChartを配置します。
- 以下のようにChartを配置後、右クリックメニューで[Layout]をクリックします。
- LayoutでChart上のValueとして扱う値を指定します。[Data]タブから[Double-click here to create a block]の箇所をダブルクリックします。
- [Data Selection]から先程のSQL FastTrackにてCubeの指定をした任意の値を選択し[OK]をクリックします。
- 続いて[Axes]タブをクリックし、先程指定した値の分析軸とするBy Rowに任意の項目を選択し[OK]をクリックします。
- 設定完了後、以下のようにグラフが表示されます。
このようにJSON 内のデータをAPI を書くことなくBoard上で利用することができるようになります。