SlideShare a Scribd company logo
1 of 29
Download to read offline
ELIS – Multimedia Lab
Reducing HTTP traffic for
scalable linked data consumption
Query Execution Optimization for
Clients of Triple Patterns Fragments
Joachim Van Herwegen, Ruben Verborgh, Erik Mannens, Rik Van De Walle
2
ELIS – Multimedia Lab
SPARQL endpoints, data dumps, simple interfaces, …
Still looking for the ultimate linked data solution
Full SPARQL support
High scalability
Fast response time
Low server & client load
…
Not found yet, so we focused on improving the response time
for clients using simple interfaces (Triple Pattern Fragments).
Accessing linked data
3
ELIS – Multimedia Lab
Accessing Linked Data
Problem statement
Improved join tree
Optimizing local joins
Bringing it all together
Query Execution Optimization for
Clients of Triple Patterns Fragments
4
ELIS – Multimedia Lab
Accessing Linked Data
Problem statement
Improved join tree
Optimizing local joins
Bringing it all together
Query Execution Optimization for
Clients of Triple Patterns Fragments
5
ELIS – Multimedia Lab
Linked Data access extremes
SPARQL protocol
Live data
Full SPARQL support
High server load
Data dump
Static data
Remote: 1 query
Local: full queries
High client load
6
ELIS – Multimedia Lab
Generic way to describe how linked data can be accessed
Data Results when accessing a selector
Metadata Description of the fragment
Controls Links to other fragments
Verborgh et al. – Web-scale querying through Linked Data Fragments
Linked Data Fragments
7
ELIS – Multimedia Lab
Accessing data through a SPARQL endpoint
Data Bindings matching a SPARQL query
Metadata { } (data contains everything needed)
Controls { } (interface can answer everything)
SPARQL endpoint
8
ELIS – Multimedia Lab
Accessing data through Triple Pattern Fragments
Data Triples matching a triple pattern
Metadata Count estimate, page size, etc.
Controls First page, next page, root fragment
Triple Pattern Fragments
9
ELIS – Multimedia Lab
Triple Pattern Fragments
URI
query
results
metadata/controls
10
ELIS – Multimedia Lab
Accessing Linked Data
Problem statement
Improved join tree
Optimizing local joins
Bringing it all together
Query Execution Optimization for
Clients of Triple Patterns Fragments
11
ELIS – Multimedia Lab
SELECT ?person ?city WHERE {
?person a db:Architect. 1200 triples
?person db:birthPlace ?city. 430,000 triples
?city dc:subject db:Category:Capitals_in_Europe. 60 triples
}
Start from the smallest pattern, apply bindings and do recursion
Greedy algorithm
birthPlace architect
400
40,000
Capitals
1
12
ELIS – Multimedia Lab
SELECT ?person ?city WHERE {
?person a db:Architect. 1200 triples
?person db:birthPlace ?city. 430,000 triples
?city dc:subject db:Category:Capitals_in_Europe. 60 triples
}
Find optimal solution for every pattern
Optimized algorithm
Capitals birthPlace architect
1
400
local
12
13
ELIS – Multimedia Lab
Accessing Linked Data
Problem statement
Improved join tree
Optimizing local joins
Bringing it all together
Query Execution Optimization for
Clients of Triple Patterns Fragments
14
ELIS – Multimedia Lab
Goal
Minimize HTTP calls required to solve BGP query
Solution
2 possible roles for every pattern in query:
Download pattern completely
or
Bind variable and download resulting patterns
Estimate best option for every pattern
Optimized algorithm
15
ELIS – Multimedia Lab
?player :team ?club 365,000 triples
?club :type :SoccerClub 16,000 triples
?club :ground ?city 15,000 triples
?city :country :Spain 7,000 triples
?player :birthPlace ?city 430,000 triples
Always download smallest pattern
Determine others on shared variables and results so far
Can change during runtime
Extended example
16
ELIS – Multimedia Lab
Extended example
?city
:country
:Spain
?city
?club
:ground
?city
?player
:birthPlace
?city
?club
?player
?player
:team
?club
?club
:type
:SoccerClub
supplies ?city
supplied by
?city
17
ELIS – Multimedia Lab
First iteration
?city
:country
:Spain
?city
?club
:ground
?city
?player
:birthPlace
?city
?club
?player
?player
:team
?club
?club
:type
:SoccerClub
18
ELIS – Multimedia Lab
Further iterations
?city
:country
:Spain
?city
?club
:ground
?city
?player
:birthPlace
?city
?club
?player
?player
:team
?club
?club
:type
:SoccerClub
Making sure no
pattern is ignored
19
ELIS – Multimedia Lab
Estimate which option requires least HTTP calls.
Download:
#π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘ 
π‘π‘Žπ‘”π‘’π‘ π‘–π‘§π‘’
avg pages per binding avg bindings per triple
Bind:
π‘Žπ‘£π‘” π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘ /𝑏𝑖𝑛𝑑𝑖𝑛𝑔
π‘π‘Žπ‘”π‘’π‘ π‘–π‘§π‘’
β‹… max
𝑏𝑖𝑛𝑑𝑖𝑛𝑔𝑠 π‘“π‘œπ‘’π‘›π‘‘
π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘  π‘‘π‘œπ‘€π‘›π‘™π‘œπ‘Žπ‘‘π‘’π‘‘
β‹… #π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘ 
for all suppliers
Swap when necessary, taking into account work done so far
Updating pattern roles
20
ELIS – Multimedia Lab
Accessing Linked Data
Problem statement
Improved join tree
Optimizing local joins
Bringing it all together
Query Execution Optimization for
Clients of Triple Patterns Fragments
21
ELIS – Multimedia Lab
Most join data from previous iterations can be reused.
Challenge: reuse as much data as possible.
Local joining
Triple data
Iteration i
Triple data
Iteration i+1 New triples!
22
ELIS – Multimedia Lab
Join tree step
Iteration i Iteration i + 1
Bindings
i-1
Triples
i
New New
Bindings
i-1
Triples
i
Bindings
i
Bindings
i
New
23
ELIS – Multimedia Lab
Start with the largest unchanged, connected set of patterns.
Estimate remainder of join order based on pattern size and
connectivity.
Minimizing joins
New New
Bindings
i-1
Triples
i
New triples
Propagated
changes
24
ELIS – Multimedia Lab
Accessing Linked Data
Problem statement
Improved join tree
Optimizing local joins
Bringing it all together
Query Execution Optimization for
Clients of Triple Patterns Fragments
25
ELIS – Multimedia Lab
Prevent local optima
Join tree instead of join path
Reuse local join data
Summary
26
ELIS – Multimedia Lab
Single machine
Intel Core i5-3230M CPU @ 2.60GHz
8 GB RAM
Both client and server
Artificial delay of 100ms on server to simulate network delay
Test setup
27
ELIS – Multimedia Lab
WatDiv benchmark queries, 100ms delay on server
Median # HTTP calls Median time (s)
Results
28
ELIS – Multimedia Lab
Less HTTP calls with more client-side processing
Ideal for slow connection situations
Still room for improvements
No parallelism
Focus on BGPs
More work per HTTP call
Not guaranteed to be better
Conclusion
29
ELIS – Multimedia Lab
Thank you!
Come see demo #13 on thursday
Questions?

