DBMS > Dolt vs. Faircom DB vs. Google Cloud Firestore vs. H2 vs. LokiJS
System Properties Comparison Dolt vs. Faircom DB vs. Google Cloud Firestore vs. H2 vs. LokiJS
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Dolt Xexclude from comparison | Faircom DB ![]() | Google Cloud Firestore Xexclude from comparison | H2 Xexclude from comparison | LokiJS Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A MySQL compatible DBMS with Git-like versioning of data and schema | Native high-speed multi-model DBMS for relational and key-value store data simultaneously accessible through SQL and NoSQL APIs. | Cloud Firestore is an auto-scaling document database for storing, syncing, and querying data for mobile and web apps. It offers seamless integration with other Firebase and Google Cloud Platform products. | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | In-memory JavaScript DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store Relational DBMS | Document store | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/dolthub/dolt www.dolthub.com | www.faircom.com/products/faircom-db | firebase.google.com/products/firestore | www.h2database.com | github.com/techfort/LokiJS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.dolthub.com | docs.faircom.com/docs/en/UUID-7446ae34-a1a7-c843-c894-d5322e395184.html | firebase.google.com/docs/firestore | www.h2database.com/html/main.html | techfort.github.io/LokiJS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | DoltHub Inc | FairCom Corporation | Thomas Mueller | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2018 | 1979 | 2017 | 2005 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | V12, November 2020 | 2.2.220, July 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License ![]() | Open Source ![]() | commercial ![]() | commercial | Open Source ![]() | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only ![]() | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) ![]() Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | ANSI C, C++ | Java | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux macOS Windows | AIX FreeBSD HP-UX Linux NetBSD OS X QNX SCO Solaris VxWorks Windows ![]() | hosted | All OS with a Java VM | server-less, requires a JavaScript environment (browser, Node.js) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema free, schema optional, schema required, partial schema, | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing ![]() | yes | yes, ANSI SQL Types, JSON, typed binary structures | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support ![]() | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL ![]() | yes | yes, ANSI SQL with proprietary extensions | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | CLI Client HTTP REST | ADO.NET Direct SQL JDBC JPA ODBC RESTful HTTP/JSON API RESTful MQTT/JSON API RPC | Android gRPC (using protocol buffers) API iOS JavaScript API RESTful HTTP API | JDBC ODBC | JavaScript API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net C C# C++ Java JavaScript (Node.js and browser) PHP Python Visual Basic | Go Java JavaScript JavaScript (Node.js) Objective-C Python | Java | JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts ![]() | yes ![]() | yes ![]() | yes, Firebase Rules & Cloud Functions | Java Stored Procedures and User-Defined Functions | View functions in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | yes, with Cloud Functions | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods ![]() | none | File partitioning, horizontal partitioning, sharding ![]() | Sharding | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods ![]() | A database can be cloned to multiple locations and be used there in isolation. Data/schema changes can be pushed/pulled explicitly between locations. | yes, configurable to be parallel or serial, synchronous or asynchronous, uni-directional or bi-directional, ACID-consistent or eventually consistent (with custom conflict resolution). | Multi-source replication | With clustering: 2 database servers on different computers operate on identical copies of a database | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce ![]() | no | no | Using Cloud Dataflow | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts ![]() | Eventual Consistency Immediate Consistency Tunable consistency per server, database, table, and transaction | Immediate Consistency | Immediate Consistency | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys ![]() | yes | yes | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts ![]() | ACID | tunable from ACID to Eventually Consistent | yes | ACID | no ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency ![]() | yes | yes | yes | yes, multi-version concurrency control (MVCC) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability ![]() | yes | Yes, tunable from durable to delayed durability to in-memory | yes | yes | yes ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities ![]() | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts ![]() | Only one user is configurable, and must be specified in the config file at startup | Fine grained access rights according to SQL-standard with additional protections for files | Access rights for users, groups and roles based on Google Cloud Identity and Access Management. Security Rules for 3rd party authentication using Firebase Auth. | fine grained access rights according to SQL-standard | 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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Dolt | Faircom DB ![]() | Google Cloud Firestore | H2 | LokiJS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | New kids on the block: database management systems implemented in JavaScript Dolt- A Version Controlled Database 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 25 Hot New Data Tools and What They DON'T Do provided by Google News FairCom Unveils New Look, FairCom DB v13: Introducing 'DB Made Simple' FairCom kicks off new era of database technology USA - English provided by Google News Google's AI-First Strategy Brings Vector Support To Cloud Databases Realtime vs Cloud Firestore: Which Firebase Database to go? Google launches Cloud Firestore, a new document database for app developers Google's Cloud-Native NoSQL Database Cloud Firestore Is Now Generally Available Firestore and Python | NoSQL on Google Cloud provided by Google News LokiJS - A JavaScript Database provided by Google News |
Share this page