+ All Categories
Home > Technology > Multidimensional Interfaces for Selecting Data with Order

Multidimensional Interfaces for Selecting Data with Order

Date post: 10-Feb-2017
Category:
Upload: ruben-taelman
View: 177 times
Download: 0 times
Share this document with a friend
24
Ruben Taelman - @rubensworks imec - Ghent University Multidimensional Interfaces for Selecting Data with Order Pieter Colpaert, Ruben Verborgh, Erik Mannens 1
Transcript

Ruben Taelman - @rubensworksimec - Ghent University

Multidimensional Interfacesfor Selecting Data with Order

Pieter Colpaert, Ruben Verborgh, Erik Mannens 1

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.

TPF SPARQL FILTER

~1 hour!

TPF SPARQL FILTER

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

OverviewIndexing

Multidimensional Interface

Example

Conclusions

5

These indexes are primarily used server-side

HTTPinterface

Queries

ResultsIndex

6

Let’s experiment with moving that index to the client

HTTPinterface

Index navigation

Index node value

Expose index through an HTTP interface

Index

7

OverviewIndexing

Multidimensional Interface

Example

Conclusions

8

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

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

OverviewIndexing

Multidimensional Interface

Example

Conclusions

11

Theoretical Experiment: Indexing points

x

y

0 1 3

1

2

3

212

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

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

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

Multidimensional interfaces only useful in some cases

For types with many instances

For types of interest

16

Client-cost navigating index

Range Fragments size

Consider trade-offs

17

Download all data

#Range Fragments

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)

OverviewIndexing

Multidimensional Interface

Example

Conclusions

19

Clients can perform custom search algorithms

20

Trade-offs existbetween client- and server cost

21

Let’s experiment with different methodsfor exposing data indexes!

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

Combining many dimensions

23

d1 . d2 . d4

d3 . d5 . d6

Make virtual dimensions

Linear Fragmentation

x

y

0 1 2 3

1

2

3

24

Alternatively:Aim for equally sized fragmentsby analyzing distributionor by clustering


Recommended