Matching Tree Patterns on Partial-trees Optimizing Tree-Pattern - - PowerPoint PPT Presentation

matching tree patterns on partial trees
SMART_READER_LITE
LIVE PREVIEW

Matching Tree Patterns on Partial-trees Optimizing Tree-Pattern - - PowerPoint PPT Presentation

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur Matching Tree Patterns on Partial-trees Optimizing Tree-Pattern Matching Shachar Harussi Supervision of Prof. Amir Averbuch September 1,


slide-1
SLIDE 1

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Matching Tree Patterns on Partial-trees

Optimizing Tree-Pattern Matching Shachar Harussi

Supervision of Prof. Amir Averbuch

September 1, 2011

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-2
SLIDE 2

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

1 Motivation: Graph querying 2 Background: tree patterns 3 Partial trees - holistic divide and concur

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-3
SLIDE 3

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Outline

1 Motivation: Graph querying 2 Background: tree patterns 3 Partial trees - holistic divide and concur

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-4
SLIDE 4

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Motivation

Everything is a graph.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-5
SLIDE 5

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Motivation(cont.)

We need to query everything.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-6
SLIDE 6

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Lets take a picture

A picture is a graph.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-7
SLIDE 7

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Lets take a picture

A picture is a graph.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-8
SLIDE 8

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Holistic approach

Given a graph pattern.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-9
SLIDE 9

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Holistic approach

Given a graph pattern. And a graph data,

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-10
SLIDE 10

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Holistic approach

Given a graph pattern. And a graph data, The solution is O O.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-11
SLIDE 11

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

But Holistic is hard

A Problem: Holistic pattern matching is NP-hard. Even subgraph isomorphism problem [8] is hard.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-12
SLIDE 12

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

But Holistic is hard

A Problem: Holistic pattern matching is NP-hard. Even subgraph isomorphism problem [8] is hard. A Solution: divide and concur.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-13
SLIDE 13

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local is easy

Divide the pattern a local patterns Pi,

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-14
SLIDE 14

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local is easy

Divide the pattern a local patterns Pi, And local data Di.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-15
SLIDE 15

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local is easy

Divide the pattern a local patterns Pi, And local data Di. Partial solutions O O. Strings matching is fast O(Pi × Di)

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-16
SLIDE 16

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local is easy

Divide the pattern a local patterns Pi, And local data Di. Partial solutions O O. Strings matching is fast O(Pi × Di) Join (Concur) Final solution O O.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-17
SLIDE 17

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

So local approach is perfect ?

The answer is NO

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-18
SLIDE 18

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

So local approach is perfect ?

The answer is NO The concur is a Pyrrhic victory - i.e. the join costs. But lets focus on trees.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-19
SLIDE 19

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Outline

1 Motivation: Graph querying 2 Background: tree patterns 3 Partial trees - holistic divide and concur

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-20
SLIDE 20

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Tree Data Model

‘Tree pattern’ is a tree

v1 a v4 d v3 c v2 b

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-21
SLIDE 21

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’ v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-22
SLIDE 22

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v5) v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-23
SLIDE 23

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v5)

  • 2. path2(‘/a/b/d’):

(v1,v4,v6), (v1,v7,v8) v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-24
SLIDE 24

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v5)

  • 2. path2(‘/a/b/d’):

(v1,v4,v6), (v1,v7,v8) 3.joins: (v1,v2,v3, ) (v1,v4,v5, ) (v1,v4, ,v6) (v1,v7, ,v8) v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-25
SLIDE 25

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v5)

  • 2. path2(‘/a/b/d’):

(v1,v4,v6), (v1,v7,v8) 3.joins: (v1,v2,v3, ) (v1,v4,v5, ) (v1,v4, ,v6) (v1,v7, ,v8)

  • 4. answer:

(v1,v4,v5,v6) v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-26
SLIDE 26

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-27
SLIDE 27

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-28
SLIDE 28

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-29
SLIDE 29

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-30
SLIDE 30

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-31
SLIDE 31

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing Based on clustering

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-32
SLIDE 32

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing Based on clustering Cluster represent “Forward” knowledge

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-33
SLIDE 33

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing Based on clustering Cluster represent “Forward” knowledge

