DBMS > GeoMesa vs. Google Cloud Firestore vs. H2 vs. Hazelcast vs. LokiJS
System Properties Comparison GeoMesa vs. Google Cloud Firestore vs. H2 vs. Hazelcast vs. LokiJS
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | GeoMesa Xexclude from comparison | Google Cloud Firestore Xexclude from comparison | H2 Xexclude from comparison | Hazelcast Xexclude from comparison | LokiJS Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | GeoMesa is a distributed spatio-temporal DBMS based on various systems as storage layer. | 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. | A widely adopted in-memory data grid | In-memory JavaScript DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Spatial DBMS | Document store | Relational DBMS | Key-value store | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store ![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.geomesa.org | firebase.google.com/products/firestore | www.h2database.com | hazelcast.com | github.com/techfort/LokiJS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.geomesa.org/documentation/stable/user/index.html | firebase.google.com/docs/firestore | www.h2database.com/html/main.html | hazelcast.org/imdg/docs | techfort.github.io/LokiJS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | CCRi and others | Thomas Mueller | Hazelcast | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2017 | 2005 | 2008 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0.0, May 2024 | 2.2.220, July 2023 | 5.3.6, November 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License ![]() | Open Source ![]() | commercial | Open Source ![]() | Open Source ![]() | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only ![]() | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) ![]() Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Scala | Java | Java | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | All OS with a Java VM | All OS with a Java VM | server-less, requires a JavaScript environment (browser, Node.js) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | yes | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing ![]() | yes | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support ![]() | no | no | no | yes ![]() | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL ![]() | no | no | yes | SQL-like query language | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Android gRPC (using protocol buffers) API iOS JavaScript API RESTful HTTP API | JDBC ODBC | JCache JPA Memcached protocol RESTful HTTP API | JavaScript API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript JavaScript (Node.js) Objective-C Python | Java | .Net C# C++ Clojure Go Java JavaScript (Node.js) Python Scala | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts ![]() | no | yes, Firebase Rules & Cloud Functions | Java Stored Procedures and User-Defined Functions | yes ![]() | View functions in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes, with Cloud Functions | yes | yes ![]() | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods ![]() | depending on storage layer | Sharding | none | Sharding | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods ![]() | depending on storage layer | Multi-source replication | With clustering: 2 database servers on different computers operate on identical copies of a database | yes ![]() | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce ![]() | yes | Using Cloud Dataflow | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts ![]() | depending on storage layer | Immediate Consistency | Immediate Consistency | Immediate Consistency or Eventual Consistency selectable by user ![]() | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys ![]() | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts ![]() | no | yes | ACID | one or two-phase-commit; repeatable reads; read commited | no ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency ![]() | yes | yes | yes, multi-version concurrency control (MVCC) | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability ![]() | yes | yes | yes | yes | yes ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities ![]() | depending on storage layer | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts ![]() | yes ![]() | 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 | Role-based access control | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeoMesa | Google Cloud Firestore | H2 | Hazelcast | LokiJS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Spatial database management systems | Cloud-based DBMS's popularity grows at high rates | New kids on the block: database management systems implemented in JavaScript 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 Hazelcast Weaves Wider Logic Threads Through The Data Fabric Hazelcast 5.4 real time data processing platform boosts AI and consistency Hazelcast appoints Anthony Griffin as Chief Architect - Hazelcast Showcases Real-Time Data Platform at 2024 Gartner Summit Real-Time Data Platform Hazelcast Introduces New Chief Technology Officer Adrian Soars provided by Google News LokiJS - A JavaScript Database provided by Google News |
Share this page