SlideShare une entreprise Scribd logo
1  sur  64
Télécharger pour lire hors ligne
Pauline Folz, Hala Skaf-Molli & Pascal Molli
ESWC 2016 - May 2016 - Heraklion
CyCLaDEs: A Decentralized
Cache for Triple Pattern
Fragments
1[1] R. Verborgh and al. Querying Datasets on the Web with High Availability. In 13th International Semantic Web Conference
(ISWC 2014), pages 180-196, 2014.
LDF clients execute SPARQL queries
over LDF servers [1]
● Minimize server side processing to
simple triple pattern fragment queries
(TPF)
● Joins executed on clients side
Context
2
Caches play an important role in the
performances of LDF server:
● Caches contain TPF, TPF are more
likely to be reused locally and across
clients
Context
[1] R. Verborgh and al. Querying Datasets on the Web with High Availability. In 13th International Semantic Web Conference
(ISWC 2014), pages 180-196, 2014.
Triple Pattern Fragment & Caches
3
LDF
Server
HTTP Cache
LDF Client 1
Local
Cache
LDF Client n
Local
Cache
HTTP calls HTTP calls
HTTP calls
Data
provider
Data
consumer
DBpedia
LDF Client n
Local
Cache
HTTP calls
LDF Client 1
Local
Cache
HTTP calls
Triple Pattern Fragment & Caches
3
LDF
Server
HTTP Cache
HTTP calls
SELECT ?author ?book
WHERE {
?book rdf:label dbo:Book;
dbo:author ?author }
LIMIT 100
DBpedia
LDF Client n
Local
Cache
Triple Pattern Fragment & Caches
3
LDF
Server
HTTP Cache
HTTP calls
1
2
3
0 ?book
http://www.w3.org/1999/02/22-rdf-
syntaxns#type http:.../ontology/Book
1 ?book http:.../ontology/author ?author
2 http:.../resource/%22...And Ladies of
the Club%22
http:.../ontology/author ?author
3 http:.../resource/%22A%22 Is for Alibi
http:.../ontology/author
?author
4 http:.../resource/%22B%22 Is for
Burglar
http:.../ontology/author ?author
152 HTTP calls
HTTP calls
LDF Client 1
Local
Cache
HTTP calls
SELECT ?author ?book
WHERE {
?book rdf:label dbo:Book;
dbo:author ?author }
LIMIT 100
DBpedia
What happens if clients
collaborate?
United Federation of Data Consumers
A local cache of a client can be
shared with other clients
● Reduce the load on the server
Challenges:
● Network with 1 million of clients
5
What if clients collaborate?
How a client can find a TPF
quickly in another client
cache?
LDF
Server
HTTP Cache
LDF Client 1
Local
Cache
LDF Client n
Local
Cache
Data
provider
Data
consumer
HTTP calls HTTP calls
HTTP calls
DHT: distributes the cache
among participants [2]
+ Lookup(TPF): finds TPF if it
exists!
- 1 query → 20,000 calls →
20,000 log(n) hops, n: number
of peers
6
[2] M. El Dick and al. Flower-cdn: A hybrid p2p overlay for efficient query processing in cdn. In Proceedings of the 12th
International Conference on Extending Database Technology: Advances in Database Technology, 2009. ACM.
2
3
4
5
6
7
Peer 16
Peer 1
Peer 11
Peer 22
friend[3]
friend[2]
friend[1]
0
1
Related Works
Behavioral Cache: connects a
fixed size of similar nodes [3]
+ Zero-hop lookup latency
- Not sure to find a TPF
~ Experimented with browsing
histories
What if we experiment
behavioral cache with
queries?
7
[3] D. Frey and al. Behave: Behavioral cache for web content. In Distributed Applications and Interoperable System, 2014.
Related Works
Assumption: Clients which performed similar queries
in the past will likely perform similar queries in the
future
8
CyCLaDEs Approach
Assumption: Clients which performed similar queries
in the past will likely perform similar queries in the
future
Approach:
● Each client builds a fixed-size of best similar neighbors
with zero-hop latency
8
CyCLaDEs Approach
Assumption: Clients which performed similar queries
in the past will likely perform similar queries in the
future
Approach:
● Each client builds a fixed-size of best similar neighbors
with zero-hop latency
● For each call 1) check local cache 2) check neighbors’
cache in parallel 3) go to the server
8
CyCLaDEs Approach
Assumption: Clients which performed similar queries
in the past will likely perform similar queries in the
future
Approach:
● Each client builds a fixed-size of best similar neighbors
with zero-hop latency
● For each call 1) check local cache 2) check neighbors’
cache in parallel 3) go to the server
8
How many neighbors cache hits can we get?
CyCLaDEs Approach
Many clients access LDF server
concurrently, but clients do not
collaborate.
9
LDF: Approach Overview
HTTP Cache
DrugBankDBpedia
LDF Server
c1
c2
c4
c7 c8
c9
c5
c6c3
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
CyCLaDEs: Approach Overview
Connect nodes through Random
Peer Sampling (RPS):
● Each node maintains a partial
view on the entire network
● The view contains a random
subset of network nodes
10
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
CyCLaDEs: Approach Overview
Connect nodes through Random
Peer Sampling (RPS):
● Each node maintains a partial
view on the entire network
● The view contains a random
subset of network nodes
Shuffle phases: renew
periodically neighbors to handle
churn and avoid network partition.
10
Connect nodes through Random
Peer Sampling (RPS):
● Each node maintains a partial
view on the entire network
● The view contains a random
subset of network nodes
Shuffle phases: renew
periodically neighbors to handle
churn and avoid network partition.
→ We use Cyclon [4]
for RPS.
c1
c2
c4
c3
c5
c6
c7 c8
c9
[4] S. Voulgaris and al. Cyclon: Inexpensive membership management for unstructured p2p overlays. Journal of
Network and Systems Management, 2005.
HTTP Cache
DrugBankDBpedia
LDF Server
CyCLaDEs: Approach Overview
10
RPS overlay network ensures
connectivity among all
clients.
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c1
c2
c4
c3
c5
c6
c7 c8
c9
CyCLaDEs: Approach Overview
11
RPS overlay network ensures
connectivity among all
clients.
C6 is connected to C3:
● C6 → DBpedia
● C3 → DrugBank
● C6 is not similar to C3
CyCLaDEs: Approach Overview
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c1
c2
c4
c3
c5
c6
c7 c8
c9
11
RPS overlay network ensures
connectivity among all
clients.
C6 is connected to C3:
● C6 → DBpedia
● C3 → DrugBank
● C6 is not similar to C3
Need a second overlay to
handle similarity as proposed
in Gossple [5]
.
[5] M. Bertier and al. The gossple anonymous social network. In 11th International Middleware Conference
Middleware 2010 - ACM/IFIP/USENIX, volume 6452 of LNCS, pages 191, 2010.
CyCLaDEs: Approach Overview
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c1
c2
c4
c3
c5
c6
c7 c8
c9
11
c1
c2
c4
c3 c6
c7 c8
c9
Cluster Overlay Network (CON):
● Each node has a profile based
on the history of executed
queries
CyCLaDEs: Approach Overview
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c5
12
Cluster Overlay Network (CON):
● Each node has a profile based
on the history of executed
queries
Shuffle phases allow to obtain
better neighbors.
Each node ranks and selects
best neighbors based on
similarity of profiles.
CyCLaDEs: Approach Overview
c1
c2
c4
c3 c6
c7 c8
c9
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c5
12
Executing queries produces
a stream of TPF, cache is a
window on this stream.
13
How to profile nodes?
Profile = summary of the recent past =
frequency of the k last recently used
predicates
14
Node profile - Algorithm
Size of the profile
14
Node profile - Algorithm
Stream of triples
14
Node profile - Algorithm
Timestamp of node
14
Node profile - Algorithm
For each predicate in the
stream
14
Node profile - Algorithm
If predicate exist:
1) Increment frequency by 1
2) Update timestamp
14
Node profile - Algorithm
If predicate does not exist:
1) Insert predicate in profile
a) With frequency = 1
b) Current timestamp
14
Node profile - Algorithm
If Pr > w:
Remove the oldest entry
14
Node profile - Algorithm
Computing Profile
P1
1
1
15
P2P1 P2 P3 P2 P2 P3 P3 P4
1 2 3 4 5 6 7 8 9
Predicate
Frequency
Timestamp
Node profile
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
1
2
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
1
2
P3
1
3
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
2
4
P3
1
3
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
3
5
P3
1
3
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
4
6
P3
1
3
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
4
6
P3
2
7
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P1
1
1
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P2 P3 P2 P2 P3 P3 P4
P2
4
6
P3
3
8
1 2 3 4 5 6 7 8 9
K = 3
Computing Profile
P4
1
9
Predicate
Frequency
Timestamp
15
Node profile
P2P1 P4P2 P3P3P3 P2 P2
P2
4
6
P3
3
8
1 2 3 4 5 6 7 8 9
K = 3
During ranking nodes
are compared thank to
their profile.
Nodes are compared
with the generalized
Jaccard similarity
coefficient.
P1 P2 P3
C5 10 6 40
C9 10 20 5
C8 10 2 2
● J(C5,C9) =
(10+6+5)/(10+20+40)
= 0.3
● J(C5,C8) =
14/56 = 0.25 16
How to compare neighbors?
For C5: C9 is more similar than C8
For C6: C8 is more similar than C9
CON
RPS
C5 shuffling with C6 :
#RPS=2, #CON=4
After Shuffling:
RPS and CON updated
For C5: C9 is more similar than C8
For C6: C8 is more similar than C9
CON
RPS
C5 shuffling with C6 :
#RPS=2, #CON=4
After Shuffling:
RPS and CON updated
c1
c2
c4
c3 c6
c7 c8
c9
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c5
C1 executes query Q1.
For each triple pattern query, try
to resolve pattern in:
1) Local cache
2) Neighborhood cache
3) HTTP cache
4) LDF Server
Queries with CyCLaDEs
1
18
c1
c2
c4
c3 c6
c7 c8
c9
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c5
C1 executes query Q1.
For each triple pattern query, try
to resolve pattern in:
1) Local cache
2) Neighborhood cache
3) HTTP cache
4) LDF Server
Queries with CyCLaDEs
1
2
2
2
18
c1
c2
c4
c3 c6
c7 c8
c9
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c5
C1 executes query Q1.
For each triple pattern query, try
to resolve pattern in:
1) Local cache
2) Neighborhood cache
3) HTTP cache
4) LDF Server
Queries with CyCLaDEs
1
2
2
2
3
18
c1
c2
c4
c3 c6
c7 c8
c9
c1
c2
c4
c3
c5
c6
c7 c8
c9
HTTP Cache
DrugBankDBpedia
LDF Server
c5
C1 executes query Q1.
For each triple pattern query, try
to resolve pattern in:
1) Local cache
2) Neighborhood cache
3) HTTP cache
4) LDF Server
Queries with CyCLaDEs
1
2
2
2
3
4
18
Berlin SPARQL Benchmark
(BSBM) [7]
chosen for simulating
Web applications.
One LDF Server with one classic
HTTP cache hosting BSBM
datasets.
A network of extended LDF
clients* running a query mix of
BSBM queries.
19
* https://github.com/pfolz/cyclades
Experiments
[7] C. Bizer and A. Schultz. The berlin sparql benchmark. International Journal on
Semantic Web and Information Systems, 2009.
LDF
Server
HTTP Cache
LDF Client 1
Local
Cache
BSBM 1M BSBM 10M
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client
Local
Cache
BSBM 100M
Each client has a query mix of
25 queries generated from 12
templates.
● Shuffling phases occur every
10 seconds
● One warmup round followed
by one real round
20
LDF
Server
HTTP Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client
Local
Cache
Experiments - Parameters
BSBM 1M BSBM 10M BSBM 100M
21
~ 20% neighbors cache hit-rate, whatever the
number of clients
BSBM 1M, cache = 1000, profile size = 10
10 clients: RPS = 4, CON = 9
50 clients: RPS = 6, CON = 15
100 clients: RPS = 7, CON = 20
Without CyCLaDEs With CyCLaDEs
Behavioral cache better resists than local cache
22
10 clients, RPS = 4, CON = 9, cache = 1000
Two communities access 2
different BSBM datasets on the
same server.
Nodes share the same RPS.
23
LDF
Server
HTTP Cache
LDF Client 1
Local
Cache
BSBM 1 BSBM 2
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client 1
Local
Cache
LDF Client
Local
Cache
LDF Client
Local
Cache
LDF Client
Local
Cache
LDF Client
Local
Cache
LDF Client
Local
Cache
LDF Client
Local
Cache
LDF Client
Local
Cache
Will CyCLaDEs
profiles detect
communities?
CyCLaDEs with 2 Communities
In CON overlay, CyCLaDEs builds two distinct
communities BSBM1 and BSBM2
24
Profile = 5 Profile = 30
2 BSBM 1M datasets, 50 clients
per data set, cache = 1000
CyCLaDEs builds a
behavioral decentralized
cache for LDF clients.
CyCLaDEs reduces calls
to the server in the
context of Web
applications.
23
Conclusion
Towards a Federation of Data Consumers
Measure the impact on
execution time.
CyCLaDEs brings the
data to the queries.
Bring queries to the
data.
24
Future Works
United Federation of Data Consumers
Pauline Folz, Hala Skaf-Molli & Pascal Molli
ESWC 2016 - May 2016 - Heraklion
CyCLaDEs: A Decentralized
Cache for Triple Pattern
Fragments
Size of the profile does not impact the number
of calls handled by neighborhood, queries use at
most 16 differents predicates at once
2 BSBM 1M dataset, 50 clients per data set, cache =
1000
BSBM 10M, 10 clients, RPS = 4, CON = 9,
profile size = 10
Percentage of calls handled by the neighborhood
is related to cache size. With a larger cache size
we have a bigger decentralized cache
Cache size
Query load - Is there a hotspot?
Most of the clients handled around 10,000 cache
queries and a few handled more than 100,000
cache queries
Query distribution
● Each client has its own query mix
● Each query mix:
○ is generated randomly
○ has 25 queries based on 12 templates
● Query mix:
○ is the same for both rounds
○ is executed in the same order for both rounds
Query Distribution
Shuffle
● Shuffle phases are executed each 10 seconds
● In theory shuffle phases do not impact query
processing
○ In implementation, query processing can be interrupted
because NodeJs is mono-thread
● Shuffle phase for BSBM 1M:
○ 10 clients ≈ 14 shuffles / client
○ 50 clients ≈ 80 shuffles / client
○ 100 clients ≈ 85 shuffles / client
Shuffle
Experiment
● 2 rounds:
○ Warmup → Bootstrap RPS, CON and HTTP cache
○ Real → measures are done
● All clients execute the same query mix for both
rounds
● All queries are executed in the same order
Experiment
Overlay size
● Random Peer Sampling:
○ RPS view size is Log(N), where N is the number of
peers in the network
● Cluster Overlay Network:
○ CON view size has been chosen following the
guidelines of [5]
[5] M. Bertier and al. The gossple anonymous social network. In 11th International Middleware
Conference Middleware 2010 - ACM/IFIP/USENIX, volume 6452 of LNCS, pages 191{211.
Springer, 2010.
Overlay size

Contenu connexe

Tendances

2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...Dr.-Ing. Thomas Hartmann
 
The linux networking architecture
The linux networking architectureThe linux networking architecture
The linux networking architecturehugo lu
 
27.2.10 lab extract an executable from a pcap
27.2.10 lab   extract an executable from a pcap27.2.10 lab   extract an executable from a pcap
27.2.10 lab extract an executable from a pcapFreddy Buenaño
 
2009 11 06 3gpp Ietf Ipv6 Shanghai Nat64
2009 11 06 3gpp Ietf Ipv6 Shanghai Nat642009 11 06 3gpp Ietf Ipv6 Shanghai Nat64
2009 11 06 3gpp Ietf Ipv6 Shanghai Nat64yacc2000
 
Tutorial of SF-TAP Flow Abstractor
Tutorial of SF-TAP Flow AbstractorTutorial of SF-TAP Flow Abstractor
Tutorial of SF-TAP Flow AbstractorYuuki Takano
 
27.1.5 lab convert data into a universal format
27.1.5 lab   convert data into a universal format27.1.5 lab   convert data into a universal format
27.1.5 lab convert data into a universal formatFreddy Buenaño
 
SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)
SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)
SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)Yuuki Takano
 