Semi local: F&B index [9].

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-34
SLIDE 34

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing Based on clustering Cluster represent “Forward” knowledge

Semi local: F&B index [9].

“Forward” and “Backward” knowledge

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-35
SLIDE 35

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing Based on clustering Cluster represent “Forward” knowledge

Semi local: F&B index [9].

“Forward” and “Backward” knowledge Unscalable

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-36
SLIDE 36

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Local structural-indexes

Tree representation that is: small, enables querying The current indexes (Dataguide [5],1-index [3]) are:

Local processing Based on clustering Cluster represent “Forward” knowledge

Semi local: F&B index [9].

“Forward” and “Backward” knowledge Unscalable Local processing

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-37
SLIDE 37

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

How to locally index a tree?

v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-38
SLIDE 38

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

How to locally index a tree?

v6 d v5 c v4 b v3 c v2 b v8 d v7 b v1 a

v6,v8

d

v3,v5

c

v2,v4,v7

b

v1

a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-39
SLIDE 39

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

v6,v8

d

v3,v5

c

v2,v4,v7

b

v1

a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-40
SLIDE 40

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v3), (v1,v7,v3), (v1,v2,v5), (v1,v4,v5), (v1,v7,v5),

v6,v8

d

v3,v5

c

v2,v4,v7

b

v1

a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-41
SLIDE 41

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v3), (v1,v7,v3), (v1,v2,v5), (v1,v4,v5), (v1,v7,v5),

  • 2. path2(‘/a/b/d’):

(v1,v2,v6), (v1,v4,v6), (v1,v7,v6), (v1,v2,v8), (v1,v4,v8), (v1,v7,v8)

v6,v8

d

v3,v5

c

v2,v4,v7

b

v1

a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-42
SLIDE 42

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The local approach problem

an example

query: ‘/a/b[/c]/d’

  • 1. path1(‘/a/b/c’):

(v1,v2,v3), (v1,v4,v3), (v1,v7,v3), (v1,v2,v5), (v1,v4,v5), (v1,v7,v5),

  • 2. path2(‘/a/b/d’):

(v1,v2,v6), (v1,v4,v6), (v1,v7,v6), (v1,v2,v8), (v1,v4,v8), (v1,v7,v8)

  • 3. answer:

(v1, . . . , v8) Yet Another Pyrrhic victory

v6,v8

d

v3,v5

c

v2,v4,v7

b

v1

a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-43
SLIDE 43

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Outline

1 Motivation: Graph querying 2 Background: tree patterns 3 Partial trees - holistic divide and concur

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-44
SLIDE 44

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

In the rest of this talk we

Supplies a model for

1 holistic structural-indexing. 2 holistic lazy pattern matching.

See experimental results.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-45
SLIDE 45

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Data Model - An example c8 d9 c4 b3 c5 a2 a1 a6 b7

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-46
SLIDE 46

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Query Model: partial-trees

Two kind of node:

1 Tree nodes (single label); 2 Subtree nodes (multiple

labels).

*

a,b,c,d

d c a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-47
SLIDE 47

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Query Model: partial-trees

Two kind of node:

1 Tree nodes (single label); 2 Subtree nodes (multiple

labels).

Same as XPath pattern‘/a//c[//d]’

*

a,b,c,d

d c a

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-48
SLIDE 48

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Query matching: partial-trees

Embedding Tp is obtained from T by a series of edge contractions. Embedding function f relates Tp and T nodes. Example f : (v1, a), (v4, c), (v9, d), (v2, ⋆) . . . Solution(T, Tp) = f .

*

c8 d9 c4 b3 c5 a2 a1 a6 b7

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-49
SLIDE 49

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Query matching: partial-trees(cont.)

Q: How we match patterns on structural indexes and physical data models? A: We model the data as a partial-tree. Matching a partial-tree pattern on a patrial-tree solution(Tp, Tp)

