Top-K nearest keyword search on large graphs
read more
Citations
G-Tree: An Efficient and Scalable Index for Spatial Search on Road Networks
Keyword-aware continuous kNN query on road networks
Exact Top-k Nearest Keyword Search in Large Networks
Real time personalized search on social networks
Keyword Search over Distributed Graphs with Compressed Signature
References
Query Processing Using Distance Oracles for Spatial Networks
Multi-approximate-keyword routing in GIS data
Nearest keyword search in XML documents
Instance optimal query processing in spatial networks
Partitioned multi-indexing: bringing order to social search
Related Papers (5)
Frequently Asked Questions (16)
Q2. What is the key operation in answering a k-NK query on a graph?
2With the tree distance formulation, the key operation in answering a k-NK query on a graph is to answer the k-NK query on a tree.
Q3. How does global storage reduce the index size of pivot?
By keeping a global candidate list and removing duplicate index items, global storage reduces the index size of pivot by 61% on DBLP and 55% on FLARN.
Q4. How can the authors solve the k-NK problem in a graph?
Suppose the authors have an algorithm to compute RT on a tree T , the authors can solve the k-NK problem in a graph by merging RTi for each tree Ti, 1 ≤ i ≤ r.
Q5. How can the authors reduce a distance oracle to a set of trees?
As the authors transform a distance oracle on a graph into a set of shortest path trees, the original k-NK query on the graph can be reduced to answering the k-NK query on a set of trees.
Q6. What is the way to calculate cand(v)?
Since CT(λ) keeps the structural information of all keyword nodes in T , it is sufficient to search only on CT(λ) to calculate candλ(v).
Q7. How does the Algorithm 7 construct a distance preserving balanced tree?
2THEOREM 5. Given a tree T (V, E), Algorithm 7 constructs a distance preserving balanced tree DT(T ) for T using O(|V | · log |V |) time and O(|V |) space.
Q8. Why is the index size of pivot longer on FLARN than on DBLP?
This is because the complexity of pivot grows linearly with the tree depth,and the larger diameter of FLARN leads to a larger tree depth.
Q9. What is the definition of a distance preserving balanced tree?
In order to reduce the average depth of nodes to optimize both index space and query processing time, the authors introduce a new structure called distance preserving balanced tree for T (V, E), denoted as DT(T ).
Q10. How do the authors calculate cand(v) for a tree?
For each node v traversed, the authors merge candλ(v) into that of its parent node u by adding a distance dist(u, v) to the list candλ(v) (line 3-5).
Q11. What is the second attempt to precompute k nearest nodes?
Their second attempt is that, for each node v on the tree T (V, E) and each keyword λ, the authors precompute its k nearest nodes that contain λ.
Q12. What is the EE(q) operator for the path from u to u?
Let (u, u′) = EEλ(q), since ENλ(q) is on the path from u to u′ on the tree T , the path from ENλ(q) to any keyword node in T will go through either u or u′.
Q13. How do the authors compute the candidate list for a tree?
Given a compact tree CT(λ) for a tree T and a keyword λ, the authors need to compute the candidate list candλ(v) for every node v on CT(λ).
Q14. How do the authors calculate candidate list cand(p)?
For each pivot p of v as well as v itself, the authors calculate distT (p, v) on the original tree T , and add the element v : distT (p, v) to the candidate list candλ(p) (line 4-5).
Q15. What is the first traversal on CT()?
The first traversal on CT(λ) is a bottom-up one, such that the candidate list on each node is propagated to all its ancestors on CT(λ).
Q16. What is the difference between tree distance and witness distance?
Since a tree contains more structural information than a star, using tree distance will be more accurate than using witness distance for estimating the distance of two nodes.