On unifying query languages for RDF streams
On unifying query languages for RDF streamsOn unifying query languages for RDF streams
On unifying query languages for RDF streamsDaniele Dell'Aglio
 
Dynamic Load-balancing On Graphics Processors
Dynamic Load-balancing On Graphics ProcessorsDynamic Load-balancing On Graphics Processors
Dynamic Load-balancing On Graphics Processorsdaced
 
Kernel Recipes 2013 - Nftables, what motivations and what solutions
Kernel Recipes 2013 - Nftables, what motivations and what solutionsKernel Recipes 2013 - Nftables, what motivations and what solutions
Kernel Recipes 2013 - Nftables, what motivations and what solutionsAnne Nicolas
 
Ai meetup Neural machine translation updated
Ai meetup Neural machine translation updatedAi meetup Neural machine translation updated
Ai meetup Neural machine translation updated2040.io
 
Xdp and ebpf_maps
Xdp and ebpf_mapsXdp and ebpf_maps
Xdp and ebpf_mapslcplcp1
 

Tendances (17)

Serialization in Go
Serialization in GoSerialization in Go
Serialization in Go
 
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
 
sss
ssssss
sss
 
Sockets and Socket-Buffer
Sockets and Socket-BufferSockets and Socket-Buffer
Sockets and Socket-Buffer
 
