, Volume 15, Issue 4, pp 727–767 | Cite as

MOVIES: indexing moving objects by shooting index images

  • Jens DittrichEmail author
  • Lukas Blunschi
  • Marcos Antonio Vaz Salles


With the exponential growth of moving objects data to the Gigabyte range, it has become critical to develop effective techniques for indexing, updating, and querying these massive data sets. To meet the high update rate as well as low query response time requirements of moving object applications, this paper takes a novel approach in moving object indexing. In our approach, we do not require a sophisticated index structure that needs to be adjusted for each incoming update. Rather, we construct conceptually simple short-lived index images that we only keep for a very short period of time (sub-seconds) in main memory. As a consequence, the resulting technique MOVIES supports at the same time high query rates and high update rates, trading this property for query result staleness. Moreover, MOVIES is the first main memory method supporting time-parameterized predictive queries. To support this feature, we present two algorithms: non-predictive MOVIES and predictive MOVIES. We obtain the surprising result that a predictive indexing approach—considered state-of-the-art in an external-memory scenario—does not scale well in a main memory environment. In fact, our results show that MOVIES outperforms state-of-the-art moving object indexes such as a main-memory adapted B x -tree by orders of magnitude w.r.t. update rates and query rates. In our experimental evaluation, we index the complete road network of Germany consisting of 40,000,000 road segments and 38,000,000 nodes. We scale our workload up to 100,000,000 moving objects, 58,000,000 updates per second and 10,000 queries per second, a scenario at a scale unmatched by any previous work.


