Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Multidimensional Interfaces for Selecting Data with Order

495 views

Published on

Slides for the presentation at the COLD workshop during ISWC 2016.

Published in: Technology
  • Be the first to like this

Multidimensional Interfaces for Selecting Data with Order

  1. 1. Ruben Taelman - @rubensworks imec - Ghent University Multidimensional Interfaces for Selecting Data with Order Pieter Colpaert, Ruben Verborgh, Erik Mannens 1
  2. 2. Triple Pattern Fragments (TPF) data dumps SPARQL results specific requests high server effort generic requests high client effort (Verborgh 2016) TPF Method for querying Linked Data with low server cost Evaluating queries client-side, with limited server interface.
  3. 3. TPF SPARQL FILTER ~1 hour!
  4. 4. TPF SPARQL FILTER Client downloads all data, and only filters afterwards because there’s no index!
  5. 5. Overview Indexing Multidimensional Interface Example Conclusions 5
  6. 6. These indexes are primarily used server-side HTTP interface Queries Results Index 6
  7. 7. Let’s experiment with moving that index to the client HTTP interface Index navigation Index node value Expose index through an HTTP interface Index 7
  8. 8. Overview Indexing Multidimensional Interface Example Conclusions 8
  9. 9. How could such an interface work? Memento offers a 1-dimensional temporal index to access previous versions of HTTP resources. (Van De Sompel 2009) HTTP resource Time Gate Resource @ time 1 HTTP link Resource @ time 2 Resource @ time 3 Resource @ time n ... 9
  10. 10. Not only time, but multiple dimensions Time → Range Gate: Interface returning Range Fragments for 1 dimension. n dimensions → n Range Gate levels Range Fragment: Data within a range for 1 dimension. In one or more pages Generalizing Memento 10
  11. 11. Overview Indexing Multidimensional Interface Example Conclusions 11
  12. 12. Theoretical Experiment: Indexing points x y 0 1 3 1 2 3 2 12
  13. 13. 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
  14. 14. 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
  15. 15. 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
  16. 16. Multidimensional interfaces only useful in some cases For types with many instances For types of interest 16
  17. 17. Client-cost navigating index Range Fragments size Consider trade-offs 17 ↔ ↔ Download all data #Range Fragments
  18. 18. 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)
  19. 19. Overview Indexing Multidimensional Interface Example Conclusions 19
  20. 20. Clients can perform custom search algorithms 20
  21. 21. Trade-offs exist between client- and server cost 21
  22. 22. Let’s experiment with different methods for exposing data indexes! WIP specification: http://bit.ly/cold-mdi 22
  23. 23. Combining many dimensions 23 d1 . d2 . d4 d3 . d5 . d6 Make virtual dimensions
  24. 24. Linear Fragmentation x y 0 1 2 3 1 2 3 24 Alternatively: Aim for equally sized fragments by analyzing distribution or by clustering

×