Learning Graph Databases Just Got a Whole Lot Easier
Graph databases are the fastest growing database technology, representing a departure from the relational and NoSQL models – a departure that is inherently worthwhile.
Graph Databases For Dummies, Neo4j Special Edition, a new book by Dr. Jim Webber, Neo4j Chief Scientist, and Rik Van Bruggen, Neo4j Regional Vice President, is all about getting started with graph databases. This book walks readers through modeling, querying and importing graph data, all the way through to their first production system.
This article extracts some main highlights of Chapter 1 of the book – the fundamental graph database building blocks.
Since the turn of the century, an explosion of new database technologies has ended the prior dominance of relational systems. These various new kinds of databases distinguished themselves with the umbrella term NoSQL. While the terminology is debatable, NoSQL technology really is different from the relational world. Instead of storing data in rows in tables, databases store nested documents, key-value pairs or columnar form data.
There are good reasons for the emergence of new data models. Document databases optimize for ease of storage and retrieval with a file cabinet metaphor of document-in, document-out. Column store databases optimize for scale and the ability to scan many records rapidly. In optimizing for their use cases though, the new databases opted for simplistic data models. For example, understanding how two records are related is part of the relational model via joins, but no equivalent mechanism exists in document, key-value or column store databases.
Exploring Graph Database Basics
A graph database uses highly inter-linked data structures built from nodes, relationships, and properties. In turn, these graph structures support sophisticated, semantically rich queries at scale.
Graph databases turn NoSQL thinking on its head: Relationships between data are just as important as the data itself.
A graph database builds a network of interconnected entities to represent its domain. Like relational databases, you can query that model to gain insight, but unlike relational databases, the data model is intuitive.
With a handful of simple tools, you can build expressive and understandable data models that are highly performant.
Understanding Who Uses Graph Databases and Why
Graph databases are general-purpose data technology. They can be used by a wide variety of domains, from healthcare to finance, and energy to disaster response. The key to understanding when to use a graph database is the value of links. If your data is connected, whether it supports an online mobile app or an offline machine learning framework, then a graph is going to be a good choice.
Seeing the Benefits of Graph Databases
Graphs bring several benefits across the whole life cycle of a system. For the production lifetime of a system, graphs offer superior querying of complex models, enabling business to ask pertinent questions with high performance. Graphs also offer ease of development, where combining simple patterns allows you to build large sophisticated networks that represent your problem domain in high-fidelity.
Graph databases open up a world of possibilities for understanding connected data. Do you want to keep reading Graph Databases For Dummies, Neo4j Special Edition? The book is now available for free for a limited time at neo4j.com/graph-databases-for-dummies.