Distributed Semantic Associations Matt Perry Maciej Janik Conrad Ibanez Motivation • Semantic Web, by its web nature is distributed • Knowledge will be stored in multiple stores, multiple ontologies • Search for semantic paths will have to include many knowledge sources Distributed ρ-path problem: Find all paths from a start node to an end node over the distributed RDF graphs Knowledge bases - ontologies border nodes Assumptions • K-hop limited ρ-path search • Entity disambiguation across KBs Problems • Search Efficiency • How to continue a search from one KB to another • When to stop a search in one KB and start it in another • How to piece together path fragments Approach KB KB Peer Peer Peer KB KB Super-Peer Peer Super-Peer Peer Super-Peer Peer KB Peer Peer KB Peer KB KB KB Border Nodes KB2 KB1 Border Node Distance Between Borders KB3 KB1 End Dist(KB1KB2, KB1KB3) = 3 Dist(KB1KB2, KB2KB3) = 1 Dist(Start, KB1KB2) = 1 Dist(End, KB1KB3) = 1 KB2 Start Query Plan Graph Borders AB AC BC ABC A B Minimum Distances C dist (AB, BC) = 4 dist (AB, AC) = 3 dist (AB, ABC) = 2 dist (BC, AC) = 5 dist (BC, ABC) = 3 dist (AC, ABC) = 2 dist (AB, AB) = 3 dist (AC, AC) = 3 dist (BC, BC) = 2 3 AB 2 3 4 ABC Basic Idea: 2 1. Add start and end node to QPG 2. Do path search (<= K) through QPG AC 3. Convert the paths to a set of queries 3 3 5 BC 2 Converting Paths To Queries Start 3 KB1/KB2 2 4 KB2/KB3 • ρ-path (Start, End, 12) • KB1 – ρ-path (Start, KB1/KB2, 6) • KB2 - ρ-path (KB1/KB2, KB2/KB3, 5) • KB3 - ρ-path (KB2/KB3, End, 7) End Super-Peer Level QPG Borders AB AC BC ABC A/SP3 B/SP2 C/SP2 Super Peer 1 A Minimum Distances B Super Peer 3 C Super Peer 2 dist (AB, BC) = 4 dist (AB, AC) = 3 dist (AB, ABC) = 2 dist (BC, AC) = 5 dist (BC, ABC) = 3 dist (AC, ABC) = 2 dist (AC, A/SP3) = 3 dist (AB, A/SP3) = 4 dist (ABC, A/SP3) = 3 dist (AC, C/SP3) = 2 dist (BC, C/SP3) = 4 dist (ABC, C/SP3) = 2 dist (AB, B/SP2) = 2 dist (BC, B/SP2) = 4 dist (ABC, B/SP2) = 5 Integration of SP graph and Peer Graph 4 A/SP3 3 2 AB B/SP2 3 4 2 5 ABC 3 0 0 4 2 SP1/SP3 3 5 AC 2 BC 2 4 0 C/SP3 SP1/SP2 Whole Process 1. Peer asks SP for Query Plan 2. SP finds endpoints and adds them to SP QPG 3. SP finds all Paths through SP QPG 4. SP converts these Paths in subquery plan requests for each SP 5. Each SP uses the process recursively on its peer-level QPG to form peer-level query plan 6. The union of the peer-level query plans is the final query plan 7. The peer then executes this plan Test sets Border 1/2/3 Team 8286 Test 3 Test 1 Agent 2054 Athlete 6988 Agent 2054 Athlete 2805 Agent 2457 Athlete 4343 Agent 2054 Agent 566 Athlete 7028 Test 2 Athlete 3108 Agent 2418 Agent 717 Team 8430 Agent 717 Athlete 6041 Agent 2215 Athlete 6778 Agent 1194 Agent 2215 Border 1/2 Athlete 2951 Team 8405 Agent 1808 Agent 1632