Amazon Neptune lets you build interactive graph applications that can query billions of connections in milliseconds. Complexity and difficulty in tuning SQL queries for heavily connected data are two of the most common drawbacks of this technology. Apache TinkerPop Gremlin and W3C’s SPARQL are two prominent graph query languages that you may use with Amazon Neptune instead to execute powerful searches on related data.
By utilizing Amazon Neptune, you simplify your code and speed up the development of relationship-processing apps. By merging the database engine with an SSD-backed virtualized storage layer tailored for database workloads, Amazon Neptune is expected to achieve higher than 99.99 percent availability. Self-healing Neptune storage is fault tolerant, and disc failures can be repaired without affecting database availability in the background. Automated detection and restart of Neptune’s databases are meant to avoid any requirement for crash recovery or a complete rebuild of the database cache. Neptune will automatically fail over to one of up to 15 read replicas if the entire instance crashes. In the Neptune Management Console, you may launch an Amazon Neptune database instance in a matter of seconds. For consistent performance, Neptune automatically scales storage, increasing storage and rebalancing I/Os.
How it Works
Fast and Scalable
- Graph queries benefit from high throughput and low latency.
Amazon Neptune is a high-performance graph database engine created specifically for Amazon. Neptune offers a scale-up, in-memory optimised architecture to allow quick query evaluation over huge graphs and effectively stores and navigates graph data. Gremlin or SPARQL can be used with Neptune to execute strong queries that are both simple to create and fast.
- Database Compute Resources can be easily scaled.
A few mouse clicks in the AWS Management Console will allow you to increase or decrease the amount of compute and memory powering your production cluster. Scaling processes normally take less than a minute to complete.
- Automated Storage Scalability
As your database storage requirements increase, Amazon Neptune will automatically increase the amount of your database volume. Up to 64 TB of storage space is available to you. No more storage for your database is required to accommodate future growth.
- Read Replicas with Low Latency.
Create up to 15 database read replicas to meet high-volume application queries and boost read throughput. Reduced expenses and the avoidance of writing to replica nodes are two of the benefits of using Amazon Neptune replicas. More processing capacity can be used for read requests, which reduces the latency time to single-digit milliseconds on many occasions. Because Neptune only has one endpoint for read queries, applications don’t have to worry about keeping track of new and removed copies.
Download list of all AWS Services PDF
Download our free PDF list of all AWS services. In this list, you will get all of the AWS services in a PDF file that contains descriptions and links on how to get started.
- Incident Management as well as Repair.
You can rest easy knowing that your Amazon Neptune database and its underlying EC2 instance are always in good shape. Restarting your database and any associated processes is handled by the instance that powers it. Instance restart durations are typically 30 seconds or less with Neptune recovery because no lengthy replay of database redo logs is needed. It also protects the database buffer cache from database processes, allowing it to survive a restart of the database.
- Using Read Replicas in Multi-AZ Deployments
Neptune automatically switches to one of up to 15 Neptune replicas in any one of three Availability Zones when an instance fails. In the event of a failure, Neptune will attempt to automatically build a new database instance if no Neptune replicas have been created.
- Self-healing and fault-tolerant Storage
Your database volume is replicated six times, across three Availability Zones, for every 10 GB. To ensure database write availability, Amazon Neptune uses fault-tolerant storage that can lose up to two copies of data without impacting database read availability. All data blocks and discs in Neptune’s storage are self-healing.
- Point-in-time restoration and incremental backups that run in the background
Using Amazon Neptune’s backup feature, you can restore your instance to a certain point in time. Your database can be restored up to the last five minutes of your retention period using this method. You have the option to set a retention period of up to 35 days for your automated backups. Automated backups are saved in Amazon S3, a service designed to provide 99.999999999 percent reliability. Database performance is unaffected by the continual and automatic Neptune backups.
- Snapshots of the database
Database snapshots are copies of your instance stored in Amazon S3 that are created at the request of the user and retained until the copy is deleted. In order to save time and storage space, they use the automated incremental snapshots. A Database Snapshot can be used to build a fresh instance at any time.
Need help on AWS?
AWS Partners, such as AllCode, are trusted and recommended by Amazon Web Services to help you deliver with confidence. AllCode employs the same mission-critical best practices and services that power Amazon’s monstrous ecommerce platform.
APIs for the Open Graph
- Gremlin supports Apache TinkerPop’s Property Graph
Many developers are already familiar with relational models, which is why property graphs have been so popular in the last several years. Using the Gremlin traversal language, it is possible to explore Property Graphs rapidly and easily. Using Apache TinkerPop’s Gremlin traversal language, Amazon Neptune supports the Property Graph concept and provides a Gremlin Websockets server that supports the latest TinkerPop version. Fast Gremlin traversals over property graphs can be built using Neptune in a matter of minutes. Neptune may be simply integrated into existing Gremlin applications by altering the Gremlin service configuration.
- An implementation of W3C’s RDF 1.1 specification and SPARQL is supported.
For complicated information domains, RDF is a preferred choice because of its flexibility. Wikidata and PubChem, a database of chemical compounds, are two examples of existing RDF datasets that are free or open to the public. Using Amazon Neptune, you can access the W3C’s Semantic Web standards, RDF 1.1 and SPARQL 1.1 (Query and Update), via an HTTP REST interface. For both existing and new graph applications, Neptune’s SPARQL endpoint is easy to utilize.
- Isolation of the Network
If your on-premises IT infrastructure uses industry-standard encrypted IPsec VPNs, you can connect to Amazon Neptune via Amazon VPC and isolate your database within your own virtual network. In addition, Neptune’s VPC configuration allows you to establish firewall settings and manage network access to your database instances.
- Permissions at the Resource Level
Access to specific resources like database instances, database snapshots, database parameter groups, database event subscriptions, and database option groups can be controlled by AWS IAM users or groups using Amazon Neptune IAM integration. As an additional option, you can tag your Neptune resources and govern the activities that your IAM users or groups can do on groupings of resources that share a tag (and tag value). For example, you can set up your IAM rules so that only Database Administrators have the ability to alter or destroy “Production” database instances, while developers have access to “Development” database instances.
You can use AWS Key Management Service to generate and control the encryption keys used by Amazon Neptune to protect your databases (KMS). Neptune-encrypted database instances ensure that all data stored in the underlying storage, as well as automated backups, snapshots, and replicas in the same cluster, are protected.
With Amazon Neptune, you can record database events with little influence on the database’s speed. For database administration, security, governance, and regulatory compliance, logs can be studied in the future. In addition, you may keep tabs on things by sending audit logs to the Amazon CloudWatch service.
- Simple to Use
Using Amazon Neptune is simple. Use the AWS Management Console to create a new Neptune database instance Neptune database instances are pre-configured with the database instance class you specified. In minutes, you may start a database and link your app. Database Parameter Groups allow for fine-tuning your database.
- Operate easily
Amazon A high performance graph database is easy with Neptune. Neptune eliminates the requirement for specific graph indexes. For queries that use too much memory or timeout, Neptune provides timeout and memory use constraints.
- Measuring and metric
Amazon Neptune monitors your database instances with Amazon CloudWatch. The AWS Management Console shows over 20 essential operating indicators for database instances, including CPU, memory, storage, query performance, and active connections.
Amazon Neptune will keep your database patched. Database Engine Version Management allows you to govern patching.
- Database Event Alerts
Important database events like automated failover can be notified by email or SMS. You can use the AWS Management Console to subscribe to various database events.
- Database Cloning
Amazon Neptune allows for fast cloning of multi-terabyte database clusters in minutes. Cloning can be used for application development, testing, database upgrades, and analytical queries. Immediate data availability helps speed up software development and update efforts while improving analytics.
With a few mouse clicks in the Management Console, you can clone an Amazon Neptune database. The clone is replicated across three Availability Zones.
Only Pay for the Services You Utilize
With Amazon Neptune, there is no need to make a large upfront investment; instead, you simply pay an hourly rate for each instance that you launch. Furthermore, once you’ve finished working with a Neptune database instance, you may quickly delete it. Because you only pay for the storage that you actually use, there is no need to over-provision storage as a safety net.
There are no long-term commitments or up-front payments while using Amazon Neptune services. Using On-Demand instances, you pay for your database by the hour, rather than by the month. A database capacity purchase in front of demand is appropriate for development, testing, and other temporary workloads, and it relieves you of the complex planning that must be done when acquiring database capacity in advance of demand.
It is possible to get a discount on primary instances that are used for read-write workloads, as well as on Amazon Neptune replicas that are used to increase reads and improve failover. Amounts charged for storage consumed by your Neptune database are invoiced in GB-month increments, whereas amounts charged for input/output (I/O) are billed in million-request increments. You only pay for the storage and I/Os that your Neptune database requires, and you are not required to provide any resources in advance of use. Customers who request database cluster snapshots or automated database backups will be charged on a per-GB-month basis for the backup storage associated with those requests. The cost for data transfer is depending on the amount of data transported “in” and “out” of Neptune. The Amazon Neptune Workbench, which allows you to collaborate with your Neptune cluster using Jupyter notebooks (hosted by Amazon SageMaker), is charged per instance hour when it is in the Ready State of operation.
Curious About AWS Pricing?
Pricing Amazon Web Services may seem tricky, but the AWS Pricing Calculator makes it quick and easy to get an estimate!