#tc18 [レポート] 「The Tableau Way」〜Tableau Serverのスケーラビリティパフォーマンステスト – Tableau Conference 2018 at New Orleans

目次

 

セッション概要

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

<セッションタイトル>
Scalability performance testing | The Tableau way
(「The Tableau Way」〜Tableau Serverのスケーラビリティパフォーマンステスト)

<講師>
Nick Brisoux, Tableau
Madeleine Corneli, Tableau

<レベル>
Advanced

<セッション概要>
This session walks through real-world testing scenarios for Tableau Server. We’ll explain how we use the flexibility of public cloud platforms (primarily AWS) to design and execute Server performance testing that can help users predict how their deployments will operate at scale. We will address general Server performance as well as targeting specific processes, like Hyper. The session will focus on specific testing scenarios we have used internally, to offer a template for Tableau users to follow when designing their own enterprise testing and deployments.
(このセッションでは、Tableau Serverの実際のテストシナリオについて説明します。 パブリッククラウドプラットフォーム(主にAWS)の柔軟性をどのように使用して、ユーザーが展開方法を予測するのに役立つサーバーパフォーマンステストを設計および実行するかを説明します。 Hyperのような特定のプロセスを対象とするだけでなく、一般的なサーバーのパフォーマンスにも対応します。 このセッションでは、内部的に使用している特定のテストシナリオに焦点を当て、独自のエンタープライズテストおよびデプロイメントを設計する際のTableauユーザーのテンプレートを提供します。)

 

セッションレポート

 

セッションの目的

一言でいうと「クラウドインフラストラクチャとTableauツールを使用してTableau Serverのスケーラビリティテストと計画を理解する」のが目的です。

the Tableau Wayとは

Tableau独自のスケーラビリティチームと協力して、製品チームがサーバーのスケーラビリティをテストする方法を理解しました。ツールとリソースを使用して、視覚的に情報を調べるのがTableau流です。

クラウドへの移行

ある顧客からこんな問い合わせがきました。

Tableau ServerをオンサイトからクラウドベンダーXYZに移行したいと考えています。 本番環境では5つのノードを使用しています。初期設定では、この環境をクラウドベンダーXYZに移動してからオンデマンドデータソースに接続し直します。

私たちのデプロイメントには、現在、それぞれ128ギガバイトのRAMを搭載したN台のサーバーがあります。3000人のユーザーが利用できる環境が必要です。パフォーマンス要件を満たすためにどのVMを選択すべきかを検討する必要があります。 私たちは過去にいくつかのパフォーマンス上の問題を抱えていました。 この種の作業負荷をサイジングする経験があり、私と色々な洞察を分かち合うことができる人はいますか?

まとめると下記のような形になります。こういった悩みを抱えているサーバー管理者の方はとても多いと思います。

  • 「現在のデプロイが遅すぎる」
  • 「OSをアップグレードするか、別のOSに移行するかしたい」
  • 「私は次のMヶ月間にXユーザーを追加している」
  • 「私は抽出が非常に重く、あらゆる事が減速している。」
  • 「私は、使用量の多いユーザーのグループを自分の環境に移動したいと考えている。」  

関連ツールと技術

今回の話で出てくるツールは下記の通りです。

 

一般的な使用例

ユースケースその1 - 現在の環境の移行

  • 実行理由
    • クラウドへの移行
    • アップグレード
  • 前提条件
    • あなたはあなたの現在のパフォーマンスに満足しています
    • 使用パターンは一貫しています。

  • オンプレ→AWSへの移行例
    • 現在の環境をバックアップする
    • 新しいインフラに複製する
      • Tableauのデフォルトサイズの推奨値を超える場合、設定を複製する
      • またはTableauの推奨事項を設定する
      • デフォルトサイジングの計算方法
        • 10%のレイテンシのデフォルト設定で、8-10ユーザ/1コア
    • ベースラインのパフォーマンスの期待値を定める
    • TabJoltで新しいハードウェアをテストする
      • 既存の使用パターンと最大使用パターンを複製するテストを作成する
ツール補足 - TabJolt

  • 簡易定義
    • テストシナリオを指定し、既存のサーバー導入に対して実行することができる
  • 入出力
    • 既存マシンにインストールされたプログラム
    • メトリック(スループット、エラー率)を持つTableauワークブックで結果表示
  • 使用例
    • 指定されたダッシュボードを表示または操作している特定の同時ユーザー数で、サーバーのパフォーマンスを測定するために使用
ツール補足 - TabMon

  • 簡易定義
    • TabMonを使用して、CPU、RAM、キャッシュヒット、アクティブセッションなど、サーバーマシンの正常性とパフォーマンスを追跡する。
  • 入出力
    • 既存マシンにインストールされたプログラム
    • メトリック(スループット、エラー率)を持つTableauワークブックで結果表示
  • 使用例
    • 現在のクラスタはTableau Server上のトラフィックをどのように処理していますか、という確認に使用
ツール補足 - The RePlayer

  • 簡易定義
    • LogSharkを使用して、別のサーバー環境で再生できるセッション情報を抽出する。
  • 入出力
    • LogShark
    • 複数の手動構成
ツール補足 - Scout

  • 簡易定義
    • 特定のブックのパフォーマンスを評価する
  • 入出力
    • Tableau Serverを指定
    • csvファイルで結果出力
  • 使用例
    • 移行/アップグレード後にワークブックが同様に機能することを確認するために使用

ユースケースその2 - ユーザーの追加

  • 実行理由
    • ユーザー追加
  • 前提条件
    • 現在のパフォーマンスに満足している
    • 使用パターンは一貫している

  • 1000ユーザー追加の例
    • Tableau Serverをバックアップ
    • 新しいユーザー数を特定する
    • デフォルトの推奨ハードウェアを計算する
    • テストを実行して、通常時または最大の使用レベルでパフォーマンスを判断する

ユースケースその3 - 容量の増加

  • 実行理由
    • ライセンスの切り替え
    • 現在のデプロイのパフォーマンスを向上させたい
    • 使用パターンが変更された

  • Tableau DesktopからWebオーサリング体験への移行
    • サーバーのバックアップ
    • 対象領域の調整
    • 新しいワークロードをシミュレート

 

リソース

セッションのまとめ

  • 一度にテストするのは1つの変数(ユーザー、ハードウェア、プロセス、ビュー)で。
    • そしてそのテストを繰り返す
  • クラウドの柔軟性を活用してテストを容易にする
    • マシンのサイズを簡単に変更し、イメージを使用して追加のテスト環境を作成し、スクリプトをテストする
  • テストの手助けとなる多くのリソース(ホワイトペーパー、ブログ記事、オープンソースツール)を活用する
  • 同様のテスト方法は、スケールアップ、スケールアウト、ユーザーの追加、プロセスの追加などに役立つ

 

まとめ

Tableau Serverをクラウドに移行する際のスケーラビリティのテストに関する話でした。他のセッションでも度々出てきた各ツールを駆使して、パフォーマンスをビジュアライズしてテストする手法は、ぜひ試してみたいところです。また、これも他のセッションでも感じたことですが、やはりTableau Serverのインストール先はクラウドをオススメしている印象を受けました。

動画