Tableau Serverを「統治」する上で考えておくべき5つのポイント #tableau

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは。大阪オフィスのDI部メンバー、tamaです。

Tableau Serverは、Tableau Desktopで作成したワークブックをブラウザで簡単に共有できるサービスですが、それは、場合によっては非常に重要なデータを扱うサービスでもある、といえます。ですので、Tableau Serverの運用管理(表題では「統治」と書いてますが)は、事前にしっかりと考えておく必要があります。しかし、どういう運用管理にしていけばいいのか考えるのは、なかなか大変だと思います。

上記の記事は、「5つの問い」に答えていくようにすれば、自組織に必要なTableau Serverの管理方針が見えてくる…といったものです(かなり主観)。今回は、この記事を参考に「Tableau Serverを運用管理する上で考える5つのポイント」をまとめてみたので、Tableau Serverユーザーの方は参考にしてみて下さい。(本エントリの画像は全てこの記事のものです)。

5つのポイント

  • 自分の組織にとって、一番ふさわしい管理モデルを考える
  • サイト、プロジェクト、コンテンツの階層とは何なのか、理解する
  • Tableau Serverを管理するユーザーについて理解する
  • 各コンテンツがパブリッシュされるまでの流れ(フロー)を考える
  • ユーザーが(適切な)コンテンツにアクセスできるようにする

自分の組織にとって、一番ふさわしい管理モデルを考える

上記の記事によれば、Tableau Serverの主な管理モデルとして、集中型(centralized)、分散型(decentralized)、連合型(federated)の3つがある…とのことです。自分の組織に一番適しているのはどのタイプなのかを判断する必要があります。

集中型

1人の管理者がTableau Serverを管理する方式です。

  • メリット
    • 構成がシンプルでわかりやすい
      • ゆえに構築も簡単
    • 利用者にとって管理者が誰であるかわかりやすい
  • デメリット
    • 管理者が1人しかいない
      • 管理者に対する要望が増大すると、それの対応に追われることになる
      • 上記の状態になると、管理者は本来の業務にあたることができない

分散型

管理者を複数人用意して、それぞれの管轄だけ管理させる方式です。例えばTableau Serverを導入する組織の部署毎にサイトを作成し、各サイト毎にサイト管理人を用意し、サイト内の管理はその管理者が行うようにします。そしてTableau Server全体の管理はTableau Server管理者(サーバー管理者)が行います。この管理者も複数人用意します。

  • メリット
    • 管理業務が分散される
      • サーバー側とサイト側で分ける等
  • デメリット
    • 管理者同士でTableau Serverの運用方針を決めておく必要がある
      • Tableau Serverには、Tableau Server上で直接ワークブックを編集する機能があります。しかし、ある部署は「セキュリティリスクがあるからサーバー全体で無効化するべき」といった意見が出ることも考えられます。全体で向こうにするのか、パーミッションで制御するのか、いずれにしてもサイト間を跨ぐ設定に関して、利用者との調整が必要になってきます。

連合型

基本的には分散型と同じですが、それぞれの部門(サイト)の管理者やパワーユーザーを集めた「運営委員会」のような組織を配置する方式です。各部門から挙がった要望の検討・対応や、Tableau Server全体の構成や設定に関する決定も行います。

サイト、プロジェクト、コンテンツ(の階層)とは何なのか、理解する。

既に名称は出てきていますが、Tableau Serverには各コンテンツを管理するための概念が存在します。それらがどのようなものか理解しておき、ワークブックやデータソースの管理をどのようにするか検討する必要があります。

基本的には下記のエントリを見てもらうのが一番早いと思います。

重要ポイントだけサクッと書いておきますと、サイト間は完全に隔離される(シェアードナッシング)ということです。サイトをまたいでワークブックを共有する的なことはできません。ユーザーもサイト毎に登録が必要です。

コンテンツをサイトレベルで分けると、セキュリティ的には良いが、アクセスが面倒…サイト下のプロジェクト単位で分けると、アクセスは容易だが、セキュリティ的には難しい(パーミッション設定をしくじると見せてはいけないものを見せてしまうことに…)…。それぞれの特性を理解し、自組織にフィットする管理体系を考えましょう。

Tableau Serverを管理するユーザーについて理解する

Tableau Serverを管理するためには、サイトロールが「サーバー管理者」か「サイト管理者」である必要があります。逆に言うと、管理者ユーザーがちゃんと管理操作を行うためには、サイトロールをこれらにしておく必要があります。

