2018/01/15 by K. Venkatesh Emani, S. Sudarshan, Emani, K. Venkatesh +1
Computer Science · #Cloud Computing and Resource Management #Databases (cs.DB) #Distributed systems and fault tolerance #FOS: Computer and information sciences #Optimization and Search Problems
paper · pdf · doi:10.48550/arxiv.1801.04891
openalex publication_date 2018/01/15 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
Database applications are typically written using a mixture of imperative languages and declarative frameworks for data processing. Application logic gets distributed across the declarative and imperative parts of a program. Often, there is more than one way to implement the same program, whose efficiency may depend on a number of parameters. In this paper, we propose a framework that automatically generates all equivalent alternatives of a given program using a given set of program transformations, and chooses the least cost alternative. We use the concept of program regions as an algebraic abstraction of a program and extend the Volcano/Cascades framework for optimization of algebraic expressions, to optimize programs. We illustrate the use of our framework for optimizing database applications. We show through experimental results, that our framework has wide applicability in real world applications and provides significant performance benefits.