Efficient Query answering in probabilistic RDF graphs
1. get the Query Plan
2. subtract the search data volume(prunning)
3. implementation techniques
The framework for probabilistic RDF query answering:
Procedure Pro_RDF_QA_Framework{
Input: a probablistic RDF graph databse G, a query graph q, and a probabilistic threshold α
Output: subgraphs g from G that match with q with probability Pr{g}>α
(1)construct an index ζfor synopses of subgraphs g in G
//indexing phase
(2)for any RDF query with query graph q
(3) obtain a good query plan via estimations on q
//query pre-processing phase
(4) perform structural and probabilistic pruning while traversing index ζ
//pruning phase
(5) combine and refine candidate subgraphs
// refinement phase
(6) return the matching subgraphs g
}
Query anwsering in the probabilistic RDF graph database
Procedure Prob_RDF_Processing
Input: a probabilitic RDF graph database G, a tree indexζover G, a query graph q with some constrains and a probabilistic thresholdα
Output: subgraphs g that match with q with confidenceα
(1)pre-process q to obtain the query plan, QPlan //pre-processing phase
(2)let QS be a set of vertices in q with user-specified labels
(3) obtain synopses and parameters for each qi ∈QS, and initialize an empty candidate list cand(qi) for each qi
(4) for each entry Na in root(ζ)
(5) for each qi ∈ QS
(6) if Na cannot be pruned by q via label/degree/counter/probabilistic pruning
(7) add Na to cand(qi)
(8)for (qi,qj) ∈QPlan
(9) apply graph distance pruning to filter out false alarms of pairwise node
Between cand(qi) and cand(qj), and obtain candidate set cand(qiqj)
(10)while (cand(.)contains nodes)
(11) obtain children nodes/vertices via indexζfor each Ni∈∪i cand(qi)
(12) for each(Ni,Nj) ∈cand(qiqj)
(13) use structural/probabilistic pruning to prune (Na,Nb) for Na ∈Ni and Nb∈ Nj
(14) add (Na Nb)to candnew(qi qj)if it is not pruned
(15) cand(qi qj)=candnew(qi qj)
(16)join candidate lists among cand(qi qj) for (qi qj) in QPlan
(17)refine candidate subgraphs in the join results and return the actual answers
}