DBMS > CrateDB vs. etcd vs. Geode vs. Google Cloud Spanner
System Properties Comparison CrateDB vs. etcd vs. Geode vs. Google Cloud Spanner
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CrateDB Xexclude from comparison | etcd Xexclude from comparison | Geode Xexclude from comparison | Google Cloud Spanner Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Distributed Database based on Lucene | A distributed reliable key-value store | Geode is a distributed data container, pooling memory, CPU, network resources, and optionally local disk across multiple processes | A horizontally scalable, globally consistent, relational database service. It is the externalization of the core Google database that runs the biggest aspects of Google, like Ads and Google Play. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Spatial DBMS Search engine Time Series DBMS Vector DBMS | Key-value store | Key-value store | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cratedb.com | etcd.io github.com/etcd-io/etcd | geode.apache.org | cloud.google.com/spanner | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cratedb.com/docs | etcd.io/docs github.com/etcd-io/etcd/tree/master/Documentation | geode.apache.org/docs | cloud.google.com/spanner/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Crate | Originally developed by Gemstone. They outsourced the project to Apache in 2015 but still deliver a commercial version as Gemfire. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2002 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.8.1, August 2024 | 3.4, August 2019 | 1.1, February 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source | Open Source Apache Version 2.0 | Open Source Apache Version 2; commercial licenses available as Gemfire | commercial | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Go | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All Operating Systems, including Kubernetes with CrateDB Kubernetes Operator support | FreeBSD Linux Windows experimental | All OS with a Java VM the JDK (8 or later) is also required | hosted | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | Flexible Schema (defined schema, partial schema, schema free) | schema-free | schema-free | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes, but no triggers and constraints, and PostgreSQL compatibility | no | SQL-like query language (OQL) | yes Query statements complying to ANSI 2011 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC ODBC PostgreSQL wire protocol Prometheus Remote Read/Write RESTful HTTP API | gRPC JSON over HTTP | Java Client API Memcached protocol RESTful HTTP API | gRPC (using protocol buffers) API JDBC At present, JDBC supports read-only queries. No support for DDL or DML statements. RESTful HTTP API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .NET Erlang Go community maintained client Java JavaScript (Node.js) community maintained client Perl community maintained client PHP Python R Ruby community maintained client Scala community maintained client | .Net C C++ Clojure Erlang Go Haskell Java JavaScript (Node.js) Perl PHP Python R Ruby Rust Scala Tcl | .Net All JVM based languages C++ Groovy Java Scala | Go Java JavaScript (Node.js) Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions (Javascript) | no | user defined functions | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes, watching key changes | yes Cache Event Listeners | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Configurable replication on table/partition-level | Using Raft consensus algorithm to ensure data replication with strong consistency among multiple replicas. | Multi-source replication | Multi-source replication with 3 replicas for regional instances. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes using Google Cloud Dataflow | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Read-after-write consistency on record level | Immediate Consistency | Eventual Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes by using interleaved tables, this features focuses more on performance improvements than on referential integrity | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no unique row identifiers can be used for implementing an optimistic concurrency control strategy | no | yes, on a single node | ACID Strict serializable isolation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | rights management via user accounts | no | Access rights per client and object definable | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CrateDB | etcd | Geode | Google Cloud Spanner | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | CrateDB Appoints Jeff Olson as New CRO CrateDB Announces Availability of CrateDB on Google Cloud Marketplace Taleo Consulting and CrateDB Announce Strategic Partnership to Transform Data Management and Analytics in Financial Services markets How We Designed CrateDB as a Realtime SQL DBMS for the Internet of Things CrateDB Appoints Sergey Gerasimenko as New CTO provided by Google News | ETCD guidelines: RBI seeks to balance rupee stability, competitiveness | Policy Circle Public preview: AKS cluster control plane metrics in managed Prometheus Is Your etcd an Open Door for Cyber Attacks? How to Secure Your Kubernetes Clusters & Nodes Monitor Amazon EKS Control Plane metrics using AWS Open Source monitoring services 6 Cool Kubernetes Operators and How to Use Them provided by Google News | This is how much one of the most expensive gems costs at the Tucson gem show Apache Geode Spawns ‘All Sorts of In-Memory Things’ RDBMS and Apache Geode Data Movement: Low Latency ETL Pipeline by Using Cloud-Native Event Driven Microservices Chapter 1. Introduction to Pivotal GemFire In-Memory Data Grid and Apache Geode HPE buys query acceleration platform Ampool to boost Ezmeral hybrid cloud analytics provided by Google News | Google Cloud Spanner gets dual-region configuration option Google Cloud adds graph and vector search features to Spanner database Google Cloud Enhances Spanner with Dual-Region Configuration New features make Google's Spanner a database for AI Google Cloud expands its database portfolio with new AI capabilities provided by Google News |
Share this page