#tc18 [レポート] 「セルフサービス分析環境」の構築・展開・統治・運用 – Tableau Conference 2018 at New Orleans

データ分析のセルフサービス化を目指す
2018.11.01

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

目次

セッション概要

当セッションの概要は以下の通りです。

<セッションタイトル> Building, deploying, governing and working IT (「セルフサービス分析環境」の構築・展開・統治・運用)</br/> <講師> Emiliano Colosimo, Tableau Vinod Karmegam, Tableau

<レベル> Intermediate

<セッション概要> Are you curious about how IT can enable organizations to go from self-service chaos to self-service Zen? Join this session and learn the pain-points, pitfalls and how-tos behind engineering a solution for successful IT-powered Tableau deployments. You'll learn best practices and strategies for deploying and monitoring Tableau Server, how to leverage automation and APIs to optimize operational support and governance and become the IT hero that you've always wanted to be. (あなたは、ITチームが組織をセルフサービスの「混乱」からセルフサービスの「ZEN」に移行させる方法について興味がありますか? このセッションに参加して、ITを活用したTableauの導入を成功に導くソリューションのエンジニアリングの背後にある痛点や落とし穴、そしてHow toについて学んでください。 Tableau Serverの導入と監視のためのベストプラクティスと戦略、自動化とAPIを活用して、運用サポートやサーバーの統治を最適化する方法などなど…常に望んでいたITヒーローになる方法を学びます。)

セッションレポート

セッションの主題

当セッションの目標は、セルフサービスのデータ分析環境を大規模に展開し、その混乱から脱却して、組織が力を発揮できるようにすることです。あなたがTableauへの投資することで、ユーザーが、より自立的な権利を行使し、彼らは優れていることを、真のデータドリブンで行えるようになります。

「セルフサービス」とは?

JPモルガン・チェース社のバイスプレジデント兼BIイノベーションリーダーであるSteven Hittle氏は、データ分析における「セルフサービス」を以下のように考えています。

私はむしろビジネス側が自分たちの問題を解決するためのプラットフォームを作りたいと思っています。 私たち(IT側)は決してそれらすべてを知ることができないからです。 これが私のTableauの使い方に近づいた理由です。Tableauは、すでに取り組んでいた、自分のデータに接続して分析できるからです。

ビジネス面から見てもIT側から見ても、セルフサービスがもたらす主要な利点の数々に、私たちも同意できます。大規模であり、ビジネス面からもIT側からでもセルフサービスがもたらす主要な利点のいくつかには、私たちも同意できます。

データへのアクセスが容易となり、他部署による依存関係やボトルネックを最小限に抑えます。また、ビジネス側チームにデータドリブン型の意思決定を提供し、ビジネスの知識を活用することができます。そのチームでは、データをあらゆる視点から考えることができます。

私たちは常にビジネス側にレポートを提供しており、実際に「ビジネス側にサービスを提供する」サービスを拡張して提供することを、IT側として最も重点を置いています。

「セルフサービス」のためのフレームワーク

「セルフサービスのデータ分析環境の導入」のためのフレームワークは、以下の3つの柱で構成されています。

  • People
  • Process
  • Platform

People

Self-Service Content Analytics

各コンテンツがどれだけ利用されているか…というような情報は、すべてTableau Serverのリポジトリに格納されています。また、その情報は「管理ビュー」から視覚的に確認することができます。しかし、デフォルトでは、これはサーバー管理者しか利用できません。セルフサービスのデータ分析環境を構築する場合は、リポジトリをコンテンツ所有者にも開放してあげる必要があります。自分たちでこれらの情報を確認できるようにします。

Self-Service Schedule Analytics

Tableau Serverには「スケジュール」機能があります。何のタスクがどれだけスケジューリングされているか…という情報も、管理ビューで確認することができます。それは要するに、これも管理者ユーザーしか確認できないということです。 だから、管理者は、この管理ビューを、フィルタ等を追加した状態でコンテンツ所有者が利用できるプロジェクトにパブリッシュし直す、というシンプルな変更を、簡単な操作で行うことができます。Tableau Serverの利用者は、自分の抽出データがいつ準備されるのかを確認したり、遅延や失敗等の状況も把握することができます。 スケジュールに関するビューについて、どれだけの情報があれば利用者は満足するのか…という点については、何度も繰り返して試すしかありません。