理解しておくべきなのは、この2つの管理者の違いについてです。この2つの管理者は管理できる範囲が違います。サーバー管理者はTableau Server全体を管理できますが、サイト管理者は「そのサイトの中」しか管理できません。例えば、サイト自体の管理(サイト自体の追加や削除など)は、サイトの外の話なので、サーバー管理者じゃないとできません。また、Tableau Server全体に関わる設定もサーバー管理者じゃないとできません。

逆に共通しているのは、管理の範囲内であれば、無制限にアクセスできるということです。サーバー管理者もサイト管理者も、パーミッション設定が効かないため、パブリッシュされているコンテンツは全てアクセスできます。

サーバー管理者とサイト管理者の特徴について理解できれば、後は自組織の事情に応じて、役割分担を決めておきましょう。「それぞれのサイト下の管理はサイト管理者に一任する」とか、そういったことですね。サーバー管理者とサイト管理者は、連携がとりやすいようにした方がいいので、連携手段についても考えておきましょう(サーバー管理者とサイト管理者で部署が違ってたりして、なかなか連絡がとりづらくなる可能性などが考えられます)。

各コンテンツがパブリッシュされるまでの流れ(フロー)を考える

コンテンツというと「何のこっちゃ」となりそうですが、要するにワークブックやデータソースをパブリッシュするフロー(流れ)を定める必要がある…ということです。

「方針は特に無い」「自由に使っていい」(各自勝手にじゃんじゃんワークブックとかパブリッシュしちゃっていいよみたいな)ということであれば、このポイントは深く考えなくていいと思います。

しかし、それなりに重要なデータを、それなりにちゃんと可視化し、それなりにちゃんと共有していく…ということであれば、このポイントはちゃんと考えた方がいいです。

パブリッシュフローの一例

  • 「本番用」と「検証用」のプロジェクトを用意する
  • ワークブック作成者は検証用プロジェクトしかパブリッシュできないようにする
  • 別のユーザーが検証用プロジェクトにパブリッシュされたワークブックの内容をレビューする
    • 内容に問題がある場合は、作成者に修正依頼を行う
  • 内容に問題が無ければ、そのユーザーが本番用プロジェクトにワークブックを移動する

あくまで一例ですが、こうすることで、本番用プロジェクトには、レビュー済みのワークブックのみが集まるようになり、内容に問題の無いVizだけを集中して確認することができます。このような形で、各コンテンツをパブリッシュするフローを定めておくことで、適切にコンテンツを管理できるようになります。

細部もできるだけルール化しておく

また、レビューのガイドラインを決めておいたり(例:読み込みに1分以上かかるビューはNG)、「パブリッシュされたことをどこまで知らせるか(誰に通知するか)」ということ等、その他細かいところもルール化しておくと、後々運用が楽になっていくと思います。

自動化

Tableauには色々なAPIが用意されており、その気になれば一連の流れを自動化することもできます。

本エントリでは詳しく説明しませんが、「こういった手段もある」ということは覚えておきましょう。

ユーザーが(適切な)コンテンツにアクセスできるようにする

パブリッシュしたワークブックやデータソースは、ユーザーがアクセスできないと意味がありません。かといって、全ユーザーが全コンテンツに自由にアクセスできるのは組織上マズい…ということも往々にしてあるかと思います。これは、適切な権限設定(コンテンツパーミッション)を考える必要があります。

「ワークブック一つ一つに対して、Aさんはアクセス可能、Bさんはアクセス不可、Cさんは閲覧のみ許可…」とやっていては、日が暮れてしまいます。Tableau社が提唱しているベストプラクティスは、グループ×プロジェクトでパーミッションを設定することです。ユーザーはグループとして、各コンテンツはプロジェクトとしてまとめて、それらに対してパーミッションを設定します。こうすることで、後から何人かユーザーを追加することになっても、適切なグループに所属させるだけで、追加したユーザーにパーミッションを反映させることができます。下記を参考に、自分の組織には、どういったグループとプロジェクトが必要なのか、そしてどういったパーミッションを設定しておくべきなのか、考えておきましょう。

おわりに

Tableau Serverをどう管理していくかという問題は非常に難しいです。どういう体制が一番望ましいのかは、その組織によって千差万別なため、決定版みたいなものもありません。Tableau Serverの特性や機能などを、自組織にどう合わせていくのかは、「Tableau Serverを使ってデータ分析をどう進めていくのか」…という要件にかかっているようにも思えます。