Moving objects Indexing Differential indexing Large update rates Spatial indexing High dimensional indexing 


  1. 1.
    Anderson I et al (2007) Shakra: tracking and sharing daily activity levels with unaugmented mobile phones. Mobile Netw Appl 12(2–3):185–199CrossRefGoogle Scholar
  2. 2.
    Arge L (1995) The Buffer Tree: a new technique for optimal I/O-algorithms (extended abstract). In: WADS ’95Google Scholar
  3. 3.
    Beckmann N, Kriegel H-P, Schneider R, Seeger B (1990) The R*-Tree: an efficient and robust access method for points and rectangles. In: SIGMODGoogle Scholar
  4. 4.
    Biveinis L, Šaltenis S, Jensen CS (2007) Main-memory operation buffering for efficient R-Tree update. In: VLDBGoogle Scholar
  5. 5.
    Brinkhoff T (2002) A framework for generating networkbased moving objects. GeoInformatica 6(2):153–180CrossRefGoogle Scholar
  6. 6.
    Chen S, Gibbons PB, Mowry TC, Valentin G (2002) Fractal prefetching B+trees: optimizing both cache and disk performance. In: SIGMODGoogle Scholar
  7. 7.
    Chen S, Jensen C, Lin D (2008) A benchmark for evaluating moving object indexes. In: PVLDBGoogle Scholar
  8. 8.
    Chen S, Ooi BC, Tan K-L, Nascimento M (2008) ST2B-tree: a self-tunable spatio-temporal B+-Tree index for moving objects. In: SIGMODGoogle Scholar
  9. 9.
    Chen Z, Shen HT, Zhou X, Yu JX (2009) Monitoring path nearest neighbor in road networks. In: SIGMODGoogle Scholar
  10. 10.
    Cui B, Lin D, Tan K-L (2005) Towards optimal utilization of main memory for moving object indexing. In: DASFAAGoogle Scholar
  11. 11.
    Dittrich J, Blunschi L, Salles MAV (2009) Indexing moving objects using short-lived throwaway indexes. In: SSTDGoogle Scholar
  12. 12.
    Dittrich J-P, Fischer PM, Kossmann D (2005) AGILE: adaptive indexing for context-aware information filters. In: SIGMODGoogle Scholar
  13. 13.
    Dittrich J-P, Seeger B (2001) GESS: a scalable similarity-join algorithm for mining large data sets in high dimensional spaces. In: SIGKDDGoogle Scholar
  14. 14.
    Graefe G (2006) B-Tree indexes for high update rates. SIGMOD Rec 35(1):39–44CrossRefGoogle Scholar
  15. 15.
    Guttman A (1984) R-Trees: a dynamic index structure for spatial searching. In: SIGMODGoogle Scholar
  16. 16.
    Hilbert D (1891) Über die stetige Abbildung einer Linie auf ein Flächenstück. Math Ann 38:459–460CrossRefGoogle Scholar
  17. 17.
    Hildenbrand S (2008) Performance tradeoffs in write-optimized databases. Master’s thesis, ETH ZurichGoogle Scholar
  18. 18.
    Hough P (1962) Method and means for recognizing complex patterns. United States Patent No. 3069654Google Scholar
  19. 19.
    Jagadish HV et al (1997) Incremental organization for data recording and warehousing. In: VLDBGoogle Scholar
  20. 20.
    Jensen CS, Lin D, Ooi BC (2004) Query and update efficient B+-Tree based indexing of moving objects. In: VLDBGoogle Scholar
  21. 21.
    Jensen CS, Pakalnis S (2007) TRAX—real-world tracking of moving objects. In: VLDBGoogle Scholar
  22. 22.
    Jeung H, Liu Q, Shen HT, Zhou X (2008) A hybrid prediction model for moving objects. In: ICDEGoogle Scholar
  23. 23.
    Kalashnikov DV, Prabhakar S, Hambrusch SE (2004) Main memory evaluation of monitoring queries over moving objects. Distributed and Parallel Databases 15(2):117–135CrossRefGoogle Scholar
  24. 24.
    Knuth DE (1973) The art of computer programming, vol III: sorting and searching. Addison-Wesley, ReadingGoogle Scholar
  25. 25.
    Kollios G, Papadopoulos D, Gunopulos D, Tsotras J (2005) Indexing mobile objects using dual transformations. VLDB J 14(2):238–256CrossRefGoogle Scholar
  26. 26.
    Kraftfahrt-Bundesamt (2009) Number of vehicles in Germany over time.
  27. 27.
    Lau E, Madden S (2006) An integrated approach to recovery and high availability in an updatable, distributed data warehouse. In: VLDBGoogle Scholar
  28. 28.
    Lee M-L, Hsu W, Jensen CS et al (2003) Supporting frequent updates in R-Trees: a bottom-up approach. In: VLDBGoogle Scholar
  29. 29.
    Lo M-L, Ravishankar CV (1998) The design and implementation of seeded trees: an efficient method for spatial joins. IEEE Trans Knowl Data Eng 10(1):136–152CrossRefGoogle Scholar
  30. 30.
    Mouratidis K, Papadias D, Hadjieleftheriou M (2005) Conceptual partitioning: an efficient method for continuous nearest neighbor monitoring. In: SIGMODGoogle Scholar
  31. 31.
    Mouratidis K, Yiu ML, Papadias D, Mamoulis N (2006) Continuous nearest neighbor monitoring in road networks. In: VLDBGoogle Scholar
  32. 32.
    Muth P, O’Neil PE, Pick A, Weikum G (2000) The LHAM log-structured history data access method. VLDB J 8(3–4):199–221Google Scholar
  33. 33.
    O’Neil PE, Cheng E, Gawlick D, O’Neil EJ (1996) The log-structured merge-tree (LSM-Tree). Acta Inf 33(4):351–385CrossRefGoogle Scholar
  34. 34.
    Ooi BC, Tan KL, Yu C (2002) Frequent update and efficient retrieval: an oxymoron on moving object indexes? In: WISE workshops ’02Google Scholar
  35. 35.
    Orenstein JA (1991) An algorithm for computing the overlay of k-dimensional spaces. In: SSD ’91, vol 525Google Scholar
  36. 36.
    Orenstein JA, Merrett TH (1984) A class of data structures for associative searching. In: PODSGoogle Scholar
  37. 37.
    Patel JM, Chen Y, Chakka VP (2004) STRIPES: an efficient index for predicted trajectories. In: SIGMODGoogle Scholar
  38. 38.
    Pelanis M, Šaltenis S, Jensen CS (2006) Indexing the past, present, and anticipated future positions of moving objects. ACM Trans Database Syst 31(1):255–298CrossRefGoogle Scholar
  39. 39.
    Pfoser D, Jensen CS, Theodoridis Y (2000) Novel approaches to the indexing of moving object trajectories. In: VLDBGoogle Scholar
  40. 40.
    Ramsak F, Markl V et al (2000) Integrating the UB-Tree into a database system kernel. In: VLDBGoogle Scholar
  41. 41.
    Rao J, Ross KA (1999) Cache conscious indexing for decision-support in main memory. In: VLDBGoogle Scholar
  42. 42.
    Rao J, Ross KA (2000) Making B+-Trees cache conscious in main memory. In: SIGMODGoogle Scholar
  43. 43.
    Šaltenis S, Jensen CS et al (2000) Indexing the positions of continuously moving objects. In: SIGMODGoogle Scholar
  44. 44.
    Severance DG, Lohman GM (1976) Differential files: their application to the maintenance of large databases. ACM Trans Database Syst 1(3):256–267CrossRefGoogle Scholar
  45. 45.
    Shi H, Schaeffer J (1992) Parallel sorting by regular sampling. J Parallel Distrib Comput 14(4):361–372CrossRefGoogle Scholar
  46. 46.
    Stonebraker M, Madden S et al (2007) The end of an architectural era (it’s time for a complete rewrite). In: VLDBGoogle Scholar
  47. 47.
    Tao Y, Faloutsos C et al (2004) Prediction and indexing of moving objects with unknown motion patterns. In: SIGMODGoogle Scholar
  48. 48.
    Tao Y, Papadias D, Sun J (2003) The TPR*-Tree: an optimized spatio-temporal access method for predictive queries. In: VLDBGoogle Scholar
  49. 49.
    Tao Y, Sun J, Papadias D (2003) Analysis of predictive spatio-temporal queries. ACM Trans Database Syst 28(4):295–336CrossRefGoogle Scholar
  50. 50.
    Tao Y, Xiao X (2008) Primal or dual: which promises faster spatiotemporal search? VLDB J. 17(5):1253–1270CrossRefGoogle Scholar
  51. 51.
    Tele Atlas MultiNet Europe Q4/2006. GermanyGoogle Scholar
  52. 52.
    Thirde D et al (2005) Evaluation of object tracking for aircraft activity surveillance. In: 2nd joint IEEE international workshop on VS-PETSGoogle Scholar
  53. 53.
    Thomas Legler AR, Lehner W (2006) Data mining with the SAP Netweaver BI accelerator. In: VLDB, pp 1059–1068Google Scholar
  54. 54.
    Tropf H, Herzog H (1981) Multimensional range search in dynamically balanced trees. Angew Inform 23(2):71–77Google Scholar
  55. 55.
    Tzoumas K, Yiu ML, Jensen C (2009) Workload-aware indexing of continuously moving objects. In: PVLDBGoogle Scholar
  56. 56.
    White WM, Demers AJ, Koch C, Gehrke J, Rajagopalan R (2007) Scaling games to epic proportion. In: SIGMODGoogle Scholar
  57. 57.
    Yiu ML, Tao Y, Mamoulis N (2008) The Bdual-Tree: indexing moving objects by space filling curves in the dual space. VLDB J 17(3):379–400CrossRefGoogle Scholar
  58. 58.
    Yu X, Pu KQ, Koudas N (2005) Monitoring k-nearest neighbor queries over moving objects. In: ICDEGoogle Scholar
  59. 59.
    Zhang M, Chen S, Jensen C, Ooi BC, Zhang Z (2009) Effectively indexing uncertain moving objects for predictive queries. In: PVLDBGoogle Scholar
  60. 60.
    Zhou J, Ross KA (2003) Buffering accesses to memory-resident index structures. In: VLDBGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Jens Dittrich
    • 1
    Email author
  • Lukas Blunschi
    • 2
  • Marcos Antonio Vaz Salles
    • 3
  1. 1.Information Systems GroupSaarland UniversitySaarbrückenGermany
  2. 2.Systems GroupETH ZurichZürichSwitzerland
  3. 3.Department of Computer ScienceCornell UniversityIthacaUSA

Personalised recommendations