Abstract
Commercial off-the-shelf DataBase Management Systems (DBMSes) are highly optimized to process a wide range of queries by means of carefully designed indexing and query planning. However, many aggregate range queries are usually performed by DBMSes using sequential scans, and certain needs, like storing Authenticated Data Structures (ADS), are not supported at all. Theoretically, these needs could be efficiently fulfilled adopting specific kinds of indexing, which however are normally ruled-out in DBMSes design. We introduce the concept of overlay index: an index that is meant to be stored in a standard database, alongside regular data and managed by regular software, to complement DBMS capabilities. We show a data structure, that we call DB-tree, that realizes an overlay index to support a wide range of custom aggregate range queries as well as ADSes, efficiently. All DB-trees operations can be performed by executing a small number of queries to the DBMS, that can be issued in parallel in one or two query rounds, and involves a logarithmic amount of data. We experimentally evaluate the efficiency of DB-trees showing that our approach is effective, especially if data updates are limited.
Highlights
In relational and NoSQL databases, the ability to obtain aggregate information from a set of ‘‘records’’ has always been an important feature
We introduce the concept of overlay index, which is a data structure that plays the role of an index but is explicitly stored in a database along with regular data
OF THE SIMPLIFYING ASSUMPTIONS In Section III-C, we presented general architectural problems related with overlay indexes and introduced some simplifying assumptions
Summary
In relational and NoSQL databases, the ability to obtain aggregate information from a (possibly large) set of ‘‘records’’ (tuples, documents, etc.) has always been an important feature. In the simplest form, records that have one of their fields in a given range are selected and the aggregation function is applied on them. This kind of queries are usually referred to as aggregate range queries. Applications of aggregate range queries can be found in many data analytics activities related to business intelligence, market analysis, user profiling, IoT, etc. This feature is one of the fundamental elements of a good system for big-data analytics.
Published Version (Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have