What is a Graph?

A graph is composed of two elements: a node and a relationship.

Each node represents an entity (a person, place, thing, category or other piece of data), and each relationship represents how two nodes are associated. This general-purpose structure allows you to model all kinds of scenarios – from a system of roads, to a network of devices, to a population’s medical history or anything else defined by relationships.

What is a Graph Database?

A graph database is an online database management system with Create, Read, Update and Delete (CRUD) operations working on a graph data model.

  Unlike other databases, relationships take first priority in graph databases. This means your application doesn’t have to infer data connections using things like foreign keys or out-of-band processing, such as MapReduce. The data model for a graph database is also significantly simpler and more expressive than those of relational or other NoSQL databases. Graph databases are built for use with transactional (OLTP) systems and are engineered with transactional integrity and operational availability in mind.
There are two important properties of graph database technologies:

icon-graph-storage Graph Storage

Some graph databases use native graph storage that is specifically designed to store and manage graphs, while others use relational or object-oriented databases instead. Non-native storage is often much more latent.

icon-graph-engine Graph Processing Engine

Native graph processing (a.k.a. “index-free adjacency”) is the most efficient means of processing graph data since connected nodes physically “point” to each other in the database. Non-native graph processing uses other means to process CRUD operations.



O'Reilly's Graph Databases, 2nd Edition

O’Reilly Graph Databases

Graph databases that use native graph storage and native graph processing perform and scale better than their non-native counterparts. Learn More about Graph Databases →  



Why does My Enterprise Need a Graph Database?

  Today’s CIOs and CTOs don’t just need to manage larger volumes of data – they need to generate insight from their existing data. In this case, the relationships between data points matter more than the individual points themselves. In order to leverage data relationships, organizations need a database technology that stores relationship information as a first-class entity. That technology is a graph database. Ironically, legacy relational database management systems (RDBMS) are poor at handling data relationships. Their rigid schemas make it difficult to add different connections or adapt to new business requirements. Not only do graph databases effectively store data relationships; they’re also flexible when expanding a data model or conforming to changing business needs.






What Are the Advantages of Using a Graph Database?

  Tech giants like Google, Facebook, LinkedIn and PayPal all tapped into the power of graph databases to create booming businesses. Their secret? They each used graph database technology to harness the power of data connections. A graph database is purpose-built to handle highly connected data, and the increase in the volume and connectedness of today’s data presents a tremendous opportunity for sustained competitive advantage. Graph databases have three other key advantages:

Performance

For intensive data relationship handling, graph databases improve performance by several orders of magnitude. With traditional databases, relationship queries will come to a grinding halt as the number and depth of relationships increase. In contrast, graph database performance stays constant even as your data grows year over year.

Flexibility

With graph databases, IT and data architect teams move at the speed of business because the structure and schema of a graph model flexes as applications and industries change. Rather than exhaustively modeling a domain ahead of time, data teams can add to the existing graph structure without endangering current functionality.

Agility

Developing with graph databases aligns perfectly with today’s agile, test-driven development practices, allowing your graph database to evolve in step with the rest of the application and any changing business requirements. Modern graph databases are equipped for frictionless development and graceful systems maintenance.



What Are the Common Use Cases of Graph Databases?

  Today’s enterprise organizations use graph database technology in a diversity of ways:
From enterprises like Walmart, eBay and the adidas Group to startups like Cobrain, Zephyr Health and Wanderu and even non-profits like the ICIJ and the World Economic Forum – case studies with graph databases abound with diversity and depth of use.






Join the Graph Database Movement

  For developers, download Neo4j and take it for a spin. After learning a few lines of Cypher and importing a sample dataset, you’ll be a master of the graph in no time. For business and operations professionals, take your first step by reaching out to a Neo4j expert. We’re here to answer your questions, help you determine deployment specifics and even help create your first proof of concept. Download Neo4j Talk to a Neo4j Expert