spatio-temporal pattern queries m. hadjieleftheriou g. kollios p. bakalov v. j. tsotras

21
Spatio- temporal Pattern Queries M. Hadjieleftherio G. Kollio P. Bakalo V. J. Tsotra

Upload: chester-armstrong

Post on 05-Jan-2016

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

Spatio-temporal Pattern Queries

M. HadjieleftheriouG. Kollios

P. BakalovV. J. Tsotras

Page 2: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

2

Motivation The need to locate spatio-temporal

objects that follow specific patterns. Examples: Identify vehicles that were close to the three

recent sniper incidents Identify clients with specific credit card usage

patternsAnalyze connectivity/mobility patterns in

mobile ad-hoc networks (e.g., verify that a given pattern is prevalent)

Page 3: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

3

Example

X

Y

T

Q2, t2

Q3, t3

Q1, t1

Page 4: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

4

Formulation

Syntax: S can be any spatial predicate, T can be any

temporal constraint or empty Score object trajectories according to how

well they satisfy the query pattern Problem: Given a query pattern use an

index to score trajectories incrementally Ideally: Access only parts of trajectories

necessary to guarantee correct answers. Prune trajectories fast!

Q = {(S1,T1),...,(Sn ,T n)}

Page 5: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

5

Two Separate Problems

STP Queries With TimeEvery query predicate is associated with an

absolute temporal constraint STP Queries With Order

Query predicates are associated with relative temporal constraint

Page 6: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

6

Types of STP Queries Range predicates: Crosses, Leaves, Meets, …

Use Boolean score functions (crosses or not) Distance based predicates: Nearest neighbor,

Group nearest neighbor, all other neighbors, …Use aggregate score functions (min, max,

average, sum, …), as long as they are monotonic

Combinations of the aboveUse combined scoring functions and answer

each group of queries individually

Page 7: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

7

STP Queries With Time

We use existing spatio-temporal index structures to answer all predicates

We employ concepts from T.A. (Fagin et al.) to answer predicates incrementally

We prune trajectories according to upper and lower bounds

We access the actual trajectories only when good candidates have been found

Page 8: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

8

A Simple Example

P1

P2

Q

P3

T

X

0

2

-2

21

21

51

0

Page 9: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

9

A Simple Example

P1

P2

Q

P3

T

X

0

2

-2

23

21

3

Page 10: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

10

STP Queries With Order

X

Y

T

Q2

Q3, t3

Q1, t1

Q3

Page 11: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

11

The Exact Distance is Expensive

Cost increases exponentially as the number of predicates increases

Can be computed more efficiently by using the T.A. algorithm

Can we take predicate ordering into account and speed up T.A. as well?

Page 12: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

12

Previous Approaches Cannot Help

Spatio-temporal indices cannot be used!Full scan of temporal dimension of the index

Projecting out the temporal dimension does not help!

Ideally, we need to find a method that will retrieve only the trajectories that satisfy the predicates in the specified order

Page 13: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

13

Solution Decompose the space into a grid Keep a list of trajectory ids that intersect

each grid cell, along with the respective time-periods

Given the query predicates compose respective lists of trajectory ids/time-instants, from the constituent cells

Use a merge-join algorithm to prune trajectories that do not satisfy the order of the query

Page 14: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

14

P1 P3

P2

The Index Structure

A = { (P1, 1) }

A B . . .

B = { (P2, [2, 3]) }

F = { (P1, [3,4]), (P2, 18) }

This is the index that we will store

Page 15: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

15

Example

P1 P3

P2

A B . . .

Q1

Q2

1

3

5

(P2, 2) (P2, 7)

Q1 Q2

(P2, {2,3,15,16}),(P1, {4,5}), (P3, 5)

U = {P2}

1

9

(P2, {7,8,9,17,18}),(P3, {3,4})

P

Page 16: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

16

Idea!

Run T.A. using only the candidate trajectory data loaded so far to compute the exact distance

Prove that the answer will be correct even if we don’t see the rest of the trajectory

We speed up the computation cost associated with the queries as well!

Page 17: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

17

Experimental Evaluation Synthetic datasets on the freeways of Illinois Up to 500K objects and 6,000,000 MBRs Measure the average number of disk

accesses for the index and the total number of candidate trajectories that need to be retrieved

Compared linear scan, R-tree, MVR-tree

Page 18: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

18

STP Queries with OrderRange Predicates

0

200

400

600

800

1000

5 10 20

Number of predicates

Avg. index I/O

CellList

R-tree

1

10

100

1000

10000

5 10 20

Number of predicates

Total I/O(log scale)

CellList

R-tree

Page 19: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

19

STP Queries with OrderDistance Based Predicates

1

10

100

1000

10000

100000

5 10 20

Number of predicates

Avg. index I/O(log scale)

LazyEagerR-tree

1

10

100

1000

10000

100000

1000000

5 10 20

Number of predicates

Total I/O(log scale)

LazyEagerR-tree

Page 20: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

20

Conclusions

Introduced a novel type of query Proposed a simple yet efficient expression

mechanism Designed an efficient algorithm for STP

Queries with Time Designed an efficient index structure and

algorithms for STP Queries with Order Conducted extensive experiments

Page 21: Spatio-temporal Pattern Queries M. Hadjieleftheriou G. Kollios P. Bakalov V. J. Tsotras

Thank you!