How and Why Netflix Built a Real-Time Distributed Graph: Part 3 — Querying the graph with gRPC…
Netflix developed a Real-Time Distributed Graph (RDG) with a gRPC execution API to efficiently query a vast, evolving graph, optimizing for low latency and high throughput by employing breadth-first traversal, asynchronous execution, selective caching, and adaptive concurrency control.
MAIN POINTS
- The RDG efficiently handles diverse query patterns, from shallow-wide to deep-narrow, with sub-100ms latency.
- Breadth-first traversal and async execution reduce latency and resource usage, enabling high throughput.
- Selective caching of stable data improves efficiency, avoiding unnecessary storage calls.
- Adaptive concurrency control maintains performance under varying loads by dynamically adjusting limits.
TAKEAWAYS
- Asynchronous composition significantly reduces infrastructure costs by minimizing idle thread time.
- A layered filtering hierarchy allows flexible query customization without code changes.
- Selective caching based on data volatility achieves high cache hit rates and reduces latency.
- Breadth-first traversal and parallel execution optimize resource usage and maintain low latency.