Abstract
Finding a good join order is crucial for query performance. In this paper, we introduce the Join Order Benchmark (JOB) and experimentally revisit the main components in the classic query optimizer architecture using a complex, real-world data set and realistic multi-join queries. We investigate the quality of industrial-strength cardinality estimators and find that all estimators routinely produce large errors. We further show that while estimates are essential for finding a good join order, query performance is unsatisfactory if the query engine relies too heavily on these estimates. Using another set of experiments that measure the impact of the cost model, we find that it has much less influence on query performance than the cardinality estimates. Finally, we investigate plan enumeration techniques comparing exhaustive dynamic programming with heuristic algorithms and find that exhaustive enumeration improves performance despite the sub-optimal cardinality estimates.
Original language | English |
---|---|
Title of host publication | Proceedings of the VLDB Endowment |
Publisher | Association for Computing Machinery (ACM) |
Pages | 204-215 |
Number of pages | 12 |
Volume | 9 |
Edition | 3 |
Publication status | Published - 2016 |
Event | 42nd International Conference on Very Large Data Bases, VLDB 2016 - Delhi, India Duration: 5 Sept 2016 → 9 Sept 2016 |
Conference
Conference | 42nd International Conference on Very Large Data Bases, VLDB 2016 |
---|---|
Country/Territory | India |
City | Delhi |
Period | 5/09/16 → 9/09/16 |