More Related Content

Viewers also liked

Opportunistic Linked Data Querying through Approximate Membership Metadata
Opportunistic Linked Data Querying through Approximate Membership MetadataOpportunistic Linked Data Querying through Approximate Membership Metadata
Opportunistic Linked Data Querying through Approximate Membership MetadataMiel Vander Sande
Β 
Querying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsQuerying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsRuben Verborgh
Β 
Towards an Interface for User-Friendly Linked Data Generation Administration
Towards an Interface for User-Friendly Linked Data Generation AdministrationTowards an Interface for User-Friendly Linked Data Generation Administration
Towards an Interface for User-Friendly Linked Data Generation Administrationandimou
Β 
Situation of open data in Flanders
Situation of open data in FlandersSituation of open data in Flanders
Situation of open data in FlandersPieter Colpaert
Β 
LDOW2013 r&wbase: git for triples
LDOW2013 r&wbase: git for triplesLDOW2013 r&wbase: git for triples
LDOW2013 r&wbase: git for triplesMiel Vander Sande
Β 
Machines are the new Digital Natives
Machines are the new Digital NativesMachines are the new Digital Natives
Machines are the new Digital NativesMiel Vander Sande
Β 
iRail: History & current issues
iRail: History & current issuesiRail: History & current issues
iRail: History & current issuesPieter Colpaert
Β 
Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...
Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...
Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...Pieter Heyvaert
Β 
Querying Heterogeneous Linked Date Interfaces through Reasoning
Querying Heterogeneous Linked Date Interfaces through ReasoningQuerying Heterogeneous Linked Date Interfaces through Reasoning
Querying Heterogeneous Linked Date Interfaces through ReasoningJoachim Van Herwegen
Β 
Time travelling through DBpedia
Time travelling through DBpediaTime travelling through DBpedia
Time travelling through DBpediaMiel Vander Sande
Β 
Presentation Data Science Challenge
Presentation Data Science ChallengePresentation Data Science Challenge
Presentation Data Science ChallengeDieter De Witte
Β 
Towards a Uniform User Interface for Editing Mapping Definitions
Towards a Uniform User Interface for Editing Mapping DefinitionsTowards a Uniform User Interface for Editing Mapping Definitions
Towards a Uniform User Interface for Editing Mapping DefinitionsPieter Heyvaert
Β 
DBpedia Mappings Quality Assessment
DBpedia Mappings Quality AssessmentDBpedia Mappings Quality Assessment
DBpedia Mappings Quality Assessmentandimou
Β 
Scaling out federated queries for Life Sciences Data In Production
Scaling out federated queries for Life Sciences Data In ProductionScaling out federated queries for Life Sciences Data In Production
Scaling out federated queries for Life Sciences Data In ProductionDieter De Witte
Β 
ComparativeMotifFinding
ComparativeMotifFindingComparativeMotifFinding
ComparativeMotifFindingDieter De Witte
Β 
Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...
Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...
Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...Laurens De Vocht
Β 
RMLEditor: A Graph-based Mapping Editor for Linked Data Mappings
RMLEditor: A Graph-based Mapping Editor for Linked Data MappingsRMLEditor: A Graph-based Mapping Editor for Linked Data Mappings
RMLEditor: A Graph-based Mapping Editor for Linked Data MappingsPieter Heyvaert
Β 
Effect of Heuristics on Serendipity in Path-Based Storytelling with Linked Data
Effect of Heuristics on Serendipity in Path-Based Storytelling with Linked DataEffect of Heuristics on Serendipity in Path-Based Storytelling with Linked Data
Effect of Heuristics on Serendipity in Path-Based Storytelling with Linked DataLaurens De Vocht
Β 
OSLO: Open Standards for Linked Organizations
OSLO: Open Standards for Linked OrganizationsOSLO: Open Standards for Linked Organizations
OSLO: Open Standards for Linked OrganizationsLaurens De Vocht
Β 
Reproducibility with 
the 99 cents Linked Data archive
Reproducibility with 
the 99 cents Linked Data archiveReproducibility with 
the 99 cents Linked Data archive
Reproducibility with 
the 99 cents Linked Data archiveMiel Vander Sande
Β 

