Top Banner
Ruben Taelman - @rubensworks imec - Ghent University Multidimensional Interfaces for Selecting Data with Order Pieter Colpaert, Ruben Verborgh, Erik Mannens 1
24

Multidimensional Interfaces for Selecting Data with Order

Feb 10, 2017

Download

Technology

Ruben Taelman
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Multidimensional Interfaces for Selecting Data with Order

Ruben Taelman - @rubensworksimec - Ghent University

Multidimensional Interfacesfor Selecting Data with Order

Pieter Colpaert, Ruben Verborgh, Erik Mannens 1

Page 2: Multidimensional Interfaces for Selecting Data with Order

Triple Pattern Fragments (TPF)

datadumps

SPARQLresults

specific requestshigh server effort

generic requestshigh client effort

(Verborgh 2016)

TPF

Method for querying Linked Data with low server cost

Evaluating queries client-side, with limited server interface.

Page 3: Multidimensional Interfaces for Selecting Data with Order

TPF SPARQL FILTER

~1 hour!

Page 4: Multidimensional Interfaces for Selecting Data with Order

TPF SPARQL FILTER

Client downloads all data,and only filters afterwardsbecause there’s no index!

Page 5: Multidimensional Interfaces for Selecting Data with Order

OverviewIndexing

Multidimensional Interface

Example

Conclusions

5

Page 6: Multidimensional Interfaces for Selecting Data with Order

These indexes are primarily used server-side

HTTPinterface

Queries

ResultsIndex

6

Page 7: Multidimensional Interfaces for Selecting Data with Order

Let’s experiment with moving that index to the client

HTTPinterface

Index navigation

Index node value

Expose index through an HTTP interface

Index

7

Page 8: Multidimensional Interfaces for Selecting Data with Order

OverviewIndexing

Multidimensional Interface

Example

Conclusions

8

Page 9: Multidimensional Interfaces for Selecting Data with Order

How could such an interface work?Memento offers a 1-dimensional temporal index

to access previous versions of HTTP resources.

(Van De Sompel 2009)

HTTPresource Time Gate

Resource @ time 1

HTTP link Resource @ time 2

Resource @ time 3

Resource @ time n

...

9

Page 10: Multidimensional Interfaces for Selecting Data with Order

Not only time, but multiple dimensions

Time → Range Gate: Interface returning Range Fragmentsfor 1 dimension.n dimensions → n Range Gate levels

Range Fragment: Data within a rangefor 1 dimension.In one or more pages

Generalizing Memento

10

Page 11: Multidimensional Interfaces for Selecting Data with Order

OverviewIndexing

Multidimensional Interface

Example

Conclusions

11

Page 12: Multidimensional Interfaces for Selecting Data with Order

Theoretical Experiment: Indexing points

x

y

0 1 3

1

2

3

212

Page 13: Multidimensional Interfaces for Selecting Data with Order

2-Dimensional Interface

Root

X

Y

[0, 2[ [2, 4[

[0, 2[ [2, 4[

Y

[0, 2[ [2, 4[

x

y

0 1 2 3

1

2

3

13

Range Fragment

Range Gate

Page 14: Multidimensional Interfaces for Selecting Data with Order

Querying points within (1,1),(2,2)

Root

X

Y

[0, 2[ [2, 4[

[0, 2[ [2, 4[

Y

[0, 2[ [2, 4[

x

y

0 1 2 3

1

2

3

5 requests

(0,0),(2,2)→ postprocessing

14

Page 15: Multidimensional Interfaces for Selecting Data with Order

Querying points within (1,2),(2,3)

Root

X

Y

[0, 2[ [2, 4[

[0, 2[ [2, 4[

Y

[0, 2[ [2, 4[

x

y

0 1 2 3

1

2

3

1 request + 4 cached 15

Page 16: Multidimensional Interfaces for Selecting Data with Order

Multidimensional interfaces only useful in some cases

For types with many instances

For types of interest

16

Page 17: Multidimensional Interfaces for Selecting Data with Order

Client-cost navigating index

Range Fragments size

Consider trade-offs

17

Download all data

#Range Fragments

Page 18: Multidimensional Interfaces for Selecting Data with Order

Client-cost navigating index

Range Fragments size

Consider trade-offs

18

Download all data

#Range Fragments

Determine trade-off once, or dynamically (e.g. based on server load)

Page 19: Multidimensional Interfaces for Selecting Data with Order

OverviewIndexing

Multidimensional Interface

Example

Conclusions

19

Page 20: Multidimensional Interfaces for Selecting Data with Order

Clients can perform custom search algorithms

20

Page 21: Multidimensional Interfaces for Selecting Data with Order

Trade-offs existbetween client- and server cost

21

Page 22: Multidimensional Interfaces for Selecting Data with Order

Let’s experiment with different methodsfor exposing data indexes!

WIP specification: http://bit.ly/cold-mdi22

Page 23: Multidimensional Interfaces for Selecting Data with Order

Combining many dimensions

23

d1 . d2 . d4

d3 . d5 . d6

Make virtual dimensions

Page 24: Multidimensional Interfaces for Selecting Data with Order

Linear Fragmentation

x

y

0 1 2 3

1

2

3

24

Alternatively:Aim for equally sized fragmentsby analyzing distributionor by clustering