Cobra: A Framework for Cost Based Rewriting of Database Applications

01/15/2018
by   K. Venkatesh Emani, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/11/2019

Synthesizing Database Programs for Schema Refactoring

Many programs that interact with a database need to undergo schema refac...
research
10/25/2011

Inducing Probabilistic Programs by Bayesian Program Merging

This report outlines an approach to learning generative models from data...
research
03/04/2002

A Framework for Compiling Preferences in Logic Programs

We introduce a methodology and framework for expressing general preferen...
research
08/05/2021

Accelerating XOR-based Erasure Coding using Program Optimization Techniques

Erasure coding (EC) affords data redundancy for large-scale systems. XOR...
research
04/15/2020

Evaluation of Generalizability of Neural Program Analyzers under Semantic-Preserving Transformations

The abundance of publicly available source code repositories, in conjunc...
research
12/24/2021

Fine-Tuning Data Structures for Analytical Query Processing

We introduce a framework for automatically choosing data structures to s...
research
06/19/2011

Rewriting Ontological Queries into Small Nonrecursive Datalog Programs

We consider the setting of ontological database access, where an Abox is...

Please sign up or login with your details

Forgot password? Click here to reset