Viewers also liked (20)

Opportunistic Linked Data Querying through Approximate Membership Metadata
Opportunistic Linked Data Querying through Approximate Membership MetadataOpportunistic Linked Data Querying through Approximate Membership Metadata
Opportunistic Linked Data Querying through Approximate Membership Metadata
Β 
Querying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsQuerying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern Fragments
Β 
Towards an Interface for User-Friendly Linked Data Generation Administration
Towards an Interface for User-Friendly Linked Data Generation AdministrationTowards an Interface for User-Friendly Linked Data Generation Administration
Towards an Interface for User-Friendly Linked Data Generation Administration
Β 
Situation of open data in Flanders
Situation of open data in FlandersSituation of open data in Flanders
Situation of open data in Flanders
Β 
LDOW2013 r&wbase: git for triples
LDOW2013 r&wbase: git for triplesLDOW2013 r&wbase: git for triples
LDOW2013 r&wbase: git for triples
Β 
Machines are the new Digital Natives
Machines are the new Digital NativesMachines are the new Digital Natives
Machines are the new Digital Natives
Β 
iRail: History & current issues
iRail: History & current issuesiRail: History & current issues
iRail: History & current issues
Β 
Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...
Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...
Using EPUB 3 and the Open Web Platform for Enhanced Presentation and Machine-...
Β 
Querying Heterogeneous Linked Date Interfaces through Reasoning
Querying Heterogeneous Linked Date Interfaces through ReasoningQuerying Heterogeneous Linked Date Interfaces through Reasoning
Querying Heterogeneous Linked Date Interfaces through Reasoning
Β 
Time travelling through DBpedia
Time travelling through DBpediaTime travelling through DBpedia
Time travelling through DBpedia
Β 
Presentation Data Science Challenge
Presentation Data Science ChallengePresentation Data Science Challenge
Presentation Data Science Challenge
Β 
Towards a Uniform User Interface for Editing Mapping Definitions
Towards a Uniform User Interface for Editing Mapping DefinitionsTowards a Uniform User Interface for Editing Mapping Definitions
Towards a Uniform User Interface for Editing Mapping Definitions
Β 
DBpedia Mappings Quality Assessment
DBpedia Mappings Quality AssessmentDBpedia Mappings Quality Assessment
DBpedia Mappings Quality Assessment
Β 
Scaling out federated queries for Life Sciences Data In Production
Scaling out federated queries for Life Sciences Data In ProductionScaling out federated queries for Life Sciences Data In Production
Scaling out federated queries for Life Sciences Data In Production
Β 
ComparativeMotifFinding
ComparativeMotifFindingComparativeMotifFinding
ComparativeMotifFinding
Β 
Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...
Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...
Benchmarking the Effectiveness of Associating Chains of Links for Exploratory...
Β 
RMLEditor: A Graph-based Mapping Editor for Linked Data Mappings
RMLEditor: A Graph-based Mapping Editor for Linked Data MappingsRMLEditor: A Graph-based Mapping Editor for Linked Data Mappings
RMLEditor: A Graph-based Mapping Editor for Linked Data Mappings
Β 
Effect of Heuristics on Serendipity in Path-Based Storytelling with Linked Data
Effect of Heuristics on Serendipity in Path-Based Storytelling with Linked DataEffect of Heuristics on Serendipity in Path-Based Storytelling with Linked Data
Effect of Heuristics on Serendipity in Path-Based Storytelling with Linked Data
Β 
OSLO: Open Standards for Linked Organizations
OSLO: Open Standards for Linked OrganizationsOSLO: Open Standards for Linked Organizations
OSLO: Open Standards for Linked Organizations
Β 
Reproducibility with 
the 99 cents Linked Data archive
Reproducibility with 
the 99 cents Linked Data archiveReproducibility with 
the 99 cents Linked Data archive
Reproducibility with 
the 99 cents Linked Data archive
Β 