Self-Service Permissions Analytics

各コンテンツのパーミッションを確認するためには、コンテンツの一つ一つにアクセスして確認しないといけません。しかし、この方法は全くスケーラブルではないといえるでしょう。もしかしたら、あるコンテンツ所有者は、何百ものワークブックを持っているかもしれません。あるグループは何百ものデータソースやダッシュボードを管理しているかもしれません。 ですので、パーミッションが一覧で把握できるサマリービューを用意しましょう。特にプロジェクトリーダーに権限を一任しているような場合は特に有効です(各プロジェクトリーダーは権限を管理するのが大変だから)。

Process

Structure

Tableau Server内に「サンドボックス」を用意しましょう。サンドボックスは全ユーザーが読み書きできるエリアです。ここにはちょっとしたワークブックや、テスト的に作成したもの等をパブリッシュします。そして、そこから許可されたものだけを「本番用」のエリアに移動させます。本番用は一部のユーザーしか編集できないようにします。

サイトやプロジェクトを組み合わせることで、上記のようなことが実現できます。

Content Certification Framework

「サンドボックス」と「本番用」を利用して、コンテンツの認証機構を準備します。我々の事例では、この一連の流れを自動化しています。

(ここで、REST APIを用いた自動化のデモが行われました。サンドボックスにパブリッシュされたワークブックに対して、プロジェクトリーダーがコメントで「承認」とするだけで、本番用にワークブックが移動する仕組みのようです。この模様は本エントリ下記の動画でご覧ください。29:30〜あたり)

Platform

Content Cleanup

放置しておくとサンドボックスは複数のワークブックやデータソースで溢れかえります。もう使われたいまたは存在しないコンテンツを整理するため、定期的なクリーンアップが必要です。

(ここでもデモ。一定期間放置されたデータソース等を可視化するビューや、REST APIを用いたスクリプトを使ったワークブックの移動等が紹介されました。)

Extract Schedule Intelligence

そのコンテンツがどれだけ使用されたかによって、抽出スケジュールを、動的に再スケジュールする仕組みが必要です。

あるワークブックがあったとして、それに使用されているデータソースは、最初は15分間に1回抽出がリフレッシュされるようになっていました。しかし、このワークブックの使用頻度が少ないため、次の週では、抽出リフレッシュの頻度を1時間に1回に自動的に変更します。しかし、その週では全くワークブックが利用されなかったため、次週では1日に1回の頻度に変更します。それでもワークブックが使用されなかった場合、最終的に抽出スケジュールはオフになります。これはREST APIを使用して組み込むことができます。

Performance Management

ワークブックのパフォーマンスを管理する必要があります。一例として、読み込みに30秒以上かかるワークブックを「パフォーマンスが遅いワークブック」と扱い、そのワークブックの所有者に通知を送ります。パフォーマンスが改善されない限り、毎週通知を送り続けます。そして4週目でも改善されない場合は、REST APIを用いて、自動的にそのワークブックのパーミッションをリセットし、所有者しかアクセスできないようにします。

これはパフォーマンスが遅いワークブックへのアクセスを最小限にする方策ですが、運用するには若干難易度が高いです。

Proactive Monitoring

Tableau Server自体のデータを確実に収集しましょう。PerfMonやTabMon等で監視することもできます。それに応じて、新たにノードを追加する等の対応をとることができます。

  • Tableauリポジトリで使用状況を監視する
  • TabMonを使用してリソースの使用状況を監視する
  • Tabjoltでパフォーマンステストを自動化する
  • Logsharkでログファイルを分析する

まとめ

Tableau Serverで「セルフサービスのデータ分析」を行うために押さえておくべき「フレームワーク」の紹介でした。どれも有用だとは思われますが、一部、日本企業では導入が難しそうなものもあるな…と感じました。導入企業のルールに応じて取捨選択が必要だと思います。

また、REST APIをフル活用したり、各ツールで監視するなど、Tableau Serverまわりの知見が結構必要そうなので、それらも別エントリで扱っていければいいなと考えております。

動画

  • https://youtu.be/tn40E-W76O0