The linux networking architecture
The linux networking architectureThe linux networking architecture
The linux networking architecture
 
defense
defensedefense
defense
 
27.2.10 lab extract an executable from a pcap
27.2.10 lab   extract an executable from a pcap27.2.10 lab   extract an executable from a pcap
27.2.10 lab extract an executable from a pcap
 
2009 11 06 3gpp Ietf Ipv6 Shanghai Nat64
2009 11 06 3gpp Ietf Ipv6 Shanghai Nat642009 11 06 3gpp Ietf Ipv6 Shanghai Nat64
2009 11 06 3gpp Ietf Ipv6 Shanghai Nat64
 
Tutorial of SF-TAP Flow Abstractor
Tutorial of SF-TAP Flow AbstractorTutorial of SF-TAP Flow Abstractor
Tutorial of SF-TAP Flow Abstractor
 
27.1.5 lab convert data into a universal format
27.1.5 lab   convert data into a universal format27.1.5 lab   convert data into a universal format
27.1.5 lab convert data into a universal format
 
SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)
SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)
SF-TAP: Scalable and Flexible Traffic Analysis Platform (USENIX LISA 2015)
 
On unifying query languages for RDF streams
On unifying query languages for RDF streamsOn unifying query languages for RDF streams
On unifying query languages for RDF streams
 
