Tableau Server データ エンジン

Hyper は、サイズの大きいまたは複雑なデータ セットでの高速データ インジェクトと分析クエリ処理に最適化された、Tableau のインメモリ データ エンジン テクノロジーです。Tableau 10.5 リリースより、Hyper により、Tableau Server、Tableau Desktop、Tableau Online、および Tableau Public のデータ エンジンが強化されています。データ エンジンは、抽出を作成、更新、またはクエリするときに使用されます。また、複数の接続を備えたフェデレートされたデータ ソースをサポートするためのクロスデータベース結合でも使用されます。

プロセス

Data Engine

ステータス Data Engine のステータスは [ステータス] ページに表示されます。詳細については、サーバー プロセス ステータスの表示を参照してください。
ロギング Data Engine プロセスが生成したログは C:\ProgramData\Tableau\Tableau Server\data\tabsvc\logs\hyper にあります。詳細については、サーバー ログ ファイルの場所を参照してください。

メモリと CPU 使用率

データ エンジンは、マシン上のすべての使用可能な CPU およびメモリを活用して、最速の応答時間を提供するように設計されています。

CPU 使用率

Hyper テクノロジーは、CPU 内で新しい命令セットを使用し、すべての使用可能なコアの並列化とスケーリングに対応しています。Hyper テクノロジーは、効率的に多数のコアへ拡大するとともに、各単一のコアを可能な限り最大限使用するように設計されています。つまり、クエリ処理の間、CPU が十分に活用されることを期待できます。より多くの CPU の追加によって、パフォーマンスが改善されるものと予期されます。

Microsoft Windows、Apple macOS、Linux などの最新のオペレーティング システムは、CPU がフルに使用されている場合でも、着信およびその他のアクティブなプロセスを確実に同時実行できるメカニズムを備えています。さらに、全体的なリソース消費量を管理し、マシン上で稼働している他のプロセスの過負荷や完全なリソースの枯渇を防ぐために、データ エンジンは Tableau Server リソース マネージャー (SRM) に設定された制限内に留まるように自身を監視します。Tableau Server リソース マネージャーは、リソース消費量を監視し、事前定義された制限を超えた場合は、使用量を削減するようにデータ エンジンに通知します。

データ エンジンは使用可能な CPU を利用するように設計されているため、時折、CPU 使用率が急増するのは通常動作です。ただし、長時間 (1 時間以上) 高い CPU 使用率 (例: 95%) が続く場合は、次のことを意味しています。

  • 高負荷のクエリが存在する。これは、複数のクライアント要求による過負荷のためにサーバーにストレスがかかり、複数のクエリがキューで待機状態になっている場合に発生することがあります。これが頻繁に発生する場合は、クライアントに対応するためにより多くのハードウェアが必要であることを示しています。この場合は、より多くの CPU を追加すると、パフォーマンスの改善に役立ちます。

  • 1 つのクエリが長時間実行されている。この場合は、Tableau Server リソース マネージャーは、タイムアウト設定に基づいて、長時間実行されているクエリを停止します。このことは、10.5 より前の Tableau Server バージョンにも当てはまります。

Tableau Server リソース マネージャーの詳細については、一般的なパフォーマンスのガイドラインを参照してください。

メモリ使用率

データ エンジンのメモリ使用率は、クエリに応答するために必要なデータの量によって異なります。データ エンジンは、このインメモリの実行を最初に試みます。ワーキング セット メモリは、クエリ処理中の中間データ構造を保存するために割り当てられます。通常、システムにはこれらのタイプの処理を実行するために十分なメモリがありますが、使用可能なメモリが十分にない場合や RAM の 80% 超が利用されている場合は、データ エンジンは一時的にディスクに書き込むことでスプーリングに移行します。一時ファイルはクエリの回答後に削除されます。つまり、スプーリングは、より多くのメモリが必要である可能性を示しています。スプーリングによって引き起こされるパフォーマンス問題を回避するために、メモリ使用率を監視し、適切にアップグレードする必要があります。

マシン上のメモリ リソースを管理するために、データ エンジンの最大メモリ制限が Tableau Server リソース マネージャー (SRM) によって設定されています。

