DBMS > Badger vs. Datomic vs. Dolt vs. Google Cloud Datastore vs. Quasardb
System Properties Comparison Badger vs. Datomic vs. Dolt vs. Google Cloud Datastore vs. Quasardb
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Badger Xexclude from comparison | Datomic Xexclude from comparison | Dolt Xexclude from comparison | Google Cloud Datastore Xexclude from comparison | Quasardb Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An embeddable, persistent, simple and fast Key-Value Store, written purely in Go. | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | A MySQL compatible DBMS with Git-like versioning of data and schema | Automatically scaling NoSQL Database as a Service (DBaaS) on the Google Cloud Platform | Distributed, high-performance timeseries database | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Relational DBMS | Relational DBMS | Document store | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/dgraph-io/badger | www.datomic.com | github.com/dolthub/dolt www.dolthub.com | cloud.google.com/datastore | quasar.ai | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | godoc.org/github.com/dgraph-io/badger | docs.datomic.com | docs.dolthub.com | cloud.google.com/datastore/docs | doc.quasar.ai/master | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | DGraph Labs | Cognitect | DoltHub Inc | quasardb | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2012 | 2018 | 2008 | 2009 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 3.14.1, January 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0 | commercial limited edition free | Open Source Apache Version 2.0 | commercial | commercial Free community edition, Non-profit organizations and non-commercial usage are eligible for free licenses | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | Java, Clojure | Go | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Solaris Windows | All OS with a Java VM | Linux macOS Windows | hosted | BSD Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | yes | yes, details here | yes integer and binary | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes | yes with tags | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | yes | SQL-like query language (GQL) | SQL-like query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | CLI Client HTTP REST | gRPC (using protocol buffers) API RESTful HTTP/JSON API | HTTP API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go | Clojure Java | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net Go Java JavaScript (Node.js) PHP Python Ruby | .Net C C# C++ Go Java JavaScript (Node.js) PHP Python R | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes Transaction Functions | yes currently in alpha release | using Google App Engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | By using transaction functions | yes | Callbacks using the Google Apps Engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | none But extensive use of caching in the application peers | none | Sharding | Sharding consistent hashing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | none But extensive use of caching in the application peers | A database can be cloned to multiple locations and be used there in isolation. Data/schema changes can be pushed/pulled explicitly between locations. | Multi-source replication using Paxos | Source-replica replication with selectable replication factor | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes using Google Cloud Dataflow | with Hadoop integration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Immediate Consistency | Immediate Consistency or Eventual Consistency depending on type of query and configuration Strong Consistency is default for entity lookups and queries within an Entity Group (but can instead be made eventually consistent). Other queries are always eventual consistent. | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | yes via ReferenceProperties or Ancestor paths | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | ACID | ACID Serializable Isolation within Transactions, Read Committed outside of Transactions | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes | yes | yes by using LevelDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes recommended only for testing and development | no | yes Transient mode | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Only one user is configurable, and must be specified in the config file at startup | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | Cryptographically strong user authentication and audit trail | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Badger | Datomic | Dolt | Google Cloud Datastore | Quasardb | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Atomic Canyon and ORNL develop revolutionary nuclear AI Nubank buys firm behind Clojure programming language Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic provided by Google News | Top Data Version Control Tools for Machine Learning Research in 2023 Dolt, a Relational Database with Git-Like Cloning Features Data Versioning at Scale: Chaos and Chaos Management Radar Trends to Watch: July 2022 – O'Reilly Are you still not using Version Control for Data? provided by Google News | Google Cloud Stops Exit Fees Best cloud storage of 2024 BigID Data Intelligence Platform Now Available on Google Cloud Marketplace Inside Google’s strategic move to eliminate customer cloud data transfer fees Google says it'll stop charging fees to transfer data out of Google Cloud provided by Google News | Record quasar is most luminous object in the universe Quasar Partners with PTC to Empower IoT Customers with High-Performance Data Solutions QUASAR yacht (Bilgin, 46.8m, 2016) Quasar Selected by National Renewable Energy Laboratory to Help with Energy System De-risking and Optimization Gas on the run – ALMA spots the shadow of a molecular outflow from a quasar when the Universe was less than one ... provided by Google News |
Share this page