インテージテクノスフィア技術ブログ

株式会社インテージテクノスフィアの社員達がシステム開発や仕事に関する技術情報を随時掲載いたします

【Tableau】ここだけは押さえておきたい!Tableau Server 管理のポイント

こんにちは、アイダです。「クーリスマスが今年もやってくる~♪」の季節になりました。みなさんはどのチキンを食べる予定ですか?ケンタッキー、ななチキ、Lチキ、ファミチキ...

なぁにぃ~!!やっちまったな!!男は黙って、サラダチキン!

そんな "男" には引っ込んでいただいて、今回は平成女子2人に登場いただきます。おふたりが受講した Tableau Server トレーニングで得た知見のまとめです。それでは、リサーチシステム一部の Oさんと Nさんどうぞ!(ON砲だね、って言っても伝わらないだろうな...)

f:id:intage-tech:20211223182111j:plain

はじめに

最近、BIツールを使った案件をよく聞く気がします。
流行りの波に乗り遅れないように(もう遅い気もするけど)と、Tableau 社が開催している Tableau Server Administration バーチャルトレーニングに参加してきました。
学んだことを共有したい...と思っても、盛りだくさんすぎて全部書くわけにはいかないので、これから Tableau Server を構築する方や現在 Tableau Server を運用している方に向けて、「ここは押さえるべき!」なポイントに絞ってお伝えしようと思います。

機能は知っているけど、どうするのが正解なんだろう?のヒントになれば嬉しいです。

トレーニングについて

Tableau Server Administration バーチャルトレーニング

トレーニングの種類がたくさんあるので迷いましたが、私たちは Tableau Server Administration に参加しました。
ユーザーが使う Tableau Desktop や Tableau Prep といったいわゆる "BI ツール" そのものではなく、ダッシュボードを継続的に共有・利用するための Tableau Server の 維持管理・運用 が学べる内容となっています。

開催概要

Tableau Server に触れたことはありつつも、きちんと考えて運用をしたことはないという状態で受講しましたが、このトレーニングは前提知識は必要なく、仮想サーバーを使ったハンズオン形式で行われるので、全く経験がない方でも問題ないと思います。

実際にものを触れるのはトレーニングならではですよね。

Tableau Server 管理をするなら、ここは押さえるべき!

パーミッション管理

ユーザーが利用できる機能を適切にコントロールするために必要なのが、パーミッション管理です。
パーミッションは個々のコンテンツ(プロジェクト、ワークブック、ビュー等)単位で、ユーザー及びグループに対して設定可能です。
ただし、Tableau公式サイト( パーミッション - Tableau )ではパーミッションはプロジェクトレベルで、グループに対して設定することが推奨されています。

まず、プロジェクトレベルでパーミッション設定するメリットとしては、以下が挙げられます。

  • プロジェクト内に作成したコンテンツにプロジェクトレベルの権限設定を引き継ぐことができる
  • 既定(default)のプロジェクトで最小限の権限を設定しておけば、その設定が新規プロジェクトにも引き継がれる

後者について、デフォルトでは既定プロジェクトは「すべてのユーザー」グループに対してパーミッションが付与された状態です。

f:id:intage-tech:20211223174234p:plain

Tableau の仕様で、新規でプロジェクトを作成したときのパーミッション設定はこちらが引き継がれることになるため、予め必要最低限の権限設定をしておくことで、個別のプロジェクトでの権限設定の漏れを防ぐことができます。

例えば、こんな感じ。
すべてのユーザーは権限を持たず(なしを設定)、adminグループには閲覧とパブリッシュ、viewerグループは閲覧のみ、としておくとで、 新しいユーザーを追加したときに予期せずにプロジェクトを公開してしまうといったことが防げます。

f:id:intage-tech:20211223174347p:plain

help.tableau.com

加えて、グループに対してパーミッション設定するメリットとしては、以下が挙げられます。

  • 新規ユーザーをグループに追加するだけで、その人に必要な権限をまとめて付与できる
  • 誰が何の機能を利用できるかが明確(個人単位の権限付与よりも、把握が楽)

前者については、プロジェクトレベルでの説明でも少し触れていますが、例えば、新しい開発メンバーはまずは開発用グループに追加するという運用にすれば、開発環境整備にかかる時間を削減することができます。