Similar to ESWC2015 - Query Optimization for Clients of Linked Data Fragments

Querying data on the Web – client or server?
Querying data on the Web – client or server?Querying data on the Web – client or server?
Querying data on the Web – client or server?Ruben Verborgh
Β 
Querying datasets on the Web with high availability
Querying datasets on the Web with high availabilityQuerying datasets on the Web with high availability
Querying datasets on the Web with high availabilityRuben Verborgh
Β 
Issues in AI product development and practices in audio applications
Issues in AI product development and practices in audio applicationsIssues in AI product development and practices in audio applications
Issues in AI product development and practices in audio applicationsTaesu Kim
Β 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked DataRuben Verborgh
Β 
Linked Data Fragments
Linked Data FragmentsLinked Data Fragments
Linked Data FragmentsRuben Verborgh
Β 
Elastic search from the trenches
Elastic search from the trenchesElastic search from the trenches
Elastic search from the trenchesVinΓ­cius Carvalho
Β 
Deep Learning Inference at speed and scale
Deep Learning Inference at speed and scaleDeep Learning Inference at speed and scale
Deep Learning Inference at speed and scaleBill Liu
Β 
The Fast Path to Building Operational Applications with Spark
The Fast Path to Building Operational Applications with SparkThe Fast Path to Building Operational Applications with Spark
The Fast Path to Building Operational Applications with SparkSingleStore
Β 
Junhua wang ai_next_con
Junhua wang ai_next_conJunhua wang ai_next_con
Junhua wang ai_next_conJunhua Wang
Β 
Predicting query performance and explaining results to assist Linked Data con...
Predicting query performance and explaining results to assist Linked Data con...Predicting query performance and explaining results to assist Linked Data con...
Predicting query performance and explaining results to assist Linked Data con...Rakebul Hasan
Β 
Python + MPP Database = Large Scale AI/ML Projects in Production Faster
Python + MPP Database = Large Scale AI/ML Projects in Production FasterPython + MPP Database = Large Scale AI/ML Projects in Production Faster
Python + MPP Database = Large Scale AI/ML Projects in Production FasterPaige_Roberts
Β 
http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151xlight
Β 
Use Case Patterns for LLM Applications (1).pdf
Use Case Patterns for LLM Applications (1).pdfUse Case Patterns for LLM Applications (1).pdf
Use Case Patterns for LLM Applications (1).pdfM Waleed Kadous
Β 
Azure Databricks for Data Scientists
Azure Databricks for Data ScientistsAzure Databricks for Data Scientists
Azure Databricks for Data ScientistsRichard Garris
Β 
Vitus Masters Defense
Vitus Masters DefenseVitus Masters Defense
Vitus Masters DefensederDoc
Β 
Sem tech 2011 v8
Sem tech 2011 v8Sem tech 2011 v8
Sem tech 2011 v8dallemang
Β 
A survey of top k query processing techniques in relational database systems
A survey of top k query processing techniques in relational database systemsA survey of top k query processing techniques in relational database systems
A survey of top k query processing techniques in relational database systemsunyil96
Β 
Bhupeshbansal bigdata
Bhupeshbansal bigdata Bhupeshbansal bigdata
Bhupeshbansal bigdata Bhupesh Bansal
Β 
Scaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, GoalsScaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, Goalskamaelian
Β 

