DBMS > Apache Phoenix vs. Geode vs. Spark SQL vs. Titan vs. Transbase
System Properties Comparison Apache Phoenix vs. Geode vs. Spark SQL vs. Titan vs. Transbase
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | Geode Xexclude from comparison | Spark SQL Xexclude from comparison | Titan Xexclude from comparison | Transbase Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Titan has been decommisioned after the takeover by Datastax. It will be removed from the DB-Engines ranking. A fork has been open-sourced as JanusGraph. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | Geode is a distributed data container, pooling memory, CPU, network resources, and optionally local disk across multiple processes | Spark SQL is a component on top of 'Spark Core' for structured data processing | Titan is a Graph DBMS optimized for distributed clusters. | A resource-optimized, high-performance, universally applicable RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store | Relational DBMS | Graph DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | geode.apache.org | spark.apache.org/sql | github.com/thinkaurelius/titan | www.transaction.de/en/products/transbase.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | geode.apache.org/docs | spark.apache.org/docs/latest/sql-programming-guide.html | github.com/thinkaurelius/titan/wiki | www.transaction.de/en/products/transbase/features.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Originally developed by Gemstone. They outsourced the project to Apache in 2015 but still deliver a commercial version as Gemfire. | Apache Software Foundation | Aurelius, owned by DataStax | Transaction Software GmbH | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2002 | 2014 | 2012 | 1987 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | 1.1, February 2017 | 3.5.0 ( 2.13), September 2023 | Transbase 8.3, 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source Apache Version 2; commercial licenses available as Gemfire | Open Source Apache 2.0 | Open Source Apache license, version 2.0 | commercial free development 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 | Java | Scala | Java | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | All OS with a Java VM the JDK (8 or later) is also required | Linux OS X Windows | Linux OS X Unix Windows | FreeBSD Linux macOS Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | schema-free | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | 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 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | SQL-like query language (OQL) | SQL-like DML and DDL statements | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | Java Client API Memcached protocol RESTful HTTP API | JDBC ODBC | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | ADO.NET JDBC ODBC Proprietary native API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | .Net All JVM based languages C++ Groovy Java Scala | Java Python R Scala | Clojure Java Python | C C# C++ Java JavaScript Kotlin Objective-C PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | user defined functions | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes Cache Event Listeners | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | yes, utilizing Spark Core | yes via pluggable storage backends | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-source replication | none | yes | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | no | yes via Faunus, a graph analytics engine | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Eventual Consistency | Eventual Consistency Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes Relationships in graph | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | yes, on a single node | no | ACID | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access Control Lists (using HBase ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC, multi-tenancy | Access rights per client and object definable | no | User authentification and security via Rexster Graph Server | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Phoenix | Geode | Spark SQL | Titan | Transbase | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions | Graph DBMS increased their popularity by 500% within the last 2 years Graph DBMSs are gaining in popularity faster than any other database category | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Supercharge SQL on Your Data in Apache HBase with Apache Phoenix | Amazon Web Services Bridge the SQL-NoSQL gap with Apache Phoenix Apache Calcite, FreeMarker, Gora, Phoenix, and Solr updated What Is HBase? (Definition, Uses, Benefits, Features) Azure HDInsight Analytics Platform Now Supports Apache Hadoop 3.0 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' 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 | Use Amazon Athena with Spark SQL for your open-source transactional table formats | Amazon Web Services What is Apache Spark? The big data platform that crushed Hadoop Cracking the Apache Spark Interview: 80+ Top Questions and Answers for 2024 Performant IPv4 Range Spark Joins | by Jean-Claude Cote Run Apache Hive workloads using Spark SQL with Amazon EMR on EKS | Amazon Web Services provided by Google News | Amazon DynamoDB Storage Backend for Titan: Distributed Graph Database | Amazon Web Services Beyond Titan: The Evolution of DataStax's New Graph Database Titan Graph Database Integration with DynamoDB: World-class Performance, Availability, and Scale for New Workloads DataStax acquires Aurelius, the startup behind the Titan graph database DSE Graph review: Graph database does double duty provided by Google News |
Share this page