DBMS > Bangdb vs. Datomic vs. FoundationDB vs. Postgres-XL
System Properties Comparison Bangdb vs. Datomic vs. FoundationDB vs. Postgres-XL
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Bangdb Xexclude from comparison | Datomic Xexclude from comparison | FoundationDB Xexclude from comparison | Postgres-XL 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 | Converged and high performance database for device data, events, time series, document and graph | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | Ordered key-value store. Core features are complimented by layers. | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Graph DBMS Time Series DBMS | Relational DBMS | Document store supported via specific layer Key-value store Relational DBMS supported via specific SQL-layer | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | bangdb.com | www.datomic.com | github.com/apple/foundationdb | www.postgres-xl.org | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.bangdb.com | docs.datomic.com | apple.github.io/foundationdb | www.postgres-xl.org/documentation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Sachin Sinha, BangDB | Cognitect | FoundationDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2012 | 2013 | 2014 since 2012, originally named StormDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | BangDB 2.0, October 2021 | 1.0.7180, July 2024 | 6.2.28, November 2020 | 10 R1, October 2018 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD 3 | commercial limited edition free | Open Source Apache 2.0 | Open Source Mozilla public license | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C, C++ | Java, Clojure | C++ | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | All OS with a Java VM | Linux OS X Windows | Linux macOS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | schema-free some layers support schemas | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes: string, long, double, int, geospatial, stream, events | yes | no some layers support typing | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes XML type, but no XML query functionality | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes secondary, composite, nested, reverse, geospatial | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL like support with command line tool | no | supported in specific SQL layer only | yes distributed, parallel query execution | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol RESTful HTTP API | RESTful HTTP API | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Java Python | Clojure Java | .Net C C++ Go Java JavaScript Node.js PHP Python Ruby Swift | .Net C C++ Delphi Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes Transaction Functions | in SQL-layer only | user defined functions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes, Notifications (with Streaming only) | By using transaction functions | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding (enterprise version only). P2P based virtual network overlay with consistent hashing and chord algorithm | none But extensive use of caching in the application peers | Sharding | horizontal partitioning | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor, Knob for CAP (enterprise version only) | none But extensive use of caching in the application peers | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Tunable consistency, set CAP knob accordingly | Immediate Consistency | Linearizable consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | in SQL-layer only | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | ACID | ACID MVCC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes, optimistic concurrency control | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes, implements WAL (Write ahead log) as well | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes, run db with in-memory only mode | yes recommended only for testing and development | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes (enterprise version only) | no | no | fine grained access rights according to SQL-standard | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bangdb | Datomic | FoundationDB | Postgres-XL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Brazil’s Nubank Acquires US Software Firm Cognitect Lucas Cavalcanti on Using Clojure, Microservices, Hexagonal Architecture and Public Cloud at Nubank Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic Nubank acquires US company; PayPal studies cryptocurrencies Zoona Case Study provided by Google News | FoundationDB team’s new venture, Antithesis, raises $47M to enhance software testing Antithesis Launches Out Of Stealth To Revolutionize Software Reliability Antithesis raises $47M to launch an automated testing platform for software Apple's FoundationDB takes new Record Layer open source, confirms tech underpins CloudKit Apple Acquires FoundationDB provided by Google News |
Share this page