グループはActive Directoryから部署のグループをインポートすることも可能ですが、Tableau公式サイト( コンテンツ プロジェクト、グループ、パーミッションの構造作成 - Tableau )では部署等の組織別ではなく、役割別にグループを作成することが推奨されています。そうすることで、組織と付与する機能を組み合わせることができ、例えば同じ営業部署でも付与したい権限が異なる場合に柔軟に対応することができます。

Tableauを導入した最初の段階で役割別のグループ分けを明確にしておけば、とりあえず最大権限を与えておくというような運用が防げて良さそうですね!

データ接続方法(ライブ接続 vs 抽出)

Tableau には 2種類のデータ接続方法があり、目的に応じて使いわけをすることで、適切なパフォーマンスを保つことができます。
「必ずどちらかを選んでおけばOK!」というものではありません。

  • ライブ接続: データベースにライブ(リアルタイム)で接続する
  • 抽出   : Tableau Server 上に抽出されたデータに接続する

まず、ライブ接続を選択するケースとしては、以下が挙げられます。

  • ダッシュボードで、常に最新の情報が見たい
  • データベースの性能が高い

ライブ接続の場合、ユーザーがダッシュボードを開くたびに、データベースにクエリが投げられ、実行されます。
なので、データベースに常に情報が更新されており、その最新情報にアクセスしたい場合は、ライブ接続を選択することになります。
しかし、ユーザーが増えれば増えるほど、データベースへの接続数が増えることになり負荷がかかってしまうので、用途によっては負荷テストが必須になってくると思います。

一方、抽出を選択するケースとしては、以下が挙げられます。

  • データ更新頻度が低い
  • データベースの性能が低い(レスポンスが遅い)
  • オフラインでデータに接続したい(Tableau Serverが外部接続していないなど)

そもそも接続しているデータの更新頻度があまり高くない場合、ライブ接続のメリットである逐次実行は必要ないですよね。
データの実体が、Excel や CSV などのテキストファイルの場合は、更新頻度が高くないことが多いのではないでしょうか。

また、Tableau Server 自体がオフライン環境にある場合もライブ接続ができないので、抽出を選択することになると思います。この場合は、抽出作業のときだけネットワーク経路を開けるのか、毎回データソースをパブリッシュするのかは、、運用次第になりそうです。

おまけの TIPS

トレーニングを通してだったり、これまでの経験を通して、「これは知っておくと便利!」と思ったものです。
誰かの役に立ったら嬉しいな。

抽出データのパブリッシュで時間がかかるときは、ライブ接続→Tableau Server上で抽出に設定変更するとよい

データ量が多かったり、在宅勤務で家のネットワークが遅かったりで、パブリッシュに時間が掛かるときありますよね。

f:id:intage-tech:20211223175229p:plain

そういうときは、まずはライブ接続で接続情報のみをパブリッシュした後、抽出に切り替えて、直接データベースから抽出するとパブリッシュ時間が短縮できます。

f:id:intage-tech:20211223175251p:plain

悩んでいる方は、ぜひお試しを。

Performance Recording 機能で、パフォーマンスのボトルネックを探る

Desktop / Server どちらにもある機能。トレーニングで初めて聞きました。

help.tableau.com

大量データであったり、複雑な計算をする Viz を作成したとき、「データソースを読み込んでいます」「クエリを実行しています」から動かない... なんていうときに、具体的にどこの処理に時間がかかっているのかを探ることができます。

使い方については、すでに多数の方が記事にしてくれているので、そちらを御覧ください。

newssdx.kcme.jp

Tableau Server で、サイトごとに名前・アイコンが変えられる

一気に雰囲気が変わりましたが、トレーニング講師の熱がすごかったので、紹介したいです。
講師の方曰く「わたしたちのサービス感を醸成する」ためには、必要な機能なんだと。
分かる気がする。

help.tableau.com

公式ドキュメントのURLを変えると、Tableau バージョンの指定できる

知らなくてもいいけど、知っていると人に自慢できると思います。(知らんけど)

https://help.tableau.com/current/server/ja-jp/perf_record_create_server.htm

https://help.tableau.com/v2021.2/server/ja-jp/perf_record_create_server.htm

基本的には、常に最新に更新することが推奨されていますが、諸々の事情でバージョン指定で運用している方もいらっしゃると思うので、そんな人に届くといいなぁ。

おわりに

せっかく学んだのだから、どこかで一回ちゃんと運用作業をしてみたいなー。
最新の情報や詳しい設定手順などは、Tableau公式サイト( Tableau Server を始める前に - Tableau )をご確認くださいね。

なにか1つでもお役に立てていたらうれしいです。