Book Review: Graph Databases
The book Graph Databases by Ian Robinson, Jim Webber and Emil Eifrem gives an engaging overview of Graph Databases, describing typical use cases and illustrating the syntax used to construct and query them.
Graph Databases are a form of NoSQL database and, as such, differ significantly from the ubiquitous Relational Databases. The authors discuss a variety of scenarios where a Graph Database would be a better fit than a Relational Database, showing how they are particularly well suited to data which describe relationships between entities.
Although there are a number of Graph Database implementations available, the focus of this book is on Neo4j. However, the treatment of the topic is still sufficiently general that you’re not tied into this particular technology.
A chapter is devoted to the topic of Data Modeling with Graphs, where the CYPHER query language is introduced. A number of examples illustrate the basic syntax. Common graph modeling pitfalls (and ways to avoid them) are discussed. Other topics covered are building an application based on a Graph Database, graphs in the Real World, the internals of a Graph Database and Predictive Analytics.
After reading this book I have a solid understanding of where I will be using a Graph Database. I also have a feeling for how to structure my models and what my CYPHER queries will look like. If you need a general introduction to Graph Databases, then this book is a worthwhile read.