Dynamic Load-balancing On Graphics Processors
Dynamic Load-balancing On Graphics ProcessorsDynamic Load-balancing On Graphics Processors
Dynamic Load-balancing On Graphics Processors
 
Kernel Recipes 2013 - Nftables, what motivations and what solutions
Kernel Recipes 2013 - Nftables, what motivations and what solutionsKernel Recipes 2013 - Nftables, what motivations and what solutions
Kernel Recipes 2013 - Nftables, what motivations and what solutions
 
Debug generic process
Debug generic processDebug generic process
Debug generic process
 
Ai meetup Neural machine translation updated
Ai meetup Neural machine translation updatedAi meetup Neural machine translation updated
Ai meetup Neural machine translation updated
 
Xdp and ebpf_maps
Xdp and ebpf_mapsXdp and ebpf_maps
Xdp and ebpf_maps
 

En vedette

Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...
Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...
Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...Paulo Pinheiro
 
Querying Linked Data with SPARQL
Querying Linked Data with SPARQLQuerying Linked Data with SPARQL
Querying Linked Data with SPARQLOlaf Hartig
 
Contextual Data Collection for Smart Cities
Contextual Data Collection for Smart CitiesContextual Data Collection for Smart Cities
Contextual Data Collection for Smart CitiesHenrique O. Santos
 
Semantically enhanced quality assurance in the jurion business use case
Semantically enhanced quality assurance in the jurion  business use caseSemantically enhanced quality assurance in the jurion  business use case
Semantically enhanced quality assurance in the jurion business use caseDimitris Kontokostas
 
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
 
TEDx Navesink 2015: to be AND not to be - Quantum Intelligence
TEDx Navesink 2015: to be AND not to be - Quantum IntelligenceTEDx Navesink 2015: to be AND not to be - Quantum Intelligence
TEDx Navesink 2015: to be AND not to be - Quantum IntelligenceLora Aroyo
 
CrowdTruth @VU Faculty Colloquium (June 2015)
CrowdTruth @VU Faculty Colloquium (June 2015)CrowdTruth @VU Faculty Colloquium (June 2015)
CrowdTruth @VU Faculty Colloquium (June 2015)Lora Aroyo
 
Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...
Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...
Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...Lora Aroyo
 
Semantic Support for Complex Ecosystem Research Environments
Semantic Support for Complex Ecosystem Research EnvironmentsSemantic Support for Complex Ecosystem Research Environments
Semantic Support for Complex Ecosystem Research EnvironmentsHenrique O. Santos
 

En vedette (12)

VOLT - ESWC 2016
VOLT - ESWC 2016VOLT - ESWC 2016
VOLT - ESWC 2016
 
Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...
Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...
Human-Aware Sensor Network Ontology: Semantic Support for Empirical Data Coll...
 
Querying Linked Data with SPARQL
Querying Linked Data with SPARQLQuerying Linked Data with SPARQL
Querying Linked Data with SPARQL
 
Assessing the performance of RDF Engines: Discussing RDF Benchmarks
Assessing the performance of RDF Engines: Discussing RDF Benchmarks Assessing the performance of RDF Engines: Discussing RDF Benchmarks
Assessing the performance of RDF Engines: Discussing RDF Benchmarks
 
Contextual Data Collection for Smart Cities
Contextual Data Collection for Smart CitiesContextual Data Collection for Smart Cities
Contextual Data Collection for Smart Cities
 
Semantically enhanced quality assurance in the jurion business use case
Semantically enhanced quality assurance in the jurion  business use caseSemantically enhanced quality assurance in the jurion  business use case
Semantically enhanced quality assurance in the jurion business use case
 
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
 
TEDx Navesink 2015: to be AND not to be - Quantum Intelligence
TEDx Navesink 2015: to be AND not to be - Quantum IntelligenceTEDx Navesink 2015: to be AND not to be - Quantum Intelligence
TEDx Navesink 2015: to be AND not to be - Quantum Intelligence
 