サーバー構成、スケーラビリティ、パフォーマンス

  • ノードごとにデータ エンジンの単一のインスタンスが自動的にインストールされ、各ノードにはファイル ストア、アプリケーション サーバー (Vizportal)、VizQLServer、データ サーバー、またはバックグラウンダーの 1 つのインスタンスがインストールされます。データ エンジンはそれ自身で拡大し、必要なだけ CPU とメモリを使用できるため、データ エンジンの複数のインスタンスを保持する必要はなくなりました。サーバー プロセスの詳細については、Tableau Server プロセスを参照してください。

  • ファイル ストアがインストールされているノードにインストールされたデータ エンジンのインスタンスは、ビューの要求のデータをクエリするために使用されます。バックグラウンダーがインストールされているノードにインストールされたデータ エンジンのインスタンスは抽出の作成と更新のために使用されます。これは、パフォーマンス調整を行う際の重要な考慮事項です。詳細については、パフォーマンスの調整の例を参照してください。

  • データ サーバー、VizQL Server、およびアプリケーション サーバー (VizPortal) はすべて、データ エンジンのローカル インスタンスを使用して、クロスデータベース結合を実行し、シャドー抽出を作成します。シャドー抽出ファイルは、非レガシーの Excel またはテキスト、もしくは統計ファイルに基づいたワークブックを操作している場合にのみ作成されます。Tableau は、データをよりすばやく読み込むために、シャドー抽出ファイルを作成します。

  • Tableau Server 10.5 では、バックグラウンダーをインストールすると、データ エンジンの 1 つのインスタンスが自動的にインストールされます。バックグラウンダー プロセスは、同じノードにインストールされているデータ エンジンの単一のインスタンス (hyperd.exe) を使用します。

スケーラビリティ:

新しいデータ エンジンをスケール アップすることができます。コアはフルに活用されるため、より多くのコアを追加することで個々のクエリの実行が迅速化され、より多くのクエリをより短い時間で実行できます。

スプーリングによって引き起こされるパフォーマンス問題を回避するために、メモリ使用率を監視し、適切にアップグレードする必要があります。

スケーラビリティの詳細については、「Tableau Server のスケーラビリティ (英語)」を参照してください。

パフォーマンス:

このトピックの冒頭で述べたように、ほとんどの場合には Tableau 10.5 以降にアップグレードするとパフォーマンスの向上が期待できます。とはいえ、場合によっては、特に複雑な計算を含むワークブックで、応答時間の遅延などパフォーマンスの問題が起こることがあります。パフォーマンスの問題が起こりそうかどうかをワークブックをテストして確認するため、このテストはアップグレード前に行うことをお勧めします。詳細については、ワークブックのパフォーマンスのテストを参照してください。Tableau Server に既にアップグレードしている場合は、計算によるワークブックのパフォーマンスについてのトラブルシューティングを参照してください。

パフォーマンスの詳細については、最初に一般的なパフォーマンスのガイドラインおよびパフォーマンスの調整を参照してください。

パフォーマンスにおけるメリット

10.5 以降、Hyper テクノロジーが Tableau データ エンジンに統合され、次の主なメリットを提供しています。

  • より高速な抽出作成: Hyper テクノロジーでは、ソース システムがデータを配信できる速度とほぼ同じ速度で抽出が生成されます。データを並べ替える必要はありません。

  • より大きなサイズの抽出をサポート: このリリースより前は、すべてのデータを単一の抽出に取り込むことができない場合がありました。Hyper テクノロジーを使用すると、単一の抽出としてはるかに大量のデータを含めることができます。

  • より高速な抽出分析: 多くの場合、サイズの大きい抽出または複雑な計算のワークブックでも、データのクエリが迅速化されます。

Hyper により強化されたデータ エンジンがサイズの大きいまたは複雑な抽出でより高性能を発揮し、より高速なクエリに最適化されている理由は次のとおりです。

  • Hyper テクノロジーは、より高速にデータを使用するように設計されています。以前のバージョンとは異なり、データ エンジンは、並べ替えなどの後処理を実行しません。Hyper では、データ エンジンがサイズの大きい抽出でもより効率的に実行できるため、並べ替えなどの後処理は必要ありません。

  • Hyper テクノロジーはメモリ最適化されています。つまり、必要な場合は、すべてのデータがメモリに内包されます。この結果、データ アクセス時間が高速化します。

  • Hyper テクノロジーは CPU 最適化されています。つまり、データ エンジンではクエリ実行が完全に並列化されており、クエリ実行時間はマシンのコア数に応じてほぼ直線的に加速されるような方法で使用可能な CPU が使用されます。

  • Hyper はコンパイル クエリ エンジンです。パフォーマンスを最大化するためにクエリはマシン コードに解釈またはコンパイルされるため、データ エンジンは最新のハードウェア (CPU、大容量メイン メモリ) の最高のパフォーマンスを引き出すことができます。

  • Hyper テクノロジーは、高度なクエリ最適化を使用して、クエリを高速化します。各列の最小値と最大値のマテリアライズ、検索範囲を最適化するミニインデックス、よりきめ細かいデータ ブロックレベルのディクショナリ、結合とサブクエリのパフォーマンスを最適化するための高度なロジックなどの多数の追加された高度な技術とともに、新しいデータ エンジンではパフォーマンスとスケーラビリティの点で以前の Tableau データ エンジンに多数の改善が加えられています。

フィードバックをくださりありがとうございます! フィードバックの送信中にエラが発生しました。もう一度やり直すか、メッセージをお送りください