Query Optimizer ダッシュボードからの統計更新の管理
Query Optimizer が Presto (C++) エンジンで正常に有効化されると、複数のカタログにわたって高度なクエリ・パフォーマンスの向上と最適化機能が可能になります。
クエリオプティマイザは、指定したテーブルのテーブルとカラムの統計情報を収集、保存、同期することができます。 これらの統計は、行数、明確な値の数、各列の最小値と最大値、データ全体の分布など、データに関する重要な洞察を提供します。 統計の収集に対応しているのは、 Hive と Iceberg カタログのみです。
このトピックで説明するジョブは、統計情報とメタデータを収集し、それらを Query Optimizerと同期させて、より正確で効率的なクエリの計画と実行をサポートします。 統計の収集に対応しているのは、 Hive と Iceberg カタログのみです。
Presto (C++) エンジンを見る
- ナビゲーション・メニューから [Configurations(設定)]を選択し、[ Query Optimizer Manager(クエリ・オプティマイザ・マネージャ)] タイルをクリックします。 Query optimizer manager ページが開きます。
- エンジンタブをクリックします。 Presto (C++) エンジン、ステータス、関連カタログを表示します。
カタログから統計情報を収集する
Presto (C++) エンジンに関連するカタログ(およびテーブル)を収集、保存、同期できます。
-
ナビゲーション・メニューから [Configurations(設定)]を選択し、[ Query Optimizer Manager(クエリ・オプティマイザ・マネージャ)] タイルをクリックします。 Query optimizer manager ページが開きます。
-
カタログ 」タブをクリックします。
-
統計] タブには、関連するカタログ、各カタログ内のテーブル総数に対する分析されたテーブルの割合、および最新の分析のタイムスタンプが表示されます。 分析に基づいてレコードをフィルタリングすることができます。 そのためには、 フィルターアイコンをクリックします。 以下のオプションを選択し、フィルター条件を適用します:
-
未分析:このチェックボックスを選択すると、まだ分析されていないカタログをフィルタリングできます。
-
最後の分析からの時間:このチェックボックスを選択し、期間(日または月)を指定すると、指定した期間に処理されたレコードのリストを取得できます。
-
-
統計を収集するボタンをクリックします。 Collect statistics ページが開き、 Presto (C++) エンジンに関連するスキーマとテーブルが表示される。 テーブルを選択し、 Create jobsをクリックしてテーブルの統計を作成する。
また、 Query Optimizer Manager ページの各カタログの横にあるオーバーフローメニューを使用して、選択したカタログ内のテーブルの統計データの収集を開始することもできます。
統計ジョブのステータスの表示
-
ナビゲーション・メニューから [Configurations(設定)]を選択し、[ Query Optimizer Manager(クエリ・オプティマイザ・マネージャ)] タイルをクリックします。 Query optimizer manager ページが開きます。
-
カタログ 」タブをクリックします。
-
統計ジョブ ]タブには、作成した統計ジョブのリストが表示されます。
Active: Collect Statistics(統計情報の収集)ページから開始されたジョブで、現在Running(実行中)状態にあるものがここに表示されます。 いつでも、1つのジョブ記録だけがアクティブ状態に表示されます。 オーバーフローメニューから、:
-
View log : アクティブなレコードのジョブログを表示します。
-
Add to queue : レコードをキューに移動したい場合に選択します。
-
Delete : これを選択するとレコードが削除されます。
ログ情報には、以下のジョブ・ステータスが含まれる:
NOTRECEIVED:システムは指定されたタスクIDの呼を受信しなかった。
NOTRUN: スケジューラがタスクのプロシージャを起動できないエラーが発生した。
UNKNOWN: タスクの実行が開始されたが、予期せぬ状況によりスケジューラが結果を記録できなかった。
キューに入っています:統計情報の収集]ページから複数のジョブが開始された場合、一度に1つだけが[アクティブ]状態になります。 その他の仕事はすべてリストアップされ、キューに入れられる。 オーバーフローメニューからRemove from queueを選択すると、キューからレコードを削除することができます。
完了: 実行が完了したジョブがここに表示されます。 オーバーフローメニューで利用可能なオプションから、ログを表示したり、レコードをキューに追加したり、レコードを削除したりすることができます。
-