CrowdTruth @VU Faculty Colloquium (June 2015)
CrowdTruth @VU Faculty Colloquium (June 2015)CrowdTruth @VU Faculty Colloquium (June 2015)
CrowdTruth @VU Faculty Colloquium (June 2015)
 
Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...
Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...
Crowds & Niches Teaching Machines to Diagnose: NLeSC Kick off eHumanities pr...
 
Wither OWL
Wither OWLWither OWL
Wither OWL
 
Semantic Support for Complex Ecosystem Research Environments
Semantic Support for Complex Ecosystem Research EnvironmentsSemantic Support for Complex Ecosystem Research Environments
Semantic Support for Complex Ecosystem Research Environments
 

Similaire à cyclades eswc2016

Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked DataRuben Verborgh
 
Data correlation using PySpark and HDFS
Data correlation using PySpark and HDFSData correlation using PySpark and HDFS
Data correlation using PySpark and HDFSJohn Conley
 
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko GlobalLogic Ukraine
 
LF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecases
LF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecasesLF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecases
LF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecasesLF_OpenvSwitch
 
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014Chen-en Lu
 
New lessons in connection management
New lessons in connection managementNew lessons in connection management
New lessons in connection managementToon Koppelaars
 
Consistent Resource Scheduling and QoS management
Consistent Resource Scheduling and QoS managementConsistent Resource Scheduling and QoS management
Consistent Resource Scheduling and QoS managementARCCN
 
Querying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsQuerying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsRuben Verborgh
 
Experiences building a distributed shared log on RADOS - Noah Watkins
Experiences building a distributed shared log on RADOS - Noah WatkinsExperiences building a distributed shared log on RADOS - Noah Watkins
Experiences building a distributed shared log on RADOS - Noah WatkinsCeph Community
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kevin Lynch
 
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using KurentoFIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using KurentoFIWARE
 
Moolle fan-out control for scalable distributed data stores
Moolle  fan-out control for scalable distributed data storesMoolle  fan-out control for scalable distributed data stores
Moolle fan-out control for scalable distributed data storesSungJu Cho
 
IPLC Analytic Dashboard - Mohd Rizal bin Mohd Ramly
IPLC Analytic Dashboard - Mohd Rizal bin Mohd RamlyIPLC Analytic Dashboard - Mohd Rizal bin Mohd Ramly
IPLC Analytic Dashboard - Mohd Rizal bin Mohd RamlyMyNOG
 
RDF Stream Processing: Let's React
RDF Stream Processing: Let's ReactRDF Stream Processing: Let's React
RDF Stream Processing: Let's ReactJean-Paul Calbimonte
 
Fast Streaming into Clickhouse with Apache Pulsar
Fast Streaming into Clickhouse with Apache PulsarFast Streaming into Clickhouse with Apache Pulsar
Fast Streaming into Clickhouse with Apache PulsarTimothy Spann
 
SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3
SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3
SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3Splunk
 

Similaire à cyclades eswc2016 (20)

Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked Data
 
Data correlation using PySpark and HDFS
Data correlation using PySpark and HDFSData correlation using PySpark and HDFS
Data correlation using PySpark and HDFS
 
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
Stream Data Processing at Big Data Landscape by Oleksandr Fedirko
 
LF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecases
LF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecasesLF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecases
LF_OVS_17_OVS/OVS-DPDK connection tracking for Mobile usecases
 
TransPAC3/ACE Measurement & PerfSONAR Update
TransPAC3/ACE Measurement & PerfSONAR UpdateTransPAC3/ACE Measurement & PerfSONAR Update
TransPAC3/ACE Measurement & PerfSONAR Update
 
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
 
New lessons in connection management
New lessons in connection managementNew lessons in connection management
New lessons in connection management
 
Consistent Resource Scheduling and QoS management
Consistent Resource Scheduling and QoS managementConsistent Resource Scheduling and QoS management
Consistent Resource Scheduling and QoS management
 
Querying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsQuerying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern Fragments
 
Experiences building a distributed shared log on RADOS - Noah Watkins
Experiences building a distributed shared log on RADOS - Noah WatkinsExperiences building a distributed shared log on RADOS - Noah Watkins
Experiences building a distributed shared log on RADOS - Noah Watkins
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
 
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using KurentoFIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
 
SDN approach.pptx
SDN approach.pptxSDN approach.pptx
SDN approach.pptx
 
OSI Layers
OSI LayersOSI Layers
OSI Layers
 
Moolle fan-out control for scalable distributed data stores
Moolle  fan-out control for scalable distributed data storesMoolle  fan-out control for scalable distributed data stores
Moolle fan-out control for scalable distributed data stores
 
IPLC Analytic Dashboard - Mohd Rizal bin Mohd Ramly
IPLC Analytic Dashboard - Mohd Rizal bin Mohd RamlyIPLC Analytic Dashboard - Mohd Rizal bin Mohd Ramly
IPLC Analytic Dashboard - Mohd Rizal bin Mohd Ramly
 
Polyraptor
PolyraptorPolyraptor
Polyraptor
 
RDF Stream Processing: Let's React
RDF Stream Processing: Let's ReactRDF Stream Processing: Let's React
RDF Stream Processing: Let's React
 
Fast Streaming into Clickhouse with Apache Pulsar
Fast Streaming into Clickhouse with Apache PulsarFast Streaming into Clickhouse with Apache Pulsar
Fast Streaming into Clickhouse with Apache Pulsar
 
SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3
SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3
SplunkSummit 2015 - Update on Splunk Enterprise 6.3 & Hunk 6.3
 

Dernier

❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.Nitya salvi
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoSérgio Sacani
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)PraveenaKalaiselvan1
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfSumit Kumar yadav
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticssakshisoni2385
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRDelhi Call girls
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfrohankumarsinghrore1
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...ssifa0344
 
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡anilsa9823
 
Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfSumit Kumar yadav
 
VIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PVIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PPRINCE C P
 
