Abstract

The executor is an important component of a database. Typical executors that are applied in modern database systems follow either the VOLCANO model or Compiled model, each of which fits some scenarios but not all. Even the widely employed PostgreSQL (PGSQL) and CockroachDB (CRDB) have to rely on human experts to achieve the optimal execution mode. Nevertheless, the accuracy of these decisions is only 32.8% on average, even with an expert involved. Moreover, due to the exclusive use of rule-based strategies, it is not feasible to reasonably switch between two working modes when confronted with different queries. To solve this problem, we propose a QUery awARe daTabase adaptivE compilaTion decision system (Quartet), which can determine the most suitable execution mode with respect to the current workload at runtime. Quartet generates operator-cost and tree-based vectors by analysing the query execution plan (QEP) and then uses the fully connected neural network (FCNN) and tree-based convolutional neural network (TBCNN) to learn the relationship between the QEP and the optimal execution. Our evaluations show that Quartet can improve execution decision accuracy by 60% on average under TPC-H (under 3 GB) workloads.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call