規模に応じた Tableau 導入の 8 つのヒント

そこで、ダウンタイムを最小限に抑え、ビジネス部門で拡大し続けるニーズを分析プラットフォームが満たせるようにするには、導入とスケーラビリティに関する適切な計画が欠かせません。ビジネスの成長に合わせて拡張できるように設計されたエンタープライズ環境を立ち上げる際は、さまざまな点を考慮する必要があります。 スケーラビリティのための枠組みを備えた Tableau 環境の立ち上げに役立つ、7 つのヒントをご紹介します。

TabJoltTabJolt

あらゆる規模の組織が Tableau を利用して、真のセルフサービス分析を大規模に行っています。そうした組織は、戦略的に自らを変革し、将来のために不可欠になる分析の文化を構築しつつあります。そして、分析の文化が形になるにつれて、分析プラットフォームは組織にとってミッションクリティカルなものになり、ダウンタイムが大きな問題となっていきます。そこで、ダウンタイムを最小限に抑え、ビジネス部門で拡大し続けるニーズを分析プラットフォームが満たせるようにするには、導入とスケーラビリティに関する適切な計画が欠かせません。

エンタープライズ環境の立ち上げではさまざまな考慮点があるため、スケーラビリティの枠組みを備えた Tableau 環境の立ち上げに役立つ、8 つのヒントをご紹介します。

1.ワークブックの設計では外観とパフォーマンスを考える

ワークブックの処理に時間がかかるというお客様の声を耳にすることがありますが、その理由はほとんどの場合、パフォーマンスを念頭に置いて設計されていないからです。1 人のユーザーで読み込みに時間がかかっていれば、負荷が高い場合にも、ワークブックの応答時間は遅くなります。

分析の文化を浸透させるのと同時に、見た目も美しく、インサイトに溢れ、パフォーマンスにも優れたワークブックを設計できるようユーザーをサポートできるようにしておくことで、スケーラビリティに優れたビジュアライゼーションを構築し、提供できるようにもなります。「効率的に作業できるワークブックの設計」というホワイトペーパーでは、効率的でパフォーマンスに優れたダッシュボードの構築について詳しく説明しています。

2.データ戦略を念頭に置く

エンドユーザーから見た合計の応答時間にはさまざまな要素が含まれますが、その中でも大きなものは、Tableau の処理時間とデータ取得にかかる時間です。バックエンドのデータベースが遅い場合や、クエリに時間がかかる場合、ビジュアライゼーションにも時間がかかります。

このことをデータ戦略に織り込んでおくことが重要です。組織内のデータソースがまとめられ、共有されていることは少なくありません。データがビジネスユーザーの生産的な活動に役立つような方法で、重要なデータを提供できるようにする必要があります。つまり、データの最適化です。たとえば、インデックス化されたテーブルに対して高速にクエリを実行できるように、最適な結合や適切なレベルの集計を確実に行う必要があります。ビジュアライゼーションとダッシュボードのパフォーマンスを維持するうえで、データを最適な状態に保つためのプロセスを確立しておくことが重要です。

3.必要に応じて Tableau データ抽出を使用する

データベースクエリが遅く、データベース管理者や IT のチームと連携したパフォーマンスの最適化を行えない場合は、クエリのパフォーマンス向上のために抽出の使用を検討してください。抽出はサーバー上にローカルに保存され、インメモリで実行されるので、データベースにリクエストを送信しなくても迅速にデータにアクセスできます。抽出では、フィルタリングも集計も簡単に行えます。エンドユーザーは簡単なトレーニングを通じて、適切なレベルでの集計と使用されていないフィールドの非表示により、必要に応じてサーバーへのパブリッシュ前に抽出を最適化できるようになります。抽出を使用すると、応答時間が大幅に改善されるので、ユーザーは分析をスムーズに進めることができます。

4.オフピーク時間に更新を行うようにスケジュールを設定して、バックグラウンダーを分離する

データソースは多くの場合、リアルタイムで更新されますが、ユーザーに必要なのは日次または週次のデータのみです。オフピーク時間に抽出のスケジュールを設定すれば、データベースと Tableau Server の両方に対するピーク時の負荷を軽減できます。さらに、十分なコア容量がある場合は、専用のハードウェアにバックグラウンダーを追加できる可能性があります。抽出をより早く終える場合は、この方法を検討してください。

不必要に更新されている抽出を見つけ出して、無駄なサイクルを排除しましょう。たとえば、サイズの大きな抽出が毎時間更新されているにもかかわらず、その抽出を使用しているワークブックが前回利用されたのは 1 年以上前の場合、抽出を毎時間更新することが本当に必要なのかどうかをビジネスユーザーに尋ねてください。ビジネス部門に関係しない処理や必須ではない処理をサーバーから排除すると、ユーザーはより快適に分析を行えるようになります。

5.キャッシュ

Tableau のキャッシュはクラスタ全体に分散されます。そのため、サーバーの拡張によるメモリの使用は、キャッシュサーバーを追加するだけでクラスタノード全体に分散させることが可能です。キャッシュサーバーは特にクエリ結果をキャッシュするものであり、クエリ結果がすでにキャッシュ済みのビジュアライゼーションを表示しているユーザーが増えた場合に、スケーラビリティを向上させます。キャッシュのヒットとミスの状況を知りたい場合は、サーバーで JMX 監視機能をオンにして好きな JMX 監視ツールを使うか、TabMon を使用してください。

6.構成の調整

既定の構成は、小規模な展開のほとんどで使用できます。しかし、独自のスケーラビリティテストを行う場合は、VizQL Server、キャッシュサーバー、データエンジン、Data Server の数に応じて、構成を調整しなければならないことがあります。テストを行うハードウェアに応じて、メモリの内部プロセスモニター (SRM) の設定 (vizqlserver.memory_limit_per_process_gb) を調整すべきかどうかを検討してください。内部プロセスモニターは、しきい値を超えたシステムを検知しキャパシティが十分ではない場合、意図的にサーバープロセスを再起動します。

7.TabJolt を活用する

負荷テストの自動化で TabJolt の利用を検討してください。TabJolt により、テスト自動化スクリプトの更新とメンテナンスが不要になります。アドホック分析用のテスト自動化スクリプトの維持管理のために、大きな手間がかかり、他の作業に費やす時間が制限されてしまうことがあります。TabJolt を使い始める方法を説明したビデオをご覧ください (英語)。

8.VMware 上で実行する際の注意点

VMware 上で Tableau Server を実行している場合は、ビジュアライゼーションによる高作業負荷の処理に必要なコアコンピューティングリソースを Tableau が得られるようにするために、VMware vSphere 管理者と協力して、十分な CPU の予約が割り当てられていることを確認してください。

Tableau 導入環境の拡張に関するヒントをさらにご紹介している、Tableau Server のスケーラビリティについてのホワイトペーパーもご覧ください。