Similar to ESWC2015 - Query Optimization for Clients of Linked Data Fragments (20)

Querying data on the Web – client or server?
Querying data on the Web – client or server?Querying data on the Web – client or server?
Querying data on the Web – client or server?
Β 
Querying datasets on the Web with high availability
Querying datasets on the Web with high availabilityQuerying datasets on the Web with high availability
Querying datasets on the Web with high availability
Β 
Issues in AI product development and practices in audio applications
Issues in AI product development and practices in audio applicationsIssues in AI product development and practices in audio applications
Issues in AI product development and practices in audio applications
Β 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked Data
Β 
Legacy Systems Interactions with the Supply Chain Through the C2NET Cloud-ba...
Legacy Systems Interactions with the Supply  Chain Through the C2NET Cloud-ba...Legacy Systems Interactions with the Supply  Chain Through the C2NET Cloud-ba...
Legacy Systems Interactions with the Supply Chain Through the C2NET Cloud-ba...
Β 
Linked Data Fragments
Linked Data FragmentsLinked Data Fragments
Linked Data Fragments
Β 
Elastic search from the trenches
Elastic search from the trenchesElastic search from the trenches
Elastic search from the trenches
Β 
Deep Learning Inference at speed and scale
Deep Learning Inference at speed and scaleDeep Learning Inference at speed and scale
Deep Learning Inference at speed and scale
Β 
The Fast Path to Building Operational Applications with Spark
The Fast Path to Building Operational Applications with SparkThe Fast Path to Building Operational Applications with Spark
The Fast Path to Building Operational Applications with Spark
Β 
Junhua wang ai_next_con
Junhua wang ai_next_conJunhua wang ai_next_con
Junhua wang ai_next_con
Β 
Predicting query performance and explaining results to assist Linked Data con...
Predicting query performance and explaining results to assist Linked Data con...Predicting query performance and explaining results to assist Linked Data con...
Predicting query performance and explaining results to assist Linked Data con...
Β 
Python + MPP Database = Large Scale AI/ML Projects in Production Faster
Python + MPP Database = Large Scale AI/ML Projects in Production FasterPython + MPP Database = Large Scale AI/ML Projects in Production Faster
Python + MPP Database = Large Scale AI/ML Projects in Production Faster
Β 
http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151
Β 
Use Case Patterns for LLM Applications (1).pdf
Use Case Patterns for LLM Applications (1).pdfUse Case Patterns for LLM Applications (1).pdf
Use Case Patterns for LLM Applications (1).pdf
Β 
Azure Databricks for Data Scientists
Azure Databricks for Data ScientistsAzure Databricks for Data Scientists
Azure Databricks for Data Scientists
Β 
Vitus Masters Defense
Vitus Masters DefenseVitus Masters Defense
Vitus Masters Defense
Β 
Sem tech 2011 v8
Sem tech 2011 v8Sem tech 2011 v8
Sem tech 2011 v8
Β 
A survey of top k query processing techniques in relational database systems
A survey of top k query processing techniques in relational database systemsA survey of top k query processing techniques in relational database systems
A survey of top k query processing techniques in relational database systems
Β 
Bhupeshbansal bigdata
Bhupeshbansal bigdata Bhupeshbansal bigdata
Bhupeshbansal bigdata
Β 
Scaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, GoalsScaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, Goals
Β 

