PART TA: Bridging the Gap Between Graph Traversal and Text Search

Social-Textual Query Processing on Graph Database Systems

2018-01-01
Oshini Goonetilleke, Timos Sellis, Xiuzhen Zhang
Summary
Problem
Method
Results
Takeaways
Abstract

The paper introduces a Top-k Social-Textual Ranking Query (kSTRQ) for graph databases, combining social proximity (shortest path) with textual relevance (tf-idf). The authors propose the PART TA algorithm, which integrates graph partitioning with the Threshold Algorithm (TA) to achieve SOTA performance on large-scale property graphs.

TL;DR

Processing queries that involve both social "closeness" and keyword relevance is a high-cost operation in modern graph databases. This paper introduces kSTRQ (Top-k Social-Textual Ranking Query) and a novel algorithm, PART TA, which leverages graph partitioning to prune the search space. By localized execution of the Threshold Algorithm across partitions, it achieves up to a 76% performance boost over traditional baselines.

The "Second-Class Citizen" Problem in Graph DBs

While graph databases (like Neo4j or Titan) excel at traversing relationships, they often treat text search as an external utility. In real-world social networks—like Twitter or LinkedIn—users aren't just looking for "anyone" mentioning a topic; they are looking for "someone close to them" mentioning it.

Current solutions are often polarized:

  • Social-First: Traverses the graph (BFS) and checks text relevance, which is slow for common keywords.
  • Text-First: Scans keyword indexes and then calculates social distances, which is computationally expensive due to repeated shortest-path calculations.
  • Existing Systems: Systems like Facebook’s Unicorn or Twitter’s EarlyBird specifically optimize for very shallow (1-2 step) neighborhoods, lacking the flexibility for deeper n-step traversals.

Methodology: Partition-Aware Thresholding

The core insight of PART TA is that users who are socially close likely reside within the same graph partition.

1. Partitioning and Indexing

The graph is decomposed using METIS (an n-way partitioning scheme). Each partition maintains its own local Lucene inverted index. This allows the system to treat each partition as a mini-graph with its own textual metadata.

2. Precomputation of Boundary Nodes

To handle cross-partition distances, the authors precompute the minimum distance from each node to the "boundary nodes" of its partition. This acts as a gateway, allowing the algorithm to estimate the cost of entering other partitions without performing a global BFS during query time.

3. The PART TA Algorithm

The algorithm manages a priority queue of partitions and users based on a linear ranking function:

Model Architecture

The algorithm starts with the "best" partition (the one most likely to contain high-scoring users) and expands users locally using a modified Threshold Algorithm (TA). It only expands a new partition if the local threshold falls below the potential score of an unvisited partition.

Experiments and Results

The authors tested PART TA on three diverse datasets: Twitter (dense social graph), AMiner (large co-authorship network), and Flickr (high-degree social network).

SOTA Comparison

  • Robustness: On larger graphs (AMiner with 1M+ nodes), PART TA was significantly more stable than Early Termination (ET) baselines, which often suffered from the high cost of shortest-path calculations.
  • Efficiency: At (equal weight to social and text), PART TA showed a 59.1% improvement over the standard TA on the Flickr dataset.

Experimental Results Comparison

Why it Works

The "Partitions Expanded" analysis reveals that for social-heavy queries ( is low), the algorithm only needs to touch a fraction of the graph. Even for text-heavy queries, it rarely needs to expand more than 50-60% of the partitions, showcasing the effectiveness of its pruning strategy.

Critical Analysis & Conclusion

PART TA provides a robust framework for multi-dimensional search in graph databases. By using partitioning as a lightweight index, it bypasses the need for heavy distance oracles which are often error-prone in practice.

Takeaway: If you are building a social recommendation engine or a personalized search tool, partitioning your graph not just for storage, but as a component of your ranking algorithm, can yield massive latency gains.

Limitations: The performance relies on the quality of the partitioning. If a graph has no clear community structure, more partitions might need to be expanded. Future work targeting "attribute-aware partitioning" (clusters based on both social links and keyword similarity) could further optimize this approach.

Find Similar Papers

Try Our Examples

  • Find recent papers that integrate full-text search directly into the storage layer of graph databases like Neo4j or ArangoDB.
  • Which paper first proposed the Threshold Algorithm (TA) for top-k aggregation, and how has it been adapted for multi-dimensional social network search?
  • Explore newer graph partitioning techniques that consider both structural topology and node attribute similarity to improve query efficiency in heterogeneous graphs.
Contents
PART TA: Bridging the Gap Between Graph Traversal and Text Search
1. TL;DR
2. The "Second-Class Citizen" Problem in Graph DBs
3. Methodology: Partition-Aware Thresholding
3.1. 1. Partitioning and Indexing
3.2. 2. Precomputation of Boundary Nodes
3.3. 3. The PART TA Algorithm
4. Experiments and Results
4.1. SOTA Comparison
4.2. Why it Works
5. Critical Analysis & Conclusion