HackerPapers

arXiv:1910.11582cs.DB

Rumble: Data Independence for Large Messy Data Sets

Ingo Müller, Ghislain Fourny, Stefan Irimescu, Can Berker Cikis, Gustavo Alonso

Early discovery. Linked by one identifiable commenter. This paper is outside the main ranking; a mention is not an endorsement.

Abstract

This paper introduces Rumble, a query execution engine for large, heterogeneous, and nested collections of JSON objects built on top of Apache Spark. While data sets of this type are more and more wide-spread, most existing tools are built around a tabular data model, creating an impedance mismatch for both the engine and the query interface. In contrast, Rumble uses JSONiq, a standardized language specifically designed for querying JSON documents. The key challenge in the design and implementation of Rumble is mapping the recursive structure of JSON documents and JSONiq queries onto Spark's execution primitives based on tabular data frames. Our solution is to translate a JSONiq expression into a tree of iterators that dynamically switch between local and distributed execution modes depending on the nesting level. By overcoming the impedance mismatch in the engine, Rumble frees the user from solving the same problem for every single query, thus increasing their productivity considerably. As we show in extensive experiments, Rumble is able to scale to large and complex data sets in the terabyte range with a similar or better performance than other engines. The results also illustrate that Codd's concept of data independence makes as much sense for heterogeneous, nested data sets as it does on highly structured tables.

arXiv comments
In revision for PVLDB 14, 2020
Journal reference
DOI
Subjects
cs.DBDatabases

On Hacker News

Linked by 1 identifiable commenter in 1 comment across 1 thread, from Nov 2021 to Nov 2021.

Comments linking this paper, per year.

Discussed in comments1 thread

  1. JSONiq: JSON Query Language 1 comment
    • Thank you for your comment. The motivation for JSONiq and RumbleDB is discussed in this recent paper, the core argument is data independence: https://arxiv.org/abs/1910.11582v3 JSONiq is a functional language and thus makes it easy to scale to collections that have billions of…

      ghislainfournyView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.