Improving DBMS Scheduling Decisions with Fine-grained Performance Prediction on Concurrent Queries — Extended

要約

クエリスケジューリングは、データベース管理システム(DBMS)のクエリパフォーマンスに直接影響を与える重要なタスクです。
DBMS内部の変更を必要とする深く統合されたスケジューラーは、通常、特定のエンジン用にカスタマイズされ、実装に数か月かかることがあります。
対照的に、非侵入スケジューラは、DBMS内部の変更を必要とせずに、クエリの入場の制御やクエリの実行の再注文など、粗い粒度の決定を下します。
彼らははるかに少ないエンジニアリングの努力を必要とし、幅広いDBMSエンジンに適用することができ、エンドユーザーに即時の利点を提供します。
ただし、ほとんどの既存の非侵入スケジューリングシステムは、同時性とさまざまなシステム状態でクエリインタラクションを正確にモデル化できない、単純化されたコストモデルとヒューリスティックに依存しており、おそらく最適でないスケジューリングの決定につながる可能性があります。
この作業では、ユーザークエリキューイング時間とシステムランタイムが経験した総エンドツーエンドのランタイムを強化するためにクエリの実行順序とタイミングを最適化する、新しい原則的な非侵入スケジューラであるIconqschedを紹介します。
以前のアプローチとは異なり、ICONQSchedは、DBMSをブラックボックスとして扱い、異なるシステム状態で同時に実行されたクエリのシステムランタイムを正確に推定する斬新な細粒予測子ICONQを特徴としています。
これらの予測を使用して、ICONQSCHEDは、さまざまなクエリミックスとシステムの負荷でシステムランタイムのバリエーションをキャプチャできます。
次に、貪欲なスケジューリングアルゴリズムを使用して、どのクエリを提出するか、いつ提出するかを効果的に決定します。
実際のワークロードトレースを使用して、エンドツーエンドのランタイムの観点から、ICONQSCHEDを他のスケジューラと比較します。
Postgresでは、Iconqschedはエンドツーエンドのランタイムを平均で16.2%-28.2%、尾部で33.6%-38.9%減少させます。
同様に、Redshiftでは、エンドツーエンドのランタイムが平均で10.3%-14.1%、尾部で14.9%-22.2%減少します。

要約(オリジナル)

Query scheduling is a critical task that directly impacts query performance in database management systems (DBMS). Deeply integrated schedulers, which require changes to DBMS internals, are usually customized for a specific engine and can take months to implement. In contrast, non-intrusive schedulers make coarse-grained decisions, such as controlling query admission and re-ordering query execution, without requiring modifications to DBMS internals. They require much less engineering effort and can be applied across a wide range of DBMS engines, offering immediate benefits to end users. However, most existing non-intrusive scheduling systems rely on simplified cost models and heuristics that cannot accurately model query interactions under concurrency and different system states, possibly leading to suboptimal scheduling decisions. This work introduces IconqSched, a new, principled non-intrusive scheduler that optimizes the execution order and timing of queries to enhance total end-to-end runtime as experienced by the user query queuing time plus system runtime. Unlike previous approaches, IconqSched features a novel fine-grained predictor, Iconq, which treats the DBMS as a black box and accurately estimates the system runtime of concurrently executed queries under different system states. Using these predictions, IconqSched is able to capture system runtime variations across different query mixes and system loads. It then employs a greedy scheduling algorithm to effectively determine which queries to submit and when to submit them. We compare IconqSched to other schedulers in terms of end-to-end runtime using real workload traces. On Postgres, IconqSched reduces end-to-end runtime by 16.2%-28.2% on average and 33.6%-38.9% in the tail. Similarly, on Redshift, it reduces end-to-end runtime by 10.3%-14.1% on average and 14.9%-22.2% in the tail.

arxiv情報

著者 Ziniu Wu,Markos Markakis,Chunwei Liu,Peter Baile Chen,Balakrishnan Narayanaswamy,Tim Kraska,Samuel Madden
発行日 2025-01-27 17:55:39+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.DB, cs.LG パーマリンク