DIFFERENCE IN BACK CROSS AND TEST CROSS
DIFFERENCE IN  BACK CROSS AND TEST CROSSDIFFERENCE IN  BACK CROSS AND TEST CROSS
DIFFERENCE IN BACK CROSS AND TEST CROSSLeenakshiTyagi
 
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencyHire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencySheetal Arora
 
Biopesticide (2).pptx .This slides helps to know the different types of biop...
Biopesticide (2).pptx  .This slides helps to know the different types of biop...Biopesticide (2).pptx  .This slides helps to know the different types of biop...
Biopesticide (2).pptx .This slides helps to know the different types of biop...RohitNehra6
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyDrAnita Sharma
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...Sérgio Sacani
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptxanandsmhk
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​kaibalyasahoo82800
 

Dernier (20)

❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)
 
CELL -Structural and Functional unit of life.pdf
CELL -Structural and Functional unit of life.pdfCELL -Structural and Functional unit of life.pdf
CELL -Structural and Functional unit of life.pdf
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdf
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdf
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
 
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
 
Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdf
 
VIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PVIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C P
 
DIFFERENCE IN BACK CROSS AND TEST CROSS
DIFFERENCE IN  BACK CROSS AND TEST CROSSDIFFERENCE IN  BACK CROSS AND TEST CROSS
DIFFERENCE IN BACK CROSS AND TEST CROSS
 
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencyHire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
 
Biopesticide (2).pptx .This slides helps to know the different types of biop...
Biopesticide (2).pptx  .This slides helps to know the different types of biop...Biopesticide (2).pptx  .This slides helps to know the different types of biop...
Biopesticide (2).pptx .This slides helps to know the different types of biop...
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomology
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
 
The Philosophy of Science
The Philosophy of ScienceThe Philosophy of Science
The Philosophy of Science
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​
 

