Graph Algorithms: Practical Examples in Apache Spark & Neo4j
by Mark Needham & Amy E. Hodler
A solid centrality/pathfinding primer wrapped in a vendor demo — read the first half, skip the tooling.
- Status
- Read · February 2022
- Bought
- February 12, 2022
- For
- Engineers wiring up a knowledge graph · Anyone reaching for PageRank or community detection · Neo4j / Spark users who want intuition, not just API docs
Where it earned its place
The one-paragraph verdict
The book does one thing very well: it builds intuition for the algorithm families — pathfinding, centrality, community detection — with clear diagrams and worked examples that don’t assume a graph-theory background. Reviewers consistently praise that first half, and they’re right. Where it falls down is the back end: chapter 7 onward turns into “Graph Algorithms in Practice,” which is really a vendor walkthrough, and the code has rotted against newer Neo4j versions with dead repo links to match. It also quietly assumes you already know Cypher and Spark. Treat it as a concepts book that happens to ship runnable snippets, not the reverse.
Who should read it
Read it if you’re standing up a knowledge graph and need to reason about which algorithm fits which question — “what’s important here” (centrality) versus “what clusters together” (community detection). Skip it if you want a rigorous algorithms text (this isn’t CLRS) or an up-to-date Neo4j/Spark manual; the official docs have long since overtaken it.
Where it earned its place
The centrality chapter is exactly what I leaned on for correlation-first blame propagation (PageRank) in the debug-agent — ranking which service in a failing dependency graph is most likely the culprit. The same intuition fed how I think about traversal and weighting in the FalkorDB knowledge graph. The math came from elsewhere; this book made the choices obvious.
Skip it if…
You want depth over breadth, or you’re buying it as a Neo4j tutorial — the practical chapters are dated and partly broken, and you’ll spend more time fixing examples than learning from them.
[Graph Algorithms on O'Reilly]