DBMS > Elasticsearch vs. Google Cloud Bigtable vs. GridDB vs. GridGain vs. XTDB
System Properties Comparison Elasticsearch vs. Google Cloud Bigtable vs. GridDB vs. GridGain vs. XTDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Elasticsearch Xexclude from comparison | Google Cloud Bigtable Xexclude from comparison | GridDB Xexclude from comparison | GridGain Xexclude from comparison | XTDB formerly named Crux Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed, RESTful modern search and analytics engine based on Apache Lucene Elasticsearch lets you perform and combine many types of searches such as structured, unstructured, geo, and metric | Google's NoSQL Big Data database service. It's the same database that powers many core Google services, including Search, Analytics, Maps, and Gmail. | Scalable in-memory time series database optimized for IoT and Big Data | GridGain is an in-memory computing platform, built on Apache Ignite | A general purpose database with bitemporal SQL and Datalog and graph queries | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Search engine Vector DBMS | Key-value store Wide column store | Time Series DBMS | Columnar Key-value store Object oriented DBMS Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Key-value store Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.elastic.co/elasticsearch | cloud.google.com/bigtable | griddb.net | www.gridgain.com | github.com/xtdb/xtdb www.xtdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | cloud.google.com/bigtable/docs | docs.griddb.net | www.gridgain.com/docs/index.html | www.xtdb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Elastic | Toshiba Corporation | GridGain Systems, Inc. | Juxt Ltd. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2015 | 2013 | 2007 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.6, January 2023 | 5.1, August 2022 | GridGain 8.5.1 | 1.19, September 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Elastic License | commercial | Open Source AGPL version 3 and Apache License, version 2.0 , commercial license (standard and advanced editions) also available | commercial, open source | Open Source MIT License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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++ | Java, C++, .Net, Python, REST, SQL | Clojure | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | hosted | Linux | Linux OS X Solaris Windows z/OS | All OS with a Java 8 (and higher) VM Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Flexible type definitions. Once a type is defined, it is persistent | schema-free | yes | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | no | yes numerical, string, blob, geometry, boolean, timestamp | yes | yes, extensible-data-notation format | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes All search fields are automatically indexed | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | no | SQL92, SQL-like TQL (Toshiba Query Language) | ANSI-99 for query and DML statements, subset of DDL | limited SQL, making use of Apache Calcite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP/JSON API | gRPC (using protocol buffers) API HappyBase (Python library) HBase compatible API (Java) | JDBC ODBC Proprietary protocol RESTful HTTP/JSON API | HDFS API Hibernate JCache JDBC ODBC Proprietary protocol RESTful HTTP API Spring Data | HTTP REST JDBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | C# C++ Go Java JavaScript (Node.js) Python | C C++ Go Java JavaScript (Node.js) Perl PHP Python Ruby | C# C++ Java PHP Python Ruby Scala | Clojure Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | no | no | yes (compute grid and cache interceptors can be used instead) | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by using the 'percolation' feature | no | yes | yes (cache interceptors and events) | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | Sharding | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | Internal replication in Colossus, and regional replication between two clusters in different zones | Source-replica replication | yes (replicated cache) | yes, each node contains all data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | ES-Hadoop Connector | yes | Connector for using GridDB as an input source and output destination for Hadoop MapReduce jobs | yes (compute grid and hadoop accelerator) | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Immediate consistency (for a single cluster), Eventual consistency (for two or more replicated clusters) | Immediate consistency within container, eventual consistency across containers | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | Atomic single-row operations | ACID at container level | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes, flexibel persistency by using storage technologies like Apache Kafka, RocksDB or LMDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Memcached and Redis integration | no | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | Access rights for users can be defined per database | Role-based access control Security Hooks for custom implementations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | Google Cloud Bigtable | GridDB | GridGain | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | PostgreSQL is the DBMS of the Year 2017 Elasticsearch moved into the top 10 most popular database management systems MySQL, PostgreSQL and Redis are the winners of the March ranking | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Amazon OpenSearch Service announces Standard and Extended Support dates for Elasticsearch and OpenSearch versions Elastic Simplifies Elasticsearch Management with AutoOps Integration Elastic Simplifies Elasticsearch Management with AutoOps Integration Elasticsearch will be open source again as CTO declares changed landscape Elastic returns to open source, but can it regain the community’s trust? Some industry players aren’t holding their breath provided by Google News | Google Cloud adds graph processing to Spanner, SQL support to Bigtable Google introduces Bigtable SQL access and Spanner's new AI-ready features Google Cloud Rolls Out Axion-Based C4A VMs for Improved Performance Google Cloud expands its database portfolio with new AI capabilities Sifflet Achieves Google Cloud Ready - BigQuery Designation provided by Google News | Enterprise Edition with Improved Fault Tolerance and a New Affordable Monthly Plan for GridDB Toshiba launches cloudy managed IoT database service running its own GridDB Amazon Proposes to Develop New Data Center Campus in Virginia | TOSHIBA DIGITAL SOLUTIONS CORPORATION provided by Google News | GridGain Sponsoring Strategic AI and Kafka Conferences This Month GridGain in-memory data and generative AI Data Management News for the Week of July 12; Updates from Cloudera, HerculesAI, Oracle & More GridGain, Apache Ignite founder talks in-memory databases First Apache Ignite Summit Energizes Global Audience provided by Google News |
Share this page