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. 最速で理解したい人のためのIT用語集

関連記事

  1. Tableau

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

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

  2. Tableau

    ネストLODで2重のFIXED関数を使ってみる【Tableau】

    ネストLODとはネストLODとは「入れ子になっているLOD計算」のこ…

  3. Tableau

    【TC19ブログ】Tableau新データモデリング(リレーションシップ)解説

    ※本記事はTC19のDevsOnStageで発表と、TC19でのセッシ…

  4. Tableau

    Tableau Tips〜LOOKUP関数〜

    はじめに「LOOK UP」は見上げる、調べるという意味の英単語です。…

  5. Tableau

    Tableau:KPI達成状況を把握出来るグラフを作る

    こんにちは。エクスチュア渡部です。今回はTableauで↑のように…

  6. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2019/10/02時点)

    ※こちらの記事は過去の手順です。新しい手順についてはこちらの記事を参…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

  1. Streamlitを使った簡単なデータアプリケーション作成ガ…
  2. 生成AI機能を活かしたデータカタログ製品「Secoda」を試…
  3. 回帰分析はかく語りき Part2 重回帰分析
  4. 第14回関西DB勉強会-Snowflake Summit参加…
  5. Open Interpreter+VScode+Docker…
  1. IT用語集

    サーバー(Server)って何?
  2. ブログ

    東南アジアのデジタルマーケティング
  3. Adobe Analytics

    Adobe Analytics: Legacy s_code.jsからAppMe…
  4. Python

    Streamlitを使った簡単なデータアプリケーション作成ガイド
  5. ブログ

    "Marketo"を使ってみて。パート2
PAGE TOP