A recent PVLDB paper reports on experimental analyses of ten spatial join techniques in main memory. We build on this comprehensive study to raise awareness of the fact that empirical running time performance findings in main-memory settings are results of not only the algorithms and data structures employed, but also their implementation, which complicates the interpretation of the results.
In particular, we re-implement the worst performing technique without changing the underlying high-level algorithm, and we then offer evidence that the resulting re-implementation is capable of outperforming all the other techniques. This study demonstrates that in main memory, where no time-consuming I/O can mask variations in implementation, implementation details are very important; and it offers a concrete illustration of how it is difficult to make conclusions from empirical running time performance findings in main-memory settings about data structures and algorithms studied.
[1]
Simonas Saltenis,et al.
Trees or grids?: indexing moving objects in main memory
,
2009,
GIS.
[2]
Jens Dittrich,et al.
Indexing Moving Objects Using Short-Lived Throwaway Indexes
,
2009,
SSTD.
[3]
Christian S. Jensen,et al.
A benchmark for evaluating moving object indexes
,
2008,
Proc. VLDB Endow..
[4]
Johannes Gehrke,et al.
An Experimental Analysis of Iterated Spatial Joins in Main Memory
,
2013,
Proc. VLDB Endow..
[5]
Kihong Kim,et al.
Optimizing multidimensional index trees for main memory access
,
2001,
SIGMOD '01.
[6]
Antonin Guttman,et al.
R-trees: a dynamic index structure for spatial searching
,
1984,
SIGMOD '84.
[7]
Mario A. López,et al.
STR: a simple and efficient algorithm for R-tree packing
,
1997,
Proceedings 13th International Conference on Data Engineering.