DBMS > Geode vs. Google Cloud Datastore vs. LevelDB vs. Lovefield vs. SQL.JS
System Properties Comparison Geode vs. Google Cloud Datastore vs. LevelDB vs. Lovefield vs. SQL.JS
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Geode Xexclude from comparison | Google Cloud Datastore Xexclude from comparison | LevelDB Xexclude from comparison | Lovefield Xexclude from comparison | SQL.JS Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Geode is a distributed data container, pooling memory, CPU, network resources, and optionally local disk across multiple processes | Automatically scaling NoSQL Database as a Service (DBaaS) on the Google Cloud Platform | Embeddable fast key-value storage library that provides an ordered mapping from string keys to string values | Embeddable relational database for web apps written in pure JavaScript | Port of SQLite to JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Document store | Key-value store | Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | geode.apache.org | cloud.google.com/datastore | github.com/google/leveldb | google.github.io/lovefield | sql.js.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | geode.apache.org/docs | cloud.google.com/datastore/docs | github.com/google/leveldb/blob/main/doc/index.md | github.com/google/lovefield/blob/master/docs/spec_index.md | sql.js.org/documentation/index.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Originally developed by Gemstone. They outsourced the project to Apache in 2015 but still deliver a commercial version as Gemfire. | Alon Zakai enhancements implemented by others | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2002 | 2008 | 2011 | 2014 | 2012 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.1, February 2017 | 1.23, February 2021 | 2.1.12, February 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2; commercial licenses available as Gemfire | commercial | Open Source BSD | Open Source Apache 2.0 | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++ | JavaScript | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM the JDK (8 or later) is also required | hosted | Illumos Linux OS X Windows | server-less, requires a JavaScript environment (browser, Node.js) tested with Chrome, Firefox, IE, Safari | server-less, requires a JavaScript environment (browser, Node.js) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes, details here | no | yes | 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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language (OQL) | SQL-like query language (GQL) | no | SQL-like query language via JavaScript builder pattern | yes SQL-92 is not fully supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java Client API Memcached protocol RESTful HTTP API | gRPC (using protocol buffers) API RESTful HTTP/JSON API | JavaScript API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net All JVM based languages C++ Groovy Java Scala | .Net Go Java JavaScript (Node.js) PHP Python Ruby | C++ Go Java 3rd party binding JavaScript (Node.js) 3rd party binding Python 3rd party binding | JavaScript | JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | using Google App Engine | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes Cache Event Listeners | Callbacks using the Google Apps Engine | no | Using read-only observers | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | none | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication | Multi-source replication using Paxos | none | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes using Google Cloud Dataflow | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual 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 | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes via ReferenceProperties or Ancestor paths | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes, on a single node | ACID Serializable Isolation within Transactions, Read Committed outside of Transactions | no | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes with automatic compression on writes | yes, by using IndexedDB or the cloud service Firebase Realtime Database | no except by serializing a db to a file | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes using MemoryDB | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights per client and object definable | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | no | no | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Geode | Google Cloud Datastore | LevelDB | Lovefield | SQL.JS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript This is how much one of the most expensive gems costs at the Tucson gem show Victor I. Cazares Wants NYTW to Call for Ceasefire in Gaza Reactive Event Processing with Apache Geode 1. Introduction to Pivotal GemFire In-Memory Data Grid and Apache Geode - Scaling Data Services with Pivotal ... Where Does Apache Geode Fit in CQRS Architectures? provided by Google News Google Cloud Stops Exit Fees BigID Data Intelligence Platform Now Available on Google Cloud Marketplace Inside Google’s strategic move to eliminate customer cloud data transfer fees Best cloud storage of 2024 What is Google App Engine? | Definition from TechTarget provided by Google News Pliops unveils XDP-Rocks for RocksDB – Blocks and Files Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs XanMod, Liquorix Kernels Offer Some Advantages On AMD Ryzen 5 Notebook Rust-Based Info Stealers Abuse GitHub Codespaces Threat Thursday: BlackGuard Infostealer Rises from Russian Underground Markets provided by Google News 9 Best JavaScript and TypeScript ORMs for 2024 — SitePoint Execute millions of SQL statements in milliseconds in the browser with WebAssembly and Web Workers. SQLite On The Web: Absurd-sql Running PostgreSQL Inside Your Browser LokiJS - A JavaScript Database provided by Google News |
Share this page