メインコンテンツまでスキップ

チューニングプロセス

概要

パフォーマンスチューニングは、体系的な診断と最適化のための包括的な方法論と実装フレームワークを必要とする体系的なプロセスです。診断ツール分析ツールの強力なサポートにより、Dorisシステムはパフォーマンスの問題を効率的に診断、分析、特定、解決できます。チューニングの完全な4ステップのプロセスは以下の通りです:

チューニングプロセス

ステップ1:パフォーマンス診断ツールを使用してスロークエリを特定

Doris上で動作するビジネスシステムについて、前述のパフォーマンス診断ツールを使用してスローSQL クエリを特定します。

  • Doris Managerがインストールされている場合は、Managerのログページを使用してスロークエリを視覚的に便利に特定することをお勧めします。
  • Managerがインストールされていない場合は、FEノードのfe.audit.logファイルまたはaudit_logシステムテーブルを直接確認して、スローSQLクエリのリストを取得し、チューニングの優先順位を決定できます。

ステップ2:スキーマ設計とチューニング

特定のスローSQLクエリを特定した後、最初の優先事項は、不適切なスキーマ設計によるパフォーマンスの問題を排除するために、ビジネススキーマ設計を検査し、チューニングすることです。

スキーマ設計チューニングは3つの側面に分けることができます:

詳細なチューニング例については、プランチューニングのドキュメントを参照してください。

ステップ3:プランチューニング

ビジネススキーマを検査し、チューニングした後、チューニングの主要なタスクが始まります:プランチューニングと実行チューニングです。上述のように、この段階では、主要なタスクは、DorisによってプロバイドされるさまざまなレベルのExplainツールを十分に活用して、スローSQLクエリの実行プランを体系的に分析し、対象的最適化のための主要な最適化ポイントを特定することです。

詳細なチューニング例については、プランチューニングのドキュメントを参照してください。

ステップ4:実行チューニング

実行チューニング段階では、SQLクエリの実際の実行に基づいてプランチューニングの効果を検証する必要があります。さらに、既存のプランのフレームワーク内で、実行側のボトルネックの分析を継続し、どの実行段階が遅いか、または最適でない並列性などの他の一般的な問題を特定します。

マルチテーブル分析クエリを例に取ると、Profileを分析して、計画されたJoin orderが適切かどうか、Runtime Filtersが効果的かどうか、並列性が期待に合っているかどうかを確認できます。さらに、Profileは、遅いI/Oや予期しないネットワーク転送パフォーマンスなど、マシンの負荷に関するフィードバックを提供できます。このような問題を確認し、診断する際は、診断とチューニングを支援するためにシステムレベルのツールが必要です。

詳細なチューニング例については、実行チューニングのドキュメントを参照してください。

ヒント

特定のパフォーマンスの問題を分析する際は、まずプランを確認してから実行をチューニングすることをお勧めします。まずExplainツールを使用して実行プランを確認し、次にProfileツールを使用して実行パフォーマンスを特定しチューニングします。順序を逆にすると、非効率性が生じ、パフォーマンスの問題の迅速な特定が阻害される可能性があります。

まとめ

クエリチューニングは体系的なプロセスであり、Dorisはユーザーにさまざまなレベルでのパフォーマンスの問題の診断、特定、分析、解決を促進するための様々な次元のツールを提供します。これらの診断・分析ツールに習熟し、適切なチューニング方法を採用することで、ビジネス担当者やDBAはパフォーマンスボトルネックを迅速かつ効果的に対処し、Dorisの強力なパフォーマンス上の利点をより良く引き出し、ビジネスイネーブルメントのためにビジネスシナリオにより良く適応できます。