BBoxDB : A Distributed and Highly Available Key-Bounding-Box-Value Store
BBoxDB is a distributed and highly available key-bounding-box-value store, which is designed to handle multi-dimensional big data. The software splits data into multi-dimensional shards and spreads them across a cluster of nodes. In contrast to existing key-value stores, BBoxDB stores each value together with an n-dimensional axis parallel bounding box. The bounding box describes the spatial location of the value in an n-dimensional space. A space partitioner (e.g., a K-D Tree, a Quad-Tree or a Grid) is used to split up the n-dimensional space into disjoint regions (distribution regions). Distribution regions are created dynamically, based on the stored data. BBoxDB can handle growing and shrinking datasets. The data redistribution is performed in the background and does not affect the availability of the system; read and write access is still possible at any time. Multi-dimensional data can be retrieved using hyperrectangle queries; these queries are efficiently supported by indices. Moreover, BBoxDB introduces distribution groups, the data of all tables of a distribution group are distributed in the same way (co-partitioned). Spatial-joins on co-partitioned tables can be executed efficiently without data shuffling between nodes. BBoxDB supports spatial-joins out-of-the-box using the bounding boxes of the stored data. Spatial-joins are supported by a spatial index and executed in a distributed and parallel manner on the nodes of the cluster.
Nutzung und Vervielfältigung:
Alle Rechte vorbehalten