The query optimizer is one of the most important components of modern DBMS and data-management systems, having a critical impact on performance. Developing an optimizer from scratch is a difficult and time-consuming task. So, it would be cool to have a platform that would allow assembling optimizers from ready-made parts, as well as expanding them to meet the needs of a specific product.
Vladimir will talk about Apache Calcite — a project that allows to quickly create powerful cost-based optimizers that surpass in their capabilities the optimizers of any modern DBMS. We will look at the theoretical issues of query optimization, the architecture and key algorithms of Apache Calcite, and examples of its use in specific Java products.