  As individual traffic and public transport in cities are changing, city
authorities need to analyze urban geospatial data to improve transportation and
infrastructure. To that end, they highly rely on spatial aggregation queries
that extract summarized information from point data (e.g., Uber rides)
contained in a given polygonal region (e.g., a city neighborhood). To support
such queries, current analysis tools either allow only predefined aggregates on
predefined regions and are thus unsuitable for exploratory analyses, or access
the raw data to compute aggregate results on-the-fly, which severely limits the
interactivity. At the same time, existing pre-aggregation techniques are
inadequate since they maintain aggregates over rectangular regions. As a
result, when applied over arbitrary polygonal regions, they induce an
approximation error that cannot be bounded. In this paper, we introduce
GeoBlocks, a novel pre-aggregating data structure that supports spatial
aggregation over arbitrary polygons. GeoBlocks closely approximate polygons
using a set of fine-grained grid cells and, in contrast to prior work, allow to
bound the approximation error by adjusting the cell size. Furthermore,
GeoBlocks employ a trie-like cache that caches aggregate results of frequently
queried regions, thereby dynamically adapting to the skew inherently present in
query workloads and improving performance over time. In summary, GeoBlocks
outperform on-the-fly aggregation by up to three orders of magnitude, achieving
the sub-second query latencies required for interactive exploratory analytics.
