CloudMdsQL: Querying Heterogeneous Cloud Data Stores with a Common Language
Abstract
The blooming of different cloud data management infrastructures, special-ized for different kinds of data and tasks, has led to a wide diversification of DBMS interfaces and the loss of a common programming paradigm. In this paper, we present the design of a Cloud Multidatastore Query Language (CloudMdsQL), and its query engine. CloudMdsQL is a functional SQL-like language, capable of querying multiple heterogeneous data stores (relational and NoSQL) within a single query that may contain embedded invocations to each data store’s native query interface. The query engine has a fully distributed architecture, which provides important opportunities for optimization. The major innovation is that a CloudMdsQL query can exploit the full power of local data stores, by simply allowing some local data store native queries (e.g. a breadth-first search query against a graph database) to be called as functions, and at the same time be optimized, e.g. by pushing down select predicates, using bind join, performing join ordering, or planning intermediate data shipping. Our experi-mental validation, with three data stores (graph, document and relational) and repre-sentative queries, shows that CloudMdsQL satisfies the five important requirements for a cloud multidatastore query language.
Origin | Files produced by the author(s) |
---|
Loading...