DBMS > Couchbase vs. Google Cloud Firestore vs. H2 vs. LokiJS vs. Trino
System Properties Comparison Couchbase vs. Google Cloud Firestore vs. H2 vs. LokiJS vs. Trino
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Couchbase Originally called Membase Xexclude from comparison | Google Cloud Firestore Xexclude from comparison | H2 Xexclude from comparison | LokiJS Xexclude from comparison | Trino Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | 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 | Fast distributed SQL query engine for big data analytics. Forked from Presto and originally named PrestoSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store | Relational DBMS | Document store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Key-value store originating from the former Membase product and supporting the Memcached protocol Spatial DBMS using the Geocouch extension Search engine Time Series DBMS Vector DBMS | Spatial DBMS | Document store Key-value store Spatial DBMS Search engine Time Series DBMS Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.couchbase.com | firebase.google.com/products/firestore | www.h2database.com | github.com/techfort/LokiJS | trino.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchbase.com | firebase.google.com/docs/firestore | www.h2database.com/html/main.html | techfort.github.io/LokiJS | trino.io/broadcast trino.io/docs/current | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Couchbase, Inc. | Thomas Mueller | Trino Software Foundation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2011 | 2017 | 2005 | 2014 | 2012 2020 rebranded from PrestoSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | 2.2.220, July 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial | Open Source dual-licence (Mozilla public license, Eclipse public license) | Open Source | Open Source Apache Version 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Starburst Galaxy offers a feature-rich user interface to connect all your data sources, manage your Trino clusters, and query your data. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C, C++, Go and Erlang | Java | JavaScript | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | hosted | All OS with a Java VM | server-less, requires a JavaScript environment (browser, Node.js) | Linux macOS for devlopment | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | no | 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 | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes via views | depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | Android gRPC (using protocol buffers) API iOS JavaScript API RESTful HTTP API | JDBC ODBC | JavaScript API | JDBC RESTful HTTP API Trino CLI | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | Go Java JavaScript JavaScript (Node.js) Objective-C Python | Java | JavaScript | Go Java JavaScript (Node.js) Python R Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | yes, Firebase Rules & Cloud Functions | Java Stored Procedures and User-Defined Functions | View functions in JavaScript | yes, depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via the TAP protocol | yes, with Cloud Functions | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Automatic Sharding | Sharding | none | none | depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication including cross data center replication Source-replica replication | Multi-source replication | With clustering: 2 database servers on different computers operate on identical copies of a database | none | depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | Using Cloud Dataflow | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Immediate Consistency | Immediate Consistency | none | depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | yes | ACID | no atomic operations within a single collection possible | depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes, multi-version concurrency control (MVCC) | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | depending on connected data-source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes Ephemeral buckets | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | 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 | SQL standard access control | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Couchbase Originally called Membase | Google Cloud Firestore | H2 | LokiJS | Trino | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Trino is the fastest open source, massively parallel processing SQL query engine... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | High performance analtyics and data processing of very large data sets Powerful ANSI... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Performant analytics query engine for data warehouses, data lakes, and data lakehouses... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Trino is widely adopted across the globe as freely-available open source software.... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | 33000+ commits in GitHub 8200+ stargazers in GitHub 1200+ pull requests merged in... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Trino is an open source project and usage is therefore free. Commercial offerings... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | 60: Trino calling AI Big names round out the Trino Fest 2024 lineup 59: Querying Trino with Java and jOOQ A sneak peek of Trino Fest 2024 Time travel in Delta Lake connector | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Couchbase Originally called Membase | Google Cloud Firestore | H2 | LokiJS | Trino | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | Cloud-based DBMS's popularity grows at high rates | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Couchbase (BASE) To Report Earnings Tomorrow: Here Is What To Expect Oversold Conditions For Couchbase (BASE) Couchbase Announces New Employee Inducement Grants | | news-journal.com Here's Why We're Not At All Concerned With Couchbase's (NASDAQ:BASE) Cash Burn Situation Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers 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 | The Perfect AI Storage: Trino From Facebook And Iceberg From Netflix? Starburst Brings Dataframes Into Trino Platform Query big data with resilience using Trino in Amazon EMR with Amazon EC2 Spot Instances for less cost | Amazon ... A look at Presto, Trino SQL query engines Trino: The Open-source Data Query Engine That Split from Facebook provided by Google News |
Share this page