DBMS > Geode vs. Postgres-XL vs. SingleStore vs. Trino vs. XTDB
System Properties Comparison Geode vs. Postgres-XL vs. SingleStore vs. Trino vs. XTDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Geode Xexclude from comparison | Postgres-XL Xexclude from comparison | SingleStore former name was MemSQL Xexclude from comparison | Trino Xexclude from comparison | XTDB formerly named Crux Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Geode is a distributed data container, pooling memory, CPU, network resources, and optionally local disk across multiple processes | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | MySQL wire-compliant distributed RDBMS that combines an in-memory row-oriented and a disc-based column-oriented storage with patented universal storage to handle transactional and analytical workloads in one single table type | Fast distributed SQL query engine for big data analytics. Forked from Presto and originally named PrestoSQL | A general purpose database with bitemporal SQL and Datalog and graph queries | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Relational DBMS | Relational DBMS | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Document store Spatial DBMS Time Series DBMS Vector DBMS | Document store Key-value store Spatial DBMS Search engine Time Series DBMS Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | geode.apache.org | www.postgres-xl.org | www.singlestore.com | trino.io | github.com/xtdb/xtdb www.xtdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | geode.apache.org/docs | www.postgres-xl.org/documentation | docs.singlestore.com | trino.io/broadcast trino.io/docs/current | www.xtdb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Originally developed by Gemstone. They outsourced the project to Apache in 2015 but still deliver a commercial version as Gemfire. | SingleStore Inc. | Trino Software Foundation | Juxt Ltd. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2002 | 2014 since 2012, originally named StormDB | 2013 | 2012 2020 rebranded from PrestoSQL | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.1, February 2017 | 10 R1, October 2018 | 8.5, January 2024 | 1.19, September 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2; commercial licenses available as Gemfire | Open Source Mozilla public license | commercial free developer edition available | Open Source Apache Version 2.0 | Open Source MIT License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | 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 | C++, Go | Java | Clojure | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM the JDK (8 or later) is also required | Linux macOS | Linux 64 bit version required | Linux macOS for devlopment | All OS with a Java 8 (and higher) VM Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | 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 | yes XML type, but no XML query functionality | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | depending on connected data-source | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language (OQL) | yes distributed, parallel query execution | yes but no triggers and foreign keys | yes | limited SQL, making use of Apache Calcite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java Client API Memcached protocol RESTful HTTP API | ADO.NET JDBC native C library ODBC streaming API for large objects | Cluster Management API as HTTP Rest and CLI HTTP API JDBC MongoDB API ODBC | JDBC RESTful HTTP API Trino CLI | HTTP REST JDBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net All JVM based languages C++ Groovy Java Scala | .Net C C++ Delphi Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | Bash C C# Java JavaScript (Node.js) Python | Go Java JavaScript (Node.js) Python R Ruby | Clojure Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | user defined functions | yes | yes, depending on connected data-source | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes Cache Event Listeners | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | horizontal partitioning | Sharding hash partitioning | depending on connected data-source | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication | Source-replica replication stores two copies of each physical data partition on two separate nodes | depending on connected data-source | yes, each node contains all data | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no can define user-defined aggregate functions for map-reduce-style calculations | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Immediate Consistency | Immediate Consistency | depending on connected data-source | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes, on a single node | ACID MVCC | ACID | depending on connected data-source | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes, multi-version concurrency control (MVCC) | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes All updates are persistent, including those to disk-based columnstores and memory-based row stores. Transaction commits are supported via write-ahead log. | depending on connected data-source | 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. | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights per client and object definable | fine grained access rights according to SQL-standard | Fine grained access control via users, groups and roles | SQL standard access control | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Geode | Postgres-XL | SingleStore former name was MemSQL | Trino | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | 23 is a go, keeping pace with Java 65: Performance boosts 64: Control with Open Policy Agent OPA 63: Querying with JS 62: A lakehouse that simply works at Prezi | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 | Postgres-XL | SingleStore former name was MemSQL | Trino | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Turbocharge Your Application Development Using WebAssembly With SingleStoreDB Cloud-Based Analytics With SingleStoreDB SingleStore: The Increasing Momentum of Multi-Model Database Systems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | This is how much one of the most expensive gems costs at the Tucson gem show Chapter 1. Introduction to Pivotal GemFire In-Memory Data Grid and Apache Geode RDBMS and Apache Geode Data Movement: Low Latency ETL Pipeline by Using Cloud-Native Event Driven Microservices HPE buys query acceleration platform Ampool to boost Ezmeral hybrid cloud analytics HPE acquires Ampool to gain distributed SQL engine provided by Google News | SingleStore Partners With Snowflake to Help Users Build Faster, More Efficient Real Time AI Applications Third time was the charm for SingleStore in the cloud, CEO says SingleStore CEO sees little future for purpose-built vector databases Achieve near real-time analytics on Amazon DynamoDB with SingleStore Building a Modern Database: Nikita Shamgunov on Postgres and Beyond provided by Google News | The Perfect AI Storage: Trino From Facebook And Iceberg From Netflix? A look at Presto, Trino SQL query engines Trino: The Open-source Data Query Engine That Split from Facebook Query big data with resilience using Trino in Amazon EMR with Amazon EC2 Spot Instances for less cost Starburst accelerates Trino to ‘Warp Speed’ to accelerate data querying provided by Google News |
Share this page