English

Towards application-specific query processing systems

Databases 2020-09-22 v1 Distributed, Parallel, and Cluster Computing Information Retrieval

Abstract

Database systems use query processing subsystems for enabling efficient query-based data retrieval. An essential aspect of designing any query-intensive application is tuning the query system to fit the application's requirements and workload characteristics. However, the configuration parameters provided by traditional database systems do not cover the design decisions and trade-offs that arise from the geo-distribution of users and data. In this paper, we present a vision towards a new type of query system architecture that addresses this challenge by enabling query systems to be designed and deployed in a per use case basis. We propose a distributed abstraction called Query Processing Unit that encapsulates primitive query processing tasks, and show how it can be used as a building block for assembling query systems. Using this approach, application architects can construct query systems specialized to their use cases, by controlling the query system's architecture and the placement of its state. We demonstrate the expressiveness of this approach by applying it to the design of a query system that can flexibly place its state in the data center or at the edge, and show that state placement decisions affect the trade-off between query response time and query result freshness.

Keywords

Cite

@article{arxiv.2009.09671,
  title  = {Towards application-specific query processing systems},
  author = {Dimitrios Vasilas and Marc Shapiro and Bradley King and Sara Hamouda},
  journal= {arXiv preprint arXiv:2009.09671},
  year   = {2020}
}