Skip to content
English
On this page

Graph Databases

AWS provides a variety of graph database options, such as Amazon Neptune, or you can operate your own graph database in the cloud on Amazon EC2 and Amazon EBS. This section takes a closer look at what exactly is a graph database and when you would want to use one. Many applications being built today must understand and navigate relationships between highly connected data. This can enable use cases like the following:

  • Social applications
  • Recommendation engines
  • Fraud detection
  • Knowledge graphs
  • Life sciences
  • IT/network

Because the data is highly connected, it is easily represented as a graph, which is a data structure that consists of vertices and directed links called edges. Vertices and edges can each have properties associated with them. The next depicts a simple graph of relationships between friends and their interests—or social network—that could be stored and queried by using a graph database. A graph database is optimized to store and process graph data.

Example of a social network diagram

Social Network

AWS provides a variety of graph database options. You can operate your own graph database in the cloud on Amazon EC2 and Amazon EBS. You can also use Neptune, a fully managed graph database service.

Amazon Neptune

Amazon Neptune is a fast, reliable, fully managed graph database service that makes it easy to build and run applications that work with highly connected datasets. The core of Neptune is a purpose-built, high-performance graph database engine optimized for storing billions of relationships and querying the graph with milliseconds latency. Neptune is highly available and provides the following features:

  • Read replicas
  • Point-in-time recovery
  • Continuous backup to Amazon S3
  • Replication across Availability Zones
  • Encryption at rest and in transit

Example of a graph database architecture running on Amazon Neptune

Neptune

Neptune supports the popular graph models Property Graph and W3C’s RDS and their respective query languages Apache TinkerPop Gremlin and SPARQL. With these models, you can easily build queries that efficiently navigate highly connected datasets. Neptune graph databases include the following use cases:

  • Recommendation engines
  • Fraud detection
  • Knowledge graphs
  • Drug discovery
  • Network security

Amazon Neptune Overview

Amazon Neptune is a high-performance, reliable, fully managed graph database service that makes it easy to build and run applications that work with highly connected datasets. The core of Neptune is a purpose-built, high-performance graph database engine. This engine is optimized for storing billions of relationships and querying the graph with milliseconds latency. Neptune supports the popular graph query languages Apache TinkerPop, Gremlin, and W3C’s SPARQL, enabling you to build queries that efficiently navigate highly connected datasets. Neptune powers graph use cases such as recommendation engines, fraud detection, knowledge graphs, drug discovery, and network security. Neptune is highly available, with read replicas, point-in-time recovery, continuous backup to Amazon S3, and replication across Availability Zones. It provides data security features, with support for encryption at rest and in transit. Neptune is fully managed, so you no longer need to worry about database management tasks like hardware provisioning, software patching, setup, configuration, or backups.

An example of a common use case that is suited to a graph is social networking data. Amazon Neptune can quickly and easily process large sets of user profiles and interactions to build social networking applications. Neptune enables highly interactive graph queries with high throughput to bring social features into your applications. For example, suppose you want to build a social feed into your application. You can use Neptune to provide results that prioritize showing your users the latest updates from their family, from friends whose updates they “like,” and from friends who live close to them.

Amazon Neptune Use Cases

Here is a list of some likely Amazon Neptune use cases:

  • Fraud detection
    • Determine irregular use of credit cards or identify fraudulent accounts.
  • Recommendation engines
    • Make product recommendations.
    • Make social recommendations (people you may know).
  • Knowledge graphs
    • Build complex knowledge graphs to recommend other items of interest similar to current interests.
  • Life sciences
    • Model diseases and gene interactions.
    • Integrate information to tackle healthcare and life sciences research.
  • Network/IT operations
    • Model your network.
    • Answer questions like which hosts are running a specific application.