T solution(T, Tp)−1 ◦ solution(T, Tp)

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-50
SLIDE 50

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Query matching: partial-trees(cont.)

Q: How we match patterns on structural indexes and physical data models? A: We model the data as a partial-tree. Fast: O(|Tp| × |Tp|). Matching a partial-tree pattern on a patrial-tree solution(Tp, Tp)

T solution(T, Tp)−1 ◦ solution(T, Tp)

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-51
SLIDE 51

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Structural Indexing: partial-trees

An holistic safe Index:

1 Offline: Embed T into an index Tp 2 Online: Solution(Tp, Tp)

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-52
SLIDE 52

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Index example: offline phase

c8 d9 c4 b3 c5 a2 a1 a6 b7

b,c,d7-9 b,c3-5 a1,2,6

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-53
SLIDE 53

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Index example: online phase

b

d c a

*

b,c,d7-9 b,c3-5 a1,2,6

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-54
SLIDE 54

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Index example: online phase

b

d c a

*

b,c,d7-9 b,c3-5 a1,2,6

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-55
SLIDE 55

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Experimental results: index

Data K Average Average Average Maximal coverage (%) improvement (%) gain improvement (%) DBLP 2 57 95 2887 11.44 DBLP 3 86 87 8095 38.37 DBLP 4 95 81 16424 11.18 DBLP 5 9 72 20283 0.19 DBLP 6 100 58 53726 0.15 DBLP 7 100 44 60168 0.15 DBLP 8 100 47 55841 0.16 XMark 2 100 100 XMark 3 28 93 1936 58.2 XMark 4 46 78 5717 1.27 XMark 5 17 92 1810 1.16 XMark 6 22 96 627 8.9 XMark 7 28 87 3640 0.42 XMark 8 60 73 9184 0.53

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-56
SLIDE 56

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Holistic matching data model: region encoding

c8 d9 c4 b3 c5 a2 a1 a6 b7

Term (Doc, first, last, level) ‘a’ (1, 1, 9, 1), (1, 2, 5, 2), (1, 6, 9, 2) ‘b’ (1, 3, 5, 3), (1, 7, 9, 3) ‘c’ (1, 4, 4, 4), (1, 5, 5, 4), (1, 8, 8, 4) ‘d’ (1, 9, 9, 4)

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-57
SLIDE 57

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Holistic matching data model: region encoding

v1 a v4 d v3 c v2 b Term (Doc, first, last, level) ‘a’ (1, 1, 9, 1), (1, 2, 5, 2), (1, 6, 9, 2) ‘b’ (1, 3, 5, 3), (1, 7, 9, 3) ‘c’ (1, 4, 4, 4), (1, 5, 5, 4), (1, 8, 8, 4) ‘d’ (1, 9, 9, 4)

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-58
SLIDE 58

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Holistic matching: history

Holistic matching was developed by following ideas:

1 Algebraic approach: Binary joins. 2 Algebraic approach: Path joins. 3 Holistic approach: TwigStack [4], Twig2Stack. 4 Holistic approach: TwigTA

Theoretic foundations. Controls the ‘Laziness’. Predicts unmatched nodes before extraction. Scalable.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-59
SLIDE 59

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Lazy holistic matching: partial-trees

The matching algorithm list of region-encodings of nodes. The algorithm iteratively does the following:

1 Extracts set of node-encodings S. 2 Translates S into a partial tree Tp. 3 Preforms Solution(Tp, Tp) and refines a set of intermediate

holistic solutions.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-60
SLIDE 60

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Matching example: iteration I - translates S into Tp

c8 d9 c4 b3 c5 a2 a1 a6 b7

a,b,c

6-8

d9 c4 b3 c

5-5

a1

a

2-2 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-61
SLIDE 61

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Matching example: iteration I - Solution(Tp, Tp)

b

d c a

*

a,b,c

6-8

d9 c4 b3 c

5-5

a1

a

2-2 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-62
SLIDE 62

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Matching example: iteration I - Solution(Tp, Tp)

b

d c a