cyclades eswc2016

  • 1. Pauline Folz, Hala Skaf-Molli & Pascal Molli ESWC 2016 - May 2016 - Heraklion CyCLaDEs: A Decentralized Cache for Triple Pattern Fragments
  • 2. 1[1] R. Verborgh and al. Querying Datasets on the Web with High Availability. In 13th International Semantic Web Conference (ISWC 2014), pages 180-196, 2014. LDF clients execute SPARQL queries over LDF servers [1] ● Minimize server side processing to simple triple pattern fragment queries (TPF) ● Joins executed on clients side Context
  • 3. 2 Caches play an important role in the performances of LDF server: ● Caches contain TPF, TPF are more likely to be reused locally and across clients Context [1] R. Verborgh and al. Querying Datasets on the Web with High Availability. In 13th International Semantic Web Conference (ISWC 2014), pages 180-196, 2014.
  • 4. Triple Pattern Fragment & Caches 3 LDF Server HTTP Cache LDF Client 1 Local Cache LDF Client n Local Cache HTTP calls HTTP calls HTTP calls Data provider Data consumer DBpedia
  • 5. LDF Client n Local Cache HTTP calls LDF Client 1 Local Cache HTTP calls Triple Pattern Fragment & Caches 3 LDF Server HTTP Cache HTTP calls SELECT ?author ?book WHERE { ?book rdf:label dbo:Book; dbo:author ?author } LIMIT 100 DBpedia
  • 6. LDF Client n Local Cache Triple Pattern Fragment & Caches 3 LDF Server HTTP Cache HTTP calls 1 2 3 0 ?book http://www.w3.org/1999/02/22-rdf- syntaxns#type http:.../ontology/Book 1 ?book http:.../ontology/author ?author 2 http:.../resource/%22...And Ladies of the Club%22 http:.../ontology/author ?author 3 http:.../resource/%22A%22 Is for Alibi http:.../ontology/author ?author 4 http:.../resource/%22B%22 Is for Burglar http:.../ontology/author ?author 152 HTTP calls HTTP calls LDF Client 1 Local Cache HTTP calls SELECT ?author ?book WHERE { ?book rdf:label dbo:Book; dbo:author ?author } LIMIT 100 DBpedia
  • 7. What happens if clients collaborate? United Federation of Data Consumers
  • 8. A local cache of a client can be shared with other clients ● Reduce the load on the server Challenges: ● Network with 1 million of clients 5 What if clients collaborate? How a client can find a TPF quickly in another client cache? LDF Server HTTP Cache LDF Client 1 Local Cache LDF Client n Local Cache Data provider Data consumer HTTP calls HTTP calls HTTP calls
  • 9. DHT: distributes the cache among participants [2] + Lookup(TPF): finds TPF if it exists! - 1 query → 20,000 calls → 20,000 log(n) hops, n: number of peers 6 [2] M. El Dick and al. Flower-cdn: A hybrid p2p overlay for efficient query processing in cdn. In Proceedings of the 12th International Conference on Extending Database Technology: Advances in Database Technology, 2009. ACM. 2 3 4 5 6 7 Peer 16 Peer 1 Peer 11 Peer 22 friend[3] friend[2] friend[1] 0 1 Related Works
  • 10. Behavioral Cache: connects a fixed size of similar nodes [3] + Zero-hop lookup latency - Not sure to find a TPF ~ Experimented with browsing histories What if we experiment behavioral cache with queries? 7 [3] D. Frey and al. Behave: Behavioral cache for web content. In Distributed Applications and Interoperable System, 2014. Related Works
  • 11. Assumption: Clients which performed similar queries in the past will likely perform similar queries in the future 8 CyCLaDEs Approach
  • 12. Assumption: Clients which performed similar queries in the past will likely perform similar queries in the future Approach: ● Each client builds a fixed-size of best similar neighbors with zero-hop latency 8 CyCLaDEs Approach
  • 13. Assumption: Clients which performed similar queries in the past will likely perform similar queries in the future Approach: ● Each client builds a fixed-size of best similar neighbors with zero-hop latency ● For each call 1) check local cache 2) check neighbors’ cache in parallel 3) go to the server 8 CyCLaDEs Approach
  • 14. Assumption: Clients which performed similar queries in the past will likely perform similar queries in the future Approach: ● Each client builds a fixed-size of best similar neighbors with zero-hop latency ● For each call 1) check local cache 2) check neighbors’ cache in parallel 3) go to the server 8 How many neighbors cache hits can we get? CyCLaDEs Approach
  • 15. Many clients access LDF server concurrently, but clients do not collaborate. 9 LDF: Approach Overview HTTP Cache DrugBankDBpedia LDF Server c1 c2 c4 c7 c8 c9 c5 c6c3
  • 16. c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server CyCLaDEs: Approach Overview Connect nodes through Random Peer Sampling (RPS): ● Each node maintains a partial view on the entire network ● The view contains a random subset of network nodes 10
  • 17. c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server CyCLaDEs: Approach Overview Connect nodes through Random Peer Sampling (RPS): ● Each node maintains a partial view on the entire network ● The view contains a random subset of network nodes Shuffle phases: renew periodically neighbors to handle churn and avoid network partition. 10
  • 18. Connect nodes through Random Peer Sampling (RPS): ● Each node maintains a partial view on the entire network ● The view contains a random subset of network nodes Shuffle phases: renew periodically neighbors to handle churn and avoid network partition. → We use Cyclon [4] for RPS. c1 c2 c4 c3 c5 c6 c7 c8 c9 [4] S. Voulgaris and al. Cyclon: Inexpensive membership management for unstructured p2p overlays. Journal of Network and Systems Management, 2005. HTTP Cache DrugBankDBpedia LDF Server CyCLaDEs: Approach Overview 10
  • 19. RPS overlay network ensures connectivity among all clients. c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c1 c2 c4 c3 c5 c6 c7 c8 c9 CyCLaDEs: Approach Overview 11
  • 20. RPS overlay network ensures connectivity among all clients. C6 is connected to C3: ● C6 → DBpedia ● C3 → DrugBank ● C6 is not similar to C3 CyCLaDEs: Approach Overview c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c1 c2 c4 c3 c5 c6 c7 c8 c9 11
  • 21. RPS overlay network ensures connectivity among all clients. C6 is connected to C3: ● C6 → DBpedia ● C3 → DrugBank ● C6 is not similar to C3 Need a second overlay to handle similarity as proposed in Gossple [5] . [5] M. Bertier and al. The gossple anonymous social network. In 11th International Middleware Conference Middleware 2010 - ACM/IFIP/USENIX, volume 6452 of LNCS, pages 191, 2010. CyCLaDEs: Approach Overview c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c1 c2 c4 c3 c5 c6 c7 c8 c9 11
  • 22. c1 c2 c4 c3 c6 c7 c8 c9 Cluster Overlay Network (CON): ● Each node has a profile based on the history of executed queries CyCLaDEs: Approach Overview c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c5 12
  • 23. Cluster Overlay Network (CON): ● Each node has a profile based on the history of executed queries Shuffle phases allow to obtain better neighbors. Each node ranks and selects best neighbors based on similarity of profiles. CyCLaDEs: Approach Overview c1 c2 c4 c3 c6 c7 c8 c9 c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c5 12
  • 24. Executing queries produces a stream of TPF, cache is a window on this stream. 13 How to profile nodes? Profile = summary of the recent past = frequency of the k last recently used predicates
  • 25. 14 Node profile - Algorithm
  • 26. Size of the profile 14 Node profile - Algorithm
  • 27. Stream of triples 14 Node profile - Algorithm
  • 28. Timestamp of node 14 Node profile - Algorithm
  • 29. For each predicate in the stream 14 Node profile - Algorithm
  • 30. If predicate exist: 1) Increment frequency by 1 2) Update timestamp 14 Node profile - Algorithm
  • 31. If predicate does not exist: 1) Insert predicate in profile a) With frequency = 1 b) Current timestamp 14 Node profile - Algorithm
  • 32. If Pr > w: Remove the oldest entry 14 Node profile - Algorithm
  • 33. Computing Profile P1 1 1 15 P2P1 P2 P3 P2 P2 P3 P3 P4 1 2 3 4 5 6 7 8 9 Predicate Frequency Timestamp Node profile K = 3
  • 34. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 1 2 1 2 3 4 5 6 7 8 9 K = 3
  • 35. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 1 2 P3 1 3 1 2 3 4 5 6 7 8 9 K = 3
  • 36. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 2 4 P3 1 3 1 2 3 4 5 6 7 8 9 K = 3
  • 37. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 3 5 P3 1 3 1 2 3 4 5 6 7 8 9 K = 3
  • 38. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 4 6 P3 1 3 1 2 3 4 5 6 7 8 9 K = 3
  • 39. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 4 6 P3 2 7 1 2 3 4 5 6 7 8 9 K = 3
  • 40. Computing Profile P1 1 1 Predicate Frequency Timestamp 15 Node profile P2P1 P2 P3 P2 P2 P3 P3 P4 P2 4 6 P3 3 8 1 2 3 4 5 6 7 8 9 K = 3
  • 41. Computing Profile P4 1 9 Predicate Frequency Timestamp 15 Node profile P2P1 P4P2 P3P3P3 P2 P2 P2 4 6 P3 3 8 1 2 3 4 5 6 7 8 9 K = 3
  • 42. During ranking nodes are compared thank to their profile. Nodes are compared with the generalized Jaccard similarity coefficient. P1 P2 P3 C5 10 6 40 C9 10 20 5 C8 10 2 2 ● J(C5,C9) = (10+6+5)/(10+20+40) = 0.3 ● J(C5,C8) = 14/56 = 0.25 16 How to compare neighbors?
  • 43. For C5: C9 is more similar than C8 For C6: C8 is more similar than C9 CON RPS C5 shuffling with C6 : #RPS=2, #CON=4 After Shuffling: RPS and CON updated
  • 44. For C5: C9 is more similar than C8 For C6: C8 is more similar than C9 CON RPS C5 shuffling with C6 : #RPS=2, #CON=4 After Shuffling: RPS and CON updated
  • 45. c1 c2 c4 c3 c6 c7 c8 c9 c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c5 C1 executes query Q1. For each triple pattern query, try to resolve pattern in: 1) Local cache 2) Neighborhood cache 3) HTTP cache 4) LDF Server Queries with CyCLaDEs 1 18
  • 46. c1 c2 c4 c3 c6 c7 c8 c9 c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c5 C1 executes query Q1. For each triple pattern query, try to resolve pattern in: 1) Local cache 2) Neighborhood cache 3) HTTP cache 4) LDF Server Queries with CyCLaDEs 1 2 2 2 18
  • 47. c1 c2 c4 c3 c6 c7 c8 c9 c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c5 C1 executes query Q1. For each triple pattern query, try to resolve pattern in: 1) Local cache 2) Neighborhood cache 3) HTTP cache 4) LDF Server Queries with CyCLaDEs 1 2 2 2 3 18
  • 48. c1 c2 c4 c3 c6 c7 c8 c9 c1 c2 c4 c3 c5 c6 c7 c8 c9 HTTP Cache DrugBankDBpedia LDF Server c5 C1 executes query Q1. For each triple pattern query, try to resolve pattern in: 1) Local cache 2) Neighborhood cache 3) HTTP cache 4) LDF Server Queries with CyCLaDEs 1 2 2 2 3 4 18
  • 49. Berlin SPARQL Benchmark (BSBM) [7] chosen for simulating Web applications. One LDF Server with one classic HTTP cache hosting BSBM datasets. A network of extended LDF clients* running a query mix of BSBM queries. 19 * https://github.com/pfolz/cyclades Experiments [7] C. Bizer and A. Schultz. The berlin sparql benchmark. International Journal on Semantic Web and Information Systems, 2009. LDF Server HTTP Cache LDF Client 1 Local Cache BSBM 1M BSBM 10M LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client Local Cache BSBM 100M
  • 50. Each client has a query mix of 25 queries generated from 12 templates. ● Shuffling phases occur every 10 seconds ● One warmup round followed by one real round 20 LDF Server HTTP Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client Local Cache Experiments - Parameters BSBM 1M BSBM 10M BSBM 100M
  • 51. 21 ~ 20% neighbors cache hit-rate, whatever the number of clients BSBM 1M, cache = 1000, profile size = 10 10 clients: RPS = 4, CON = 9 50 clients: RPS = 6, CON = 15 100 clients: RPS = 7, CON = 20 Without CyCLaDEs With CyCLaDEs
  • 52. Behavioral cache better resists than local cache 22 10 clients, RPS = 4, CON = 9, cache = 1000
  • 53. Two communities access 2 different BSBM datasets on the same server. Nodes share the same RPS. 23 LDF Server HTTP Cache LDF Client 1 Local Cache BSBM 1 BSBM 2 LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client 1 Local Cache LDF Client Local Cache LDF Client Local Cache LDF Client Local Cache LDF Client Local Cache LDF Client Local Cache LDF Client Local Cache LDF Client Local Cache Will CyCLaDEs profiles detect communities? CyCLaDEs with 2 Communities
  • 54. In CON overlay, CyCLaDEs builds two distinct communities BSBM1 and BSBM2 24 Profile = 5 Profile = 30 2 BSBM 1M datasets, 50 clients per data set, cache = 1000
  • 55. CyCLaDEs builds a behavioral decentralized cache for LDF clients. CyCLaDEs reduces calls to the server in the context of Web applications. 23 Conclusion Towards a Federation of Data Consumers
  • 56. Measure the impact on execution time. CyCLaDEs brings the data to the queries. Bring queries to the data. 24 Future Works United Federation of Data Consumers
  • 57. Pauline Folz, Hala Skaf-Molli & Pascal Molli ESWC 2016 - May 2016 - Heraklion CyCLaDEs: A Decentralized Cache for Triple Pattern Fragments
  • 58. Size of the profile does not impact the number of calls handled by neighborhood, queries use at most 16 differents predicates at once 2 BSBM 1M dataset, 50 clients per data set, cache = 1000
  • 59. BSBM 10M, 10 clients, RPS = 4, CON = 9, profile size = 10 Percentage of calls handled by the neighborhood is related to cache size. With a larger cache size we have a bigger decentralized cache Cache size
  • 60. Query load - Is there a hotspot? Most of the clients handled around 10,000 cache queries and a few handled more than 100,000 cache queries
  • 61. Query distribution ● Each client has its own query mix ● Each query mix: ○ is generated randomly ○ has 25 queries based on 12 templates ● Query mix: ○ is the same for both rounds ○ is executed in the same order for both rounds Query Distribution
  • 62. Shuffle ● Shuffle phases are executed each 10 seconds ● In theory shuffle phases do not impact query processing ○ In implementation, query processing can be interrupted because NodeJs is mono-thread ● Shuffle phase for BSBM 1M: ○ 10 clients ≈ 14 shuffles / client ○ 50 clients ≈ 80 shuffles / client ○ 100 clients ≈ 85 shuffles / client Shuffle
  • 63. Experiment ● 2 rounds: ○ Warmup → Bootstrap RPS, CON and HTTP cache ○ Real → measures are done ● All clients execute the same query mix for both rounds ● All queries are executed in the same order Experiment
  • 64. Overlay size ● Random Peer Sampling: ○ RPS view size is Log(N), where N is the number of peers in the network ● Cluster Overlay Network: ○ CON view size has been chosen following the guidelines of [5] [5] M. Bertier and al. The gossple anonymous social network. In 11th International Middleware Conference Middleware 2010 - ACM/IFIP/USENIX, volume 6452 of LNCS, pages 191{211. Springer, 2010. Overlay size