こんにちは。CData Software Japan リードエンジニアの杉本です。
本記事では建設管理ソフトのAutodesk Construction Cloud のデータをTableau Desktop で分析・可視化する方法を紹介したいと思います。
Autodesk Construction Cloud とは?
AutoCADに代表される図面作成 ソフトウェアを主に開発しているAutodesk が提供する建設業界向けの建設プロジェクト管理のSaaS です。
https://construction.autodesk.co.jp/
以下のような画面で建設プロジェクトにおける指摘事項や提出物、アセットの管理などが行えるサービスになっています。
またAutodesk Construction Cloud では各種データへのアクセス、操作を行うAPI が提供されており、本記事ではこのAPI を利用してTableau との連携を実現します。
https://aps.autodesk.com/en/docs/acc/v1/overview/introduction/
実現イメージ
今回はAPIの連係対象BIツールとして、Tableauを使用しますが、Tableau から簡単にそれぞれのAPI に接続することはできません。 Tableau がどのようにWeb API側へリクエストを投げるべきか、認証の処理はどうすればいいか? などの判断材料やメタデータの情報が無いためです。
そこで、CData ODBC API Driverを用いて、このボトルネックを解決します。
https://www.cdata.com/jp/apidriver/
CData API Driver は様々なAPI をデータベースに仮想化し、ODBCやJDBCといった汎用インターフェースから接続できるようにするコネクターです。
このコネクタとTableau が標準で持つODBC・JDBC 連携機能を組み合わせて、様々なAPI との連携を実現します。
今回の記事では最終的に以下のようにAutodesk Construcion Cloud の持つデータをCData API Driver 経由でTableau に取り込み、可視化できる状態にするまでの手順を解説していきます。
前提条件
本記事では以下のサービスや製品を使用しています。
・Tableau Desktop
・CData ODBC API Driver
・CData API Profile for Autodesk Construcion Cloud
Autodesk Construcion Cloud Web API の利用準備
Autodesk Construcion Cloud Web API を利用するためには接続用のアプリケーションを予め作成しておく必要があります。
まず、以下のURLにアクセスし「Create application」をクリックします。
https://aps.autodesk.com/myapps/
任意のアプリケーション名を入力し、Application Type から「Traditional Web App」を選択し、「Create」をクリックします。
作成完了後、接続のために必要になる「ClientId」「ClientSecret」という値が表示されるので、これらの値を控えておきます。
また、Callback URLを空いているローカルホストの番号に変更しておくと良いでしょう。私のマシンでは8080ポートを使っていたため、空いているポートを使って「http://localhost:33333/」を指定しておきました。
API Profile の準備
CData API Driver で任意のAPI に接続するためには予めAPI Profile と呼ばれる設定ファイルを作成する必要があります。
今回は私が予めサンプルとなるAPI Profile を作成しているため、以下のURLから入手してください。
https://cdatajbuilds.s3.ap-northeast-1.amazonaws.com/APIProfiles/AutodeskConstructionCloud.apip
なお、本API Profile で対応しているAutodesk Construction Cloud API の対応状況は以下の通りとなります。
CData ODBC API Driverのインストール
続いて、Tableau とAutodesk Construction Cloud API を繋ぐために必要となるCData ODBC API Driverをインストールします。以下のURLからフル機能のトライアル版がダウンロード可能です。
https://www.cdata.com/apidriver/download/
なお、Tableau の各製品によってCData 製品の組み合わせが異なります。以下に各Tableau のエディション毎の連携パターンの解説記事がありますので、参考にしてみてください。よくわからない場合はお問い合わせフォームまでお気軽にどうぞ。
https://www.cdata.com/jp/blog/tableaupattern
ダウンロードしたsetup.exeファイルをTableau がインストールされているマシンにインストールします。インストールウィザードに従い、EULA を確認した上でインストールを完了します。
※途中、ライセンスサーバーへのオンラインアクティベーションが行われるためネットワーク環境に接続されている必要があります。
インストールが完了すると、ODBCのDSN設定のウィンドウが立ち上がります。
以下の項目をセットし、保存します。
Property
|
Value
|
|
Profile
|
C:\APIProfiles\AutodeskConstructionCloud.apip
|
API Profileのファイルパス
|
Profile Settings
|
ProjectId=your_project_id
|
対象のProjectIdを指定
|
Auth Scheme
|
OAuth
|
|
Initiate OAuth
|
GETANDREFRESH
|
|
OAuth Version
|
2.0
|
|
OAuth Client Id
|
例)kCAbJOXX49vpPYxQGf9z1qcFmqa7QNnu
|
作成したアプリケーションのClient Idを指定します。
|
OAuth Client Secret
|
例)F72b5EGBP9n2M7yG
|
作成したアプリケーションのClient Secret を指定します。
|
Callback URL
|
http://localhost:33333/
|
|
入力後、「接続テスト」をクリックすると、ブラウザが立ち上がり、アクセス許可の画面が表示されるので、内容を確認し「許可」をクリックしましょう。
アクセス許可が正常に完了すると、以下のようなメッセージがブラウザとメッセージウィンドウで表示されます。
接続の完了後、「Data Model」のタブから利用できるアプリ・フォームのデータモデルが確認できます。
また、「Preview」をクリックすることで、実際のAutodesk Construction Cloudデータも確認できます。
Tableau Desktop で接続
それでは、実際にTableauと接続して、データの取得処理を実施してみましょう。
Tableau Desktopを起動して、データ接続より「サーバーへ」>「詳細」>「その他データベース(ODBC)」を選択します。
「その他のデータベース(ODBC)」設定ウィンドウが開いたら、接続手段内のDSN から先程作成したコネクションを選択して「接続」→「サインイン」します。
サインイン完了後「データソース」画面が開くので、左側のペインで、「データベース:CData」「スキーマ:AutodeskConstructionCloud」を選択することで、利用できるテーブルの一覧が表示されます。
表示後、利用したいテーブルをドラッグアンドドロップで配置し、項目やデータのプレビューを確認してみましょう。正常にAutodeskConstructionCloud のデータが参照できていればOK です。
あとは、Tableauのシートに移動して、各種項目を組み合わせてグラフを作成できます。
おわりに
このようにAPI の専門的な知識がなくても、CData Driver を利用することで様々なAPI にTabelau から接続することが可能です。
今回紹介したAutodeskConstructionCloud API以外にも様々なAPI コネクターを公開していますので、ぜひ自社で使っているサービスに合わせて活用してみてください。
https://www.cdata.com/jp/drivers/
実際に試していく中で、「このAPI にもつなぎたい」「こういう時はどうすればいいの?」といった気になる部分があれば、お気軽にテクニカルサポートフォームまでお問い合わせください。
https://www.cdata.com/jp/support/submit.aspx
関連コンテンツ