*

a,b,c

6-8

d9 c4 b3 c

5-5

a1

a

2-2 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-63
SLIDE 63

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Matching example: iteration II

b

d c a

*

c8 d9 a6 b7 c4 b3 c5 a2 a1

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-64
SLIDE 64

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Matching example: iteration II

b

d c a

*

c8 d9 a1 a6 b7 c4 b3 c5 a2

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-65
SLIDE 65

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Experimental results: matching

TwigTA[6] Vs. TwigStack[4]. TwigTA prunes up to 99% of the nodes.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-66
SLIDE 66

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Summary

We: Understood local vs. holistic tree pattern matching. Learn about partial-tree pattern model and applied it for:

Holistic structural-indexing; Holistic lazy pattern-matching.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-67
SLIDE 67

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Future Work

What about graph data, graph patterns? What about other domains: RDF, streaming, image mining ?

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-68
SLIDE 68

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Harrusi, A.Averbuch. Tree automata based holistic twig pattern matching: TA

  • methodology. VLDB 2011.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-69
SLIDE 69

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Harrusi, A.Averbuch. Tree automata based holistic twig pattern matching: the TwigTA

  • algorithm. ECCOMAS 2011.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-70
SLIDE 70

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Harrusi, A.Averbuch. Structural-indexes as automata: holistic approach. Submitted to VLDB journal.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-71
SLIDE 71

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Amiel, S.Harrusi, A.Averbuch. Semi-structured

  • rdered tree language

induction - XML Schema

  • extraction. Submitted to

VLDB journal.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-72
SLIDE 72

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Harrusi, A.Averbuch. XML streaming parsers on next generation SIM cards. Submitted to journal of data Management.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-73
SLIDE 73

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Harrusi,A.Averbuch, N.Rabin A fast compact prefix encoding for pattern matching

  • n limited resources device.

Proceedings of Data Compression Conference (DCC 2010), Snowbird, Utah, March, 2010.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-74
SLIDE 74

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

XML tasks and applications - accomplished in my PhD Thesis 1

paper S.Harrusi, A.Averbuch, A.Yehudai, XML syntax conscious compression, Data Compression Conference (DCC 2006), Snowbird, Utah, March 28 - 30, 2006, Proceedings of IEEE, pp. 402–411.

1Optimizing XML Processing, 2010 Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-75
SLIDE 75

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

The End!

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-76
SLIDE 76

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

C.Koch. Efficient processing of expressive node-selecting queries on XML data in secondary storage: A tree automata-based approach. In VLDB, pages 249–260, 2003. M.Frick, M.Grohe, and C.Koch. Query evaluation on compressed trees (extended abstract). LICS, pages 188–195, 2003. Tova Milo and Dan Suciu. Index structures for path expressions, 1997. N.Bruno, N.Koudas, and D.Srivastava. Holistic twig joins: optimal XML pattern matching. In Proceedings of SIGMOD, pages 310–321, 2002. R.Goldman and J.Widom.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-77
SLIDE 77

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Dataguides: Enabling query formulation and optimization in semistructured databases. In Proceedings of VLDB, pages 436–445, 1997. S.Harrusi and A.Averbuch. Tree automata based holistic twig pattern matching, i: Methodology. T.Schwentick. Automata for XML – a survey. Journal of Computer and System Sciences, 73:289–315, 2007.

  • J. R. Ullmann.

An algorithm for subgraph isomorphism.

  • J. ACM, 23:31–42, January 1976.

Wei Wang, Haifeng Jiang, Hongzhi Wang, Xuemin Lin, Hongjun Lu, and Jianzhong Li.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees

slide-78
SLIDE 78

Outline Motivation: Graph querying Background: tree patterns Partial trees - holistic divide and concur

Efficient processing of xml path queries using the disk-based f&b index. In VLDB ’05: Proceedings of the 31st international conference

  • n Very large data bases, pages 145–156. VLDB Endowment,

2005.

Shachar Harussi Supervision of Prof. Amir Averbuch Matching Tree Patterns on Partial-trees