DBMS > Amazon DynamoDB vs. FoundationDB vs. Google Cloud Bigtable vs. JanusGraph vs. RocksDB
System Properties Comparison Amazon DynamoDB vs. FoundationDB vs. Google Cloud Bigtable vs. JanusGraph vs. RocksDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Amazon DynamoDB Xexclude from comparison | FoundationDB Xexclude from comparison | Google Cloud Bigtable Xexclude from comparison | JanusGraph successor of Titan Xexclude from comparison | RocksDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Created as commercial project in 2013, FoundationDB has been acquired by Apple in March 2015 and was withdrawn from the market. As a consequence, the product was removed from the DB-Engines ranking. In April 2018, Apple open-sourced FoundationDB and it therefore reappears in the ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Hosted, scalable database service by Amazon with the data stored in Amazons cloud | Ordered key-value store. Core features are complimented by layers. | Google's NoSQL Big Data database service. It's the same database that powers many core Google services, including Search, Analytics, Maps, and Gmail. | A Graph DBMS optimized for distributed clusters It was forked from the latest code base of Titan in January 2017 | Embeddable persistent key-value store optimized for fast storage (flash and RAM) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Key-value store | Document store supported via specific layer Key-value store Relational DBMS supported via specific SQL-layer | Key-value store Wide column store | Graph DBMS | Key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | aws.amazon.com/dynamodb | github.com/apple/foundationdb | cloud.google.com/bigtable | janusgraph.org | rocksdb.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.aws.amazon.com/dynamodb | apple.github.io/foundationdb | cloud.google.com/bigtable/docs | docs.janusgraph.org | github.com/facebook/rocksdb/wiki | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Amazon | FoundationDB | Linux Foundation; originally developed as Titan by Aurelius | Facebook, Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 2015 | 2017 | 2013 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 6.2.28, November 2020 | 0.6.3, February 2023 | 9.2.1, May 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial free tier for a limited amount of database operations | Open Source Apache 2.0 | commercial | Open Source Apache 2.0 | Open Source BSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | Java | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | Linux OS X Windows | hosted | Linux OS X Unix Windows | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free some layers support schemas | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | no some layers support typing | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | supported in specific SQL layer only | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | gRPC (using protocol buffers) API HappyBase (Python library) HBase compatible API (Java) | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | C++ API Java API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net ColdFusion Erlang Groovy Java JavaScript Perl PHP Python Ruby | .Net C C++ Go Java JavaScript Node.js PHP Python Ruby Swift | C# C++ Go Java JavaScript (Node.js) Python | Clojure Java Python | C C++ Go Java Perl Python Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | in SQL-layer only | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by integration with AWS Lambda | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | yes depending on the used storage backend (e.g. Cassandra, HBase, BerkeleyDB) | horizontal partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | yes | Internal replication in Colossus, and regional replication between two clusters in different zones | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no may be implemented via Amazon Elastic MapReduce (Amazon EMR) | no | yes | yes via Faunus, a graph analytics engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency can be specified for read operations | Linearizable consistency | Immediate consistency (for a single cluster), Eventual consistency (for two or more replicated clusters) | Eventual Consistency Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | in SQL-layer only | no | yes Relationships in graphs | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID ACID across one or more tables within a single AWS account and region | ACID | Atomic single-row operations | ACID | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users and roles can be defined via the AWS Identity and Access Management (IAM) | no | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | User authentification and security via Rexster Graph Server | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | Speedb: A high performance RocksDB-compliant key-value store optimized for write-intensive workloads. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon DynamoDB | FoundationDB | Google Cloud Bigtable | JanusGraph successor of Titan | RocksDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates The popularity of cloud-based DBMSs has increased tenfold in four years Increased popularity for consuming DBMS services out of the cloud | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Use Amazon DynamoDB incremental exports to drive continuous data retention | Amazon Web Services AWS announces Amazon DynamoDB zero-ETL integration with Amazon OpenSearch Service Simplify cross-account access control with Amazon DynamoDB using resource-based policies | Amazon Web Services Simplify private connectivity to Amazon DynamoDB with AWS PrivateLink | Amazon Web Services Bulk update Amazon DynamoDB tables with AWS Step Functions | Amazon Web Services provided by Google News | FoundationDB team's new venture, Antithesis, raises $47M to enhance software testing Stonebraker Seeks to Invert the Computing Paradigm with DBOS Antithesis raises $47M to launch an automated testing platform for software FoundationDB, a very interesting NoSQL database owned by Apple, is now an open-source project Apple Open Sources FoundationDB provided by Google News | Google Introduces Autoscaling for Cloud Bigtable for Optimizing Costs Google scales up Cloud Bigtable NoSQL database Review: Google Bigtable scales with ease Google Cloud makes it cheaper to run smaller workloads on Bigtable Google introduces Cloud Bigtable managed NoSQL database to process data at scale provided by Google News | Simple Deployment of a Graph Database: JanusGraph Database Deep Dives: JanusGraph JanusGraph Picks Up Where TitanDB Left Off Nordstrom Builds Flexible Backend Ops with Kubernetes, Spark and JanusGraph Compose for JanusGraph arrives on Bluemix provided by Google News | Did Rockset Just Solve Real-Time Analytics? Meta’s Velox Means Database Performance Is Not Subject To Interpretation Linux 6.9 Drives AMD 4th Gen EPYC Performance Even Higher For Some Workloads Facebook's MyRocks Truly Rocks! Power your Kafka Streams application with Amazon MSK and AWS Fargate | Amazon Web Services provided by Google News |
Share this page