Recently uploaded

Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
Β 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
Β 
Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...
Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...
Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...Patryk Bandurski
Β 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
Β 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
Β 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
Β 
FULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | DelhiFULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | Delhisoniya singh
Β 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
Β 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
Β 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
Β 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
Β 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
Β 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
Β 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
Β 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
Β 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
Β 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
Β 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
Β 

Recently uploaded (20)

Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
Β 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Β 
Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...
Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...
Integration and Automation in Practice: CI/CD in MuleΒ Integration and Automat...
Β 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
Β 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Β 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
Β 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Β 
FULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | DelhiFULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY πŸ” 8264348440 πŸ” Call Girls in Diplomatic Enclave | Delhi
Β 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Β 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
Β 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
Β 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
Β 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Β 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Β 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
Β 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
Β 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
Β 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
Β 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Β 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
Β 

ESWC2015 - Query Optimization for Clients of Linked Data Fragments

  • 1. ELIS – Multimedia Lab Reducing HTTP traffic for scalable linked data consumption Query Execution Optimization for Clients of Triple Patterns Fragments Joachim Van Herwegen, Ruben Verborgh, Erik Mannens, Rik Van De Walle
  • 2. 2 ELIS – Multimedia Lab SPARQL endpoints, data dumps, simple interfaces, … Still looking for the ultimate linked data solution Full SPARQL support High scalability Fast response time Low server & client load … Not found yet, so we focused on improving the response time for clients using simple interfaces (Triple Pattern Fragments). Accessing linked data
  • 3. 3 ELIS – Multimedia Lab Accessing Linked Data Problem statement Improved join tree Optimizing local joins Bringing it all together Query Execution Optimization for Clients of Triple Patterns Fragments
  • 4. 4 ELIS – Multimedia Lab Accessing Linked Data Problem statement Improved join tree Optimizing local joins Bringing it all together Query Execution Optimization for Clients of Triple Patterns Fragments
  • 5. 5 ELIS – Multimedia Lab Linked Data access extremes SPARQL protocol Live data Full SPARQL support High server load Data dump Static data Remote: 1 query Local: full queries High client load
  • 6. 6 ELIS – Multimedia Lab Generic way to describe how linked data can be accessed Data Results when accessing a selector Metadata Description of the fragment Controls Links to other fragments Verborgh et al. – Web-scale querying through Linked Data Fragments Linked Data Fragments
  • 7. 7 ELIS – Multimedia Lab Accessing data through a SPARQL endpoint Data Bindings matching a SPARQL query Metadata { } (data contains everything needed) Controls { } (interface can answer everything) SPARQL endpoint
  • 8. 8 ELIS – Multimedia Lab Accessing data through Triple Pattern Fragments Data Triples matching a triple pattern Metadata Count estimate, page size, etc. Controls First page, next page, root fragment Triple Pattern Fragments
  • 9. 9 ELIS – Multimedia Lab Triple Pattern Fragments URI query results metadata/controls
  • 10. 10 ELIS – Multimedia Lab Accessing Linked Data Problem statement Improved join tree Optimizing local joins Bringing it all together Query Execution Optimization for Clients of Triple Patterns Fragments
  • 11. 11 ELIS – Multimedia Lab SELECT ?person ?city WHERE { ?person a db:Architect. 1200 triples ?person db:birthPlace ?city. 430,000 triples ?city dc:subject db:Category:Capitals_in_Europe. 60 triples } Start from the smallest pattern, apply bindings and do recursion Greedy algorithm birthPlace architect 400 40,000 Capitals 1
  • 12. 12 ELIS – Multimedia Lab SELECT ?person ?city WHERE { ?person a db:Architect. 1200 triples ?person db:birthPlace ?city. 430,000 triples ?city dc:subject db:Category:Capitals_in_Europe. 60 triples } Find optimal solution for every pattern Optimized algorithm Capitals birthPlace architect 1 400 local 12
  • 13. 13 ELIS – Multimedia Lab Accessing Linked Data Problem statement Improved join tree Optimizing local joins Bringing it all together Query Execution Optimization for Clients of Triple Patterns Fragments
  • 14. 14 ELIS – Multimedia Lab Goal Minimize HTTP calls required to solve BGP query Solution 2 possible roles for every pattern in query: Download pattern completely or Bind variable and download resulting patterns Estimate best option for every pattern Optimized algorithm
  • 15. 15 ELIS – Multimedia Lab ?player :team ?club 365,000 triples ?club :type :SoccerClub 16,000 triples ?club :ground ?city 15,000 triples ?city :country :Spain 7,000 triples ?player :birthPlace ?city 430,000 triples Always download smallest pattern Determine others on shared variables and results so far Can change during runtime Extended example
  • 16. 16 ELIS – Multimedia Lab Extended example ?city :country :Spain ?city ?club :ground ?city ?player :birthPlace ?city ?club ?player ?player :team ?club ?club :type :SoccerClub supplies ?city supplied by ?city
  • 17. 17 ELIS – Multimedia Lab First iteration ?city :country :Spain ?city ?club :ground ?city ?player :birthPlace ?city ?club ?player ?player :team ?club ?club :type :SoccerClub
  • 18. 18 ELIS – Multimedia Lab Further iterations ?city :country :Spain ?city ?club :ground ?city ?player :birthPlace ?city ?club ?player ?player :team ?club ?club :type :SoccerClub Making sure no pattern is ignored
  • 19. 19 ELIS – Multimedia Lab Estimate which option requires least HTTP calls. Download: #π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘  π‘π‘Žπ‘”π‘’π‘ π‘–π‘§π‘’ avg pages per binding avg bindings per triple Bind: π‘Žπ‘£π‘” π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘ /𝑏𝑖𝑛𝑑𝑖𝑛𝑔 π‘π‘Žπ‘”π‘’π‘ π‘–π‘§π‘’ β‹… max 𝑏𝑖𝑛𝑑𝑖𝑛𝑔𝑠 π‘“π‘œπ‘’π‘›π‘‘ π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘  π‘‘π‘œπ‘€π‘›π‘™π‘œπ‘Žπ‘‘π‘’π‘‘ β‹… #π‘‘π‘Ÿπ‘–π‘π‘™π‘’π‘  for all suppliers Swap when necessary, taking into account work done so far Updating pattern roles
  • 20. 20 ELIS – Multimedia Lab Accessing Linked Data Problem statement Improved join tree Optimizing local joins Bringing it all together Query Execution Optimization for Clients of Triple Patterns Fragments
  • 21. 21 ELIS – Multimedia Lab Most join data from previous iterations can be reused. Challenge: reuse as much data as possible. Local joining Triple data Iteration i Triple data Iteration i+1 New triples!
  • 22. 22 ELIS – Multimedia Lab Join tree step Iteration i Iteration i + 1 Bindings i-1 Triples i New New Bindings i-1 Triples i Bindings i Bindings i New
  • 23. 23 ELIS – Multimedia Lab Start with the largest unchanged, connected set of patterns. Estimate remainder of join order based on pattern size and connectivity. Minimizing joins New New Bindings i-1 Triples i New triples Propagated changes
  • 24. 24 ELIS – Multimedia Lab Accessing Linked Data Problem statement Improved join tree Optimizing local joins Bringing it all together Query Execution Optimization for Clients of Triple Patterns Fragments
  • 25. 25 ELIS – Multimedia Lab Prevent local optima Join tree instead of join path Reuse local join data Summary
  • 26. 26 ELIS – Multimedia Lab Single machine Intel Core i5-3230M CPU @ 2.60GHz 8 GB RAM Both client and server Artificial delay of 100ms on server to simulate network delay Test setup
  • 27. 27 ELIS – Multimedia Lab WatDiv benchmark queries, 100ms delay on server Median # HTTP calls Median time (s) Results
  • 28. 28 ELIS – Multimedia Lab Less HTTP calls with more client-side processing Ideal for slow connection situations Still room for improvements No parallelism Focus on BGPs More work per HTTP call Not guaranteed to be better Conclusion
  • 29. 29 ELIS – Multimedia Lab Thank you! Come see demo #13 on thursday Questions?