Tableau

あなたのTableau(タブロー)が重い理由【パフォーマンスの記録】

はじめに

Tableauを利用している人のほとんどが経験しているであろう「ダッシュボードが重い」という悩み。
原因はデータの取り込み量が多すぎたり、レイアウトが重かったり、クエリの処理に時間がかかっていたりと様々です。
今回は、そんな悩めるTableauユーザーに向けて参考になる記事がかければと思います!
では早速みていきましょー!!✨

【結論】ワークブックのパフォーマンスを記録・分析する

Tableauには「ワークブックのパフォーマンスを記録する」という機能がデフォルトで入っています。
(いちいちプログラムを書く必要がないので本当に楽)

例えば、以下でTableau Desktopサンプルスーパーストアのパフォーマンスを見てみます。

①「ヘルプ」>②「設定とパフォーマンス」>③「パフォーマンスの記録を開始」

④「フィルターを変更」>⑤「他シートにも移動して、フィルターやパラメーターを変更」

⑥「ヘルプ」>⑦「設定とパフォーマンス」>⑧「パフォーマンスの記録を停止」

すると、以下のダッシュボードが自動で生成されます。

1ページでは「パフォーマンスサマリー」がまとまっていますが、これだと情報量が少なすぎるので赤枠にある「タイムライン(Timeline)」「イベント(Events)」などを選択してより細かな分析をしていきます。
例えば、イベント(Events)では以下の画面が表示されます。

このグラフ上でマウスホバーすればツールヒントで詳細を閲覧できるのですが、一目で把握できるように以下のように指標を入れ替えます。
※好みの問題なので入れ替えなくても大丈夫です。

ここで判明したボトルネックを見直していくことで、よりパフォーマンスの高いダッシュボードを作成することができます。
(サンプルスーパーストアは抽出を使用していることもあり、かなりパフォーマンスが良いですねw)

パフォーマンスの記録で分析できる8つのこと

1. クエリの実行クエリの処理時間を算出。LIVE接続の際に最もよく見られる)
→「抽出」への変換を検討する。フィルターの数が多ければ「コンテキストフィルター」などの利用を検討する。

2. クエリのコンパイル(Tableau内のSQLを機械語に翻訳する時間)
→「長い計算式」「LOD計算」などを見直す。参照元データベースで処理できないかを検討する。

3. ジオコーディング(都道府県などの地理情報をTableauで可視化する時間)
→「フィルター」を用いてデータ量を減らす。

4. データソースへの接続データソースへの接続時間)
→「ネットワーク」「データベースサーバー」を見直す。

5. レイアウト計算(ビューのレイアウトを構成する時間)
→「ビューの簡素化」を目指す。

6. 抽出の生成(抽出にかかる時間)
→データソースから取り込む「データの絞り込み」を検討する。

7. データのブレンド(データブレンドに要する時間)
→「フィルター」を用いてデータ量を減らす。

8. サーバーレンダリングTableau Serverでレンダリングに要する時間)
→別のマシンで「VizQL SQL」を実行する。

「タイムライン」「イベント」「クエリ」について

タイムライン」→記録中に発生したイベントを左から右へ表示。

イベント」→上の8つの指標の所要時間を算出。

クエリ」→パフォーマンスサマリーのダッシュボードで、イベントやタイムラインの「クエリを実行」を選択するとクエリが出力される。

Tableau Serverの場合はURLを編集する

Tableau Serverの場合は、URLを編集するだけでパフォーマンスを測定することができます。

やり方はシンプルで「:iid=」の前に「:record_performance=yes&」をコピペするだけです。

(例)
通常:http://10.32.139.22/#/views/Coffee_Sales2013/USSalesMarginsByAreaCode?:iid=1
→「http://10.32.139.22/#/views/Coffee_Sales2013/USSalesMarginsByAreaCode?:record_performance=yes&:iid=1」

そしてページを更新し、Desktopと同様フィルターなど様々な操作を加えれば完了となります。
以下の「Performance」をクリックすれば、測定結果を閲覧することができます。

(参考;Tableau公式HPTableau公式HP

おわりに

いかがでしたでしょうか。
パフォーマンスの記録はとても便利な機能で、私(ヨナハ)もよく使います。
レイアウトや計算式でA/Bテストをしたい時にも有効ですね!

この記事を通して「パフォーマンスの記録」に関する理解を深めていただければ幸いです。
最後まで目を通していただきありがとうございました🙇‍♂️

参考元

https://help.tableau.com/current/pro/desktop/ja-jp/perf_record_create_desktop.htm

関連記事

  1. Tableau

    【手順解説】MacでRedshiftに接続できない時の原因と対処法【Tableau経由】

    はじめに今回は、私(ヨナハ)が実際に業務でトラブったことをシェアし…

  2. Tableau

    Tableau Tips〜Onlineで利用可能なフォント〜

    はじめにTableau Server/Onlineで利用可能なフォ…

  3. Tableau

    DirectionAPI+Tableauでドライブ時間の可視化(後編)

    だいぶ間が空いてしまいましたが、DirectionAPI+Tablea…

  4. Tableau

    Tableau Tips〜INDEX関数〜

    はじめに今回紹介するINDEX関数はTableauの関数の中でも非…

  5. Tableau

    Tableau-折れ線グラフ

    こんにちは!インターン生の市川です。今回は、私の主観なのですが、で…

  6. Tableau

    Tableau Serverの基礎をまとめてみた

    【目次】・はじめに・Tableau Serverが必要な理由…

PAGE TOP