Abstract
In this paper we present a formal framework for modelling a trajectory data warehouse (TDW), namely a data warehouse aimed at storing aggregate information on trajectories of moving objects, which also offers visual OLAP operations for data analysis. The data warehouse model includes both temporal and spatial dimensions, and it is flexible and general enough to deal with objects that are either completely free or constrained in their movements (e.g., they move along a road network). In particular, the spatial dimension and the associated concept hierarchy reflect the structure of the environment in which the objects travel. Moreover, we cope with some issues related to the efficient computation of aggregate measures, as needed for implementing roll-up operations. The TDW and its visual interface allow one to investigate the behaviour of objects inside a given area as well as the movements of objects between areas in the same neighbourhood. A user can easily navigate the aggregate measures obtained from OLAP queries at different granularities, and get overall views in time and in space of the measures, as well as a focused view on specific measures, spatial areas, or temporal intervals. We discuss two application scenarios of our TDW, namely road traffic and vessel movement analysis, for which we built prototype systems. They mainly differ in the kind of information available for the moving objects under observation and their movement constraints.
Similar content being viewed by others
Notes
FM from the Flajolet and Martin, the original proposers’ names
References
Allen JF (1984) A general model of action and time. Artif Intell 23:123–154
Andrienko G, Andrienko N (2008) Spatio-temporal aggregation for visual analysis of movements. In: Proceedings of VAST. IEEE. pp 51–58
Andrienko G, Andrienko N (2010) A general framework for using aggregation in visual exploration of movement data. Cartogr J 47(1):22–40
Andrienko G, Andrienko N, Wrobel S (2007) Visual analytics tools for analysis of movement data. ACM SIGKDD Explor 9(2):28–46
Andrienko N, Andrienko G (2011) Spatial generalization and aggregation of massive movement data. IEEE Trans Vis Comput Graph 17(2):205–219
Andrienko N, Andrienko G (2013) A visual analytics framework for spatio-temporal analysis and modelling. Data Min Knowl Disc 27(1):55–83
Andrienko N, Andrienko G (2013) Visual analytics of movement: an overview of methods, tools and procedures. Inf Vis 12(1):3–24
Bimonte S, Miquel M (2010) When spatial analysis meets OLAP: multidimensional model and operators. IJDWM 6(4):33–60
Brakatsoulas S, Pfoser D, Salas R, Wenk C (2005) On map-matching vehicle tracking data. In: Proceedings of VLDB, pp 853–864
Brillinger D, Preisler H, Ager A, Kie K (2004) An exploratory data analysis (EDA) of the paths of moving animals. J Stat Plan Infer 122(2):43–63
Cao H, Wolfson O, Trajcevski G (2006) Spatio-temporal data reduction with deterministic error bounds. VLDB J 15(3):211–228
Cudré-Mauroux P, Wu E, Madden S (2010) TrajStore: an adaptive storage system for very large trajectory data sets. In: Proceedings of ICDE, pp 109–120
Dykes JA, Mountain DM (2003) Seeking structure in records of spatio-temporal behaviour: visualization issues, efforts and applications. Comput Stat Data Anal 43(4):581–603
Egenhofer MJ (1994) Topological relations between regions with holes. Int J GIS 8:129–142
Eick SG (2000) Visualizing multi-dimensional data. SIGGRAPH Comput Graph 34:61–67
Erwig M, Güting RH, Schneider M, Vazirgiannis M (1999) Spatio-temporal data types: an approach to modeling and querying moving objects in databases. GeoInformatica 3(3):269–296
Forer P, Huisman O (2000) Information, place and cyberspace: issues in accessibility, chap. time and sequencing: substitution at the physical/virtual interface. Springer Verlag, Heidelberg, pp 73–90
Fredrikson A, North C, Plaisant C, Shneiderman B (1999) Temporal, geographical and categorical aggregations viewed through coordinated displays: a case study with highway incident data. In: Proceedings of workshop on new paradigms in information visualization and manipulation, pp 26–34
European project IST-6FP-014915 GeoPKDD Geographic privacy-aware knowledge discovery and delivery (GeoPKDD) (web site: http://www.geopkdd.eu)
Golfarelli M, Maio D, Rizzi S (1998) The dimensional fact model: a conceptual model for data warehouses. Int J Coop Inf Syst 7(2–3):215–247
Gómez LI, Haesevoets S, Kuijpers B, Vaisman AA (2009) Spatial aggregation: data model and implementation. Inf Syst 34(6):551–576
Gómez LI, Kuijpers B, Vaisman AA (2011) A data model and query language for spatio-temporal decision support. GeoInformatica 15(3):455–496
Gray J, Chaudhuri S, Bosworth A, Layman A, Reichart D, Venkatrao M, Pellow F, Pirahesh H (1997) Data cube: a relational aggregation operator generalizing group-by, cross-tab and sub-totals. Data Min Knowl Disc 1(1):29–53
Guo D (2007) Visual analytics of spatial interaction patterns for pandemic decision support. Int J Geograph Inf Sci 21:859–877
Güting RH, de Almeida VT, Ding Z (2006) Modeling and querying moving objects in networks. VLDB J 15(2):165–190
Güting RH, Behr T, Düntgen C (2010) SECONDO: a platform for moving objects database research and for publishing and integrating research implementations. IEEE Data Eng Bull 33(2):56–63
Güting RH, Schneider M (2005) Moving Objects Databases. Morgan Kaufman, San Mateo
Han J, Stefanovic N, Kopersky K (1998) Selective materialization: an efficient method for spatial data cube construction. In: Proceedings of PAKDD, pp 144–158
Jensen CS, Kligys A, Pedersen TB, Timko I (2004) Multidimensional data modeling for location-based services. VLDB J 13(1):1–21
Jensen CS, Lu H, Yang B (2009) Indexing the trajectories of moving objects in symbolic indoor space. In: Proceedings of SSTD, pp 208–227
Keim D, Kohlhammer J, Ellis G, Mansmann F (eds) (2010) Mastering the information age solving problems with visual analytics, chap. data mining, pp 39–56. Eurographics Association
Leonardi L, Orlando S, Raffaetà A, Roncato A, Silvestri C (2009) Frequent spatio-temporal patterns in trajectory data warehouses. In: Proceedings of SAC. ACM, pp 1433–1440
Liu K, Deng K, Ding Z, Li M, Zhou X (2009) MOIR/MT: monitoring large-scale road network traffic in real-time. PVLDB 2(2):1538–1541
Malinowski E, Zimányi E (2004) Representing spatiality in a conceptual multidimensional model. In: Proceedings of GIS, pp 12–22
Malinowski E, Zimányi E (2007) Logical representation of a conceptual model for spatial data warehouses. GeoInformatica 11(4):431–457
Marketos G, Frentzos E, Ntoutsi I, Pelekis N, Raffaetà A, Theodoridis Y (2008) Building Real World Trajectory Warehouses. In: Proceedings of MobiDE, pp 8–15
Orlando S, Orsini R, Raffaetà A, Roncato A, Silvestri C (2007) Trajectory data warehouses: design and implementation issues. J Comput Sci Eng 1(2):240–261
Papadias D, Tao Y, Kalnis P, Zhang J (2002) Indexing spatio-temporal data warehouses. In: Proceedings of ICDE, pp 166–175
Papadias D, Zhang J, Mamoulis N, Tao Y (2003) Query processing in spatial network databases. In: Proceedings of VLDB, pp 802–813
Pedersen T, Tryfona N (2001) Pre-aggregation in spatial data warehouses. In: Proceedings of SSTD, LNCS, vol 2121, pp 460–480
Pelekis N, Theodoridis Y (2006) Boosting location-based services with a moving object database engine. In: Proceedings of MobiDE, pp 3–10
Pfoser D, Jensen CS (2005) Trajectory indexing using movement constraints. GeoInformatica 9(2):93–115
Popa IS, Zeitouni K, Oria V, Barth D, Vial S (2011) Indexing in-network trajectory flows. VLDB J 20(5):643–669
Raffaetà A, Leonardi L, Marketos G, Andrienko G, Andrienko N, Frentzos E, Giatrakos N, Orlando S, Pelekis N, Roncato A, Silvestri C (2011) Visual mobility analysis using T-warehouse. IJDWM 7(1):1–23
Sakr M, Andrienko G, Behr T, Andrienko N, Güting RH, Hurter C (2011) Exploring spatiotemporal patterns by integrating visual analytics with a moving objects database system. In: Proceedings of GIS, pp 505–508
Sakr MA, Güting RH (2011) Spatiotemporal pattern queries. GeoInformatica 15(3):497–540
Siqueira TLL, de Aguiar Ciferri CD, Times VC, Ciferri RR (2012) The SB-index and the HSB-index: efficient indices for spatial data warehouses. GeoInformatica 16(1):165–205
Stolte C, Tang D, Hanrahan P (2002) Polaris: A system for query, analysis, and visualization of multidimensional relational databases. IEEE Trans Vis Comput Graph 8:52–65
Sweeney L (2002) Achieving k-anonymity privacy protection using generalization and suppression. Int J Uncertain Fuzz Knowl-Based Syst 10:571–588
Tao Y, Kollios G, Considine J, Li F, Papadias D (2004) Spatio-temporal aggregation using sketches. In: Proceedings of ICDE, pp 214–225
Tao Y, Papadias D (2005) Historical spatio-temporal aggregation. ACM TOIS 23:61–102
Timko I, Pedersen TB (2004) Capturing complex multidimensional data in location-based data warehouses. In: Proceedings of GIS, pp 147–156
Veilleux JP, Lambert M, Santerre R, B\(\acute{\rm e}\)dard Y (2004) Utilisation du syst\(\acute{\rm e}\)me de positionnement par satellites (GPS) et des outils d’exploration et d’analyse SOLAP pour l’\(\acute{\rm e}\)valuation et le suivi de sportifs de haut niveau. In: Colloque G\(\acute{\rm e}\)omatique 2004 – Un choix strat\(\acute{\rm e}\)gique!
Wan T, Zeitouni K, Meng X (2007) An OLAP system for network-constrained moving objects. In: Proceedings of SAC, pp 13–18
Wolfson O, Xu B, Chamberlain S, Jiang L (1998) Moving objects databases: issues and solutions. In: Proceedings of SSDBM, pp 111–122
Acknowledgements
This work has been partially supported by the national research project PON “TETRis” (no. PON01_00451), the Marie Curie Project SEEK (no. 295179) and the Cost Action MOVE (no. IC0903). We are grateful to our colleagues of the Department of Environmental Sciences for their support in the analysis of the vessels scenario. We thank the anonymous referees for their useful suggestions and Paolo Baldan for his careful reading of the paper.
Author information
Authors and Affiliations
Corresponding author
A Appendix
A Appendix
This appendix includes the proofs of the propositions presented in Section 5, as well as some formal definitions and lemmas that are only referred inside proofs.
The spatio-temporal operators provided by the MOD allow to load into the TDW the correct values for the measures at the base granularity. Here we prove that they remain correct also when roll-up operations are performed, as stated by Proposition 1. The proof of this proposition is divided into two lemmata, i.e, Lemmas 1 and 4.
We start with a lemma which takes into account the aggregate functions for all the measures except \(\mathcal{V}\).
Lemma 1
Let \(\mathcal{H}_{TS}\) be a hierarchy, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and U be an object group. For any \(G\in \mathcal{H}_{TS}\) with \(G\neq \ensuremath{G_\bot}\) and g, g′ ∈ G with g ≠ g′
where g p , g′ p ∈ G p with g p ≠ g′ p and \(G_p \preceq G\) and G p ≠ G.
Proof
The remaining statements are proved in a similar way.□
The case of measure \(\mathcal{V}\) is more complex and requires the introduction of an auxiliary measure B, counting the number of times trajectories cross the border of a granule.
Definition 8
Let G be a spatio-temporal granularity and g ∈ G be a granule, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and let U be an object group. We denote by \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g,U)\) the number of intersections between the trajectories of object group U and the border of the spatio-temporal granule g.
The following lemma states how measure B can be computed by using sub-aggregates of \(\mathcal{C}\).
Lemma 2
Let \(\mathcal{H}_{TS}\) be a hierarchy, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and U be an object group. For any \(G\in \mathcal{H}_{TS}\) with \(G\neq \ensuremath{G_\bot}\) and g ∈ G
where g p , g′ p ∈ G p with \(G_p \preceq G\) and G p ≠ G.
Proof
□
The next lemma provides an inductive characterisation of measure \({\ensuremath{B}}\).
Lemma 3
Let \(\mathcal{H}_{TS}\) be a hierarchy, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and U be an object group. For any \(G\in \mathcal{H}_{TS}\) with \(G\neq \ensuremath{G_\bot}\) and g ∈ G
where g p , g′ p ∈ G p with \(G_p \preceq G\) and G p ≠ G.
Proof
This property easily follows by definition of \({\ensuremath{B}}\). More in detail, for the sake of simplicity assume g = g p ∪ g p ′. Then the border of the granule g consists of the union of the borders of g p and g p ′ minus the common border between the granules g p and g p ′. As a consequence trajectories crossing the common border remain inside the granule g and they should not be counted in \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U)\). In formulas:
This is exactly the desired result.□
Now we show how the measure \(\mathcal{V}\) can be expressed analytically in terms of \({\ensuremath{B}}\), \(\mathcal{S}\) and \(\mathcal{E}\).
Proposition 4
Let G be a spatio-temporal granularity, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and let U be an object group. Then for each g ∈ G the following statement holds:
Proof
We observe that, as obvious from its definition, \(\mathcal{V}\) can be computed by summing up the contributions given to such a measure separately by each trajectory. More precisely, let g be a granule and \(\ensuremath{\textsf{T}} = \{\ensuremath{\textsf{T}}_{id}\}_{id\in\mathcal{I}}\) a set of trajectories. Then \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g,U) = \sum_{id\in \mathcal{I}} \mathcal{V}^{\{ \ensuremath{\textsf{T}}_{id} \}}(g,U)\).
Therefore, we can prove the proposition for a single trajectory \(\ensuremath{\textsf{T}}_{id}\) and thesis will trivially extend to a generic set of trajectories.
Let \(\delta(\ensuremath{\textsf{T}}_{id}) = \langle s_{id}^1, \ldots, s_{id}^n\rangle\), we prove the thesis by induction on n (the number of sub-trajectories of the trajectory decomposition).
-
[ n = 1] In this case \(\delta(\ensuremath{\textsf{T}}_{id}) = \langle s_{id}^1\rangle\). If \(s_{id}^1 \subseteq g\), then \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) = 1\), \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U) = 0\), \(\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U) = 1\), and \(\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U)= 1\). Thus the thesis holds.
If, instead, \(s_{id}^1 \not \subseteq g\), then \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) = 0\), \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U) = 0\), \(\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U) = 0\), and \(\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U) = 0\) and the thesis holds.
Notice that in both cases the measure \({\ensuremath{B}}\) is equal to 0 since at least two sub-trajectories are necessary to have \({\ensuremath{B}}>0\) because each sub-trajectory belongs to exactly one granule.
-
[ \(n\Rightarrow n+1\) ] In this case \(\delta(\ensuremath{\textsf{T}}_{id}) = \langle s_{id}^1,\ldots,s_{id}^n, s_{id}^{n+1}\rangle\). Let \(\delta({\ensuremath{\textsf{T}}}_{id}')= \langle s_{id}^1,\ldots,s_{id}^n\rangle\). We consider four cases:
-
[case \(s_{id}^n \subseteq g\) and \(s_{id}^{n+1} \subseteq g\) ] By definition \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{V}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{S}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{E}^{\ensuremath{\textsf{T}}'}(g, U)\), and \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U)={\ensuremath{B}}^{\ensuremath{\textsf{T}}'}(g, U)\). Thus, the thesis holds by inductive hypothesis.
-
[case \(s_{id}^n \not \subseteq g\) and \(s_{id}^{n+1} \subseteq g\) ] By definition \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{V}^{\ensuremath{\textsf{T}}'}(g, U) + 1\), \(\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{S}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{E}^{\ensuremath{\textsf{T}}'}(g, U) + 1\), and \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U) = {\ensuremath{B}}^{\ensuremath{\textsf{T}}'}(g, U)+1\). Thus by using the inductive hypothesis
$$\begin{array}{lll} \mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) &=& \mathcal{V}^{\ensuremath{\textsf{T}}'}(g, U) + 1 \\ &=& \displaystyle \frac{{\ensuremath{B}}^{\ensuremath{\textsf{T}}'}(g, U) + \mathcal{S}^{\ensuremath{\textsf{T}}'}(g, U)+\mathcal{E}^{\ensuremath{\textsf{T'}}}(g, U)}{2} + 1 \\ &=&\displaystyle \frac{{\ensuremath{B}}^{\ensuremath{\textsf{T}}'}(g, U) + 1 +\mathcal{S}^{\ensuremath{\textsf{T}}'}(g, U)+\mathcal{E}^{\ensuremath{\textsf{T}}'}(g, U) + 1}{2} \\ &=&\displaystyle \frac{{\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U)+\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U)+\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U)}{2} \end{array}$$ -
[case \(s_{id}^n \subseteq g\) and \(s_{id}^{n+1} \not \subseteq g\) ] By definition \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{V}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{S}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{E}^{\ensuremath{\textsf{T}}'}(g, U) - 1\), and \(B^{\ensuremath{\textsf{T}}}(g, U) = {\ensuremath{B}}^{\ensuremath{\textsf{T}}'}(g, U) + 1\). As in the previous case we can conclude.
-
[case \(s_{id}^n \not \subseteq g\) and \(s_{id}^{n+1}\not \subseteq g\) ] By definition \(\mathcal{V}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{V}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{S}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{S}^{\ensuremath{\textsf{T}}'}(g, U)\), \(\mathcal{E}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{E}^{\ensuremath{\textsf{T}}'}(g, U)\), and \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U) = {\ensuremath{B}}^{\ensuremath{\textsf{T}}'}(g, ,U)\). Thus the thesis holds by inductive hypothesis.□
-
The following lemma concludes the proof for measure \(\mathcal{V}\).
Lemma 4
Let \(\mathcal{H}_{TS}\) be a hierarchy, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and U be an object group. For any \(G\in \mathcal{H}_{TS}\) with \(G\neq \ensuremath{G_\bot}\) and g ∈ G
where g p ∈ G p with \(G_p \preceq G\) and G p ≠ G.
Proof
For the sake of simplicity, let g = g p ∪ g′ p with g p , g′ p ∈ G p and g p ≠ g′ p .
By Lemma 1, we have
and
By Proposition 4
and
Hence we can conclude
This is the thesis since \(\mathcal{C}^{\ensuremath{\textsf{T}}}(g, g, U) = 0\) for any granule g.□
The join of Lemmas 1 and 4 is exactly Proposition 1.
Proposition 1
Let \(\mathcal{H}_{TS}\) be a hierarchy, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and U be an object group. For any \(G\in \mathcal{H}_{TS}\) with \(G\neq \ensuremath{G_\bot}\) , g, g′ ∈ G with g ≠ g′
where g p , g p ′ ∈ G p with g p ≠ g p ′ and G P is a predecessor of G , i.e., \(G_p \preceq G\) and G p ≠ G.
We finally prove the assertion regarding the relation between visits and presence.
Proposition 3
Let G be a spatio-temporal granularity and g ∈ G, let \(\ensuremath{\textsf{T}}\) be a set of trajectories and let U be an object group, then
-
1.
if each trajectory visits g at most once then \(\mathcal{P}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{V}^{\ensuremath{\textsf{T}}}(g, U)\)
-
2.
if \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U) = 0\) then \(\mathcal{P}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{V}^{\ensuremath{\textsf{T}}}(g, U)\) .
Proof
The first statement is a straightforward consequence of definitions \(\mathcal{V}\) and \(\mathcal{P}\).
In order to prove the second statement observe that the hypothesis \({\ensuremath{B}}^{\ensuremath{\textsf{T}}}(g, U) = 0\) means that all the trajectories are completely contained in a granule g. Hence \({\ensuremath{\cal S}}^{\ensuremath{\textsf{T}}}(g, U) = {\ensuremath{\cal E}}^{\ensuremath{\textsf{T}}}(g, U) = \mathcal{P}^{\ensuremath{\textsf{T}}}(g, U)\). Then, by Proposition 4, we have that
□
Rights and permissions
About this article
Cite this article
Leonardi, L., Orlando, S., Raffaetà, A. et al. A general framework for trajectory data warehousing and visual OLAP. Geoinformatica 18, 273–312 (2014). https://doi.org/10.1007/s10707-013-0181-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10707-013-0181-3