現在位置: ホーム / ビッグデータ ブログ / Tableau Server/OnlineへTreasureDataのクエリ実行結果を出力する

Tableau Server/OnlineへTreasureDataのクエリ実行結果を出力する

こんににちは、SSTDの髙橋です。 先日、トレジャーデータのResult Outputの新機能として、Tableau Server/Onlineへのクエリ結果書き出しが可能になりました。 これによって、Tableau Server/Onlineでダッシュボードを作っておくだけで、 データの定期更新ができるようになります。 今回はTableau Onlineを使って、この機能について紹介していきます。

Result Outputの新機能

1. Tableau Online

Tableau Onlineは、Tableau社がTableau Serverをホストして提供するクラウドサービスです。 設定したスケジュールで、 Salesforce と Google Analyticsのデータの増分を更新することができたり、 Google BigQueryやAmazon Redshiftに直接ライブ接続することが可能です。
Tableau Server/Onlineの機能として、Tableau Desktopとは異なり、データ自体の編集ができません。 例えば、MeasureとDimensionを入れ替えたり、フォルダを作成したりといったTableau Desktopの右クリックに当たる操作です。 そのため、Tableau Server/Onlineを使用する際には、Tableau Desktopも必要になる点に注意が必要です。

1.1. Tableau Onlineに登録する

それでは、早速Tableau Onlineに登録します。 こちらのページにアクセスし、無料で試すをクリックし、必要情報を記入しましょう。

登録完了後は、Tableau Desktopをダウンロードするポータルが表示されるので、Tableau Desktopもダウンロードしておきましょう。 Tableau Onlineには、登録したEメールアドレスから招待メール経由でログインします。

ログイン

初回ログイン時には、サイト名を入力します。 ここで記入した名前が、Tableau Onlineの自サイトのURLに使われます。 例:https://online.tableausoftware.com/t/(site name)/workbooks これでTableau Onlineの準備は完了です

2. Result Output into Tableau Online

次に、TreasureDataで、クエリの実行結果をTableau Onlineに書き出します。 ドキュメントは、こちらに掲載されています。 TreasureDataには別途サインアップ済みとします。 コンソール にログインをし、New Queryを選択します。

2.1. Tableauに適したクエリを書く

今回は、アカウント作成時にデフォルトで用意されているsample_dbのwww_accessのデータを利用します。 また、ドキュメントのサンプルクエリから少し変更して、pathの集計をしてみましょう。

-- sample query
SELECT
  CAST(TD_TIME_FORMAT(time, "yyyy-MM-dd hh:00:00") AS TIMESTAMP) AS `datetime`,
  path AS `path`,
  COUNT(1) AS `count`
FROM
  www_access
GROUP BY
  TD_TIME_FORMAT(time, "yyyy-MM-dd hh:00:00"),
  path

クエリの注意点としては、 unixtimeで格納されているtimeをStringの時刻として変換し、Timestamp型へとキャストする必要があります。 これは、Tableau上で時間としてデータを取り扱うことためには、Timestamp型である必要があるためです。 しかし、TreasureDataのストレージ上ではTimestamp型としては格納できないため、Tableauへ書き出す際に利用するようにしましょう。

2.2. Result Output to Tableau Onlineの設定

クエリの実行結果を書き出すためには、Result export toにて、Tableau Serverを選択し、パラメータを記入します。 まず、先ほどTableau Onlineに登録した情報を入力しましょう。

  • Export type: Tableau Server
  • Username: <登録したEmail>
  • Password: <登録したパスワード>
  • Host: online.tableausoftware.com

次に、下記の情報を入力します。

  • Datasouce: <任意の名前: 書き出したファイルの保存名>
  • Site:
  • Project:
  • Mode: append(追記)

クエリの設定

これでクエリの設定は完了です。 クエリを実行し、少し待つと下記のメッセージが表示されれば、書き出しは成功です。 

これでクエリの設定は完了です。 クエリを実行し、少し待つと下記のメッセージが表示されれば、書き出しは成功です。

14/09/06 10:15:21 INFO tableau.UploadCommand: > ===== File successfully published to the Tableau Server, at the following location:
14/09/06 10:15:21 INFO tableau.UploadCommand: > ===== https://online.tableausoftware.com/t//datasources/sample_db_path

3. Tableau Onlineでグラフの作成

Tableau Onlineにログインし、Datasourceを見てみましょう。 上記でDatasourceで命名したデータが格納されていることが確認できます。

データを確認

このデータソースを選択し、New Workbookを選びます。

Workbook

あとは、Tableau Desktopと同様にドラッグアンドドロップでグラフを操作していくことで、 下図のようにTableau Onlineだけでもある程度のグラフを作成できます。 下図では、Path毎のアクセス数を降順で表示し、日別の数を色分けしています。

グラフ作成

4. おわりに

TreasureDataからクエリの結果をTableau Onlineに直接書き出せるようになったことで、 クラウドサービスだけでダッシュボードまで一気通貫でよりスピーディーに導入することができるようになりますね。 Tableau Online/ServerとTableau Desktopとの連携も今後紹介していきたいと思います。