DBMS > Apache Impala vs. Microsoft Azure Table Storage vs. PlanetScale vs. Titan vs. XTDB
System Properties Comparison Apache Impala vs. Microsoft Azure Table Storage vs. PlanetScale vs. Titan vs. XTDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Impala Xexclude from comparison | Microsoft Azure Table Storage Xexclude from comparison | PlanetScale Xexclude from comparison | Titan Xexclude from comparison | XTDB formerly named Crux 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 | Analytic DBMS for Hadoop | A Wide Column Store for rapid development using massive semi-structured datasets | Scalable, distributed, serverless MySQL database platform built on top of Vitess | Titan is a Graph DBMS optimized for distributed clusters. | A general purpose database with bitemporal SQL and Datalog and graph queries | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Wide column store | Relational DBMS | Graph DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Document store Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | impala.apache.org | azure.microsoft.com/en-us/services/storage/tables | planetscale.com | github.com/thinkaurelius/titan | github.com/xtdb/xtdb www.xtdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | impala.apache.org/impala-docs.html | planetscale.com/docs | github.com/thinkaurelius/titan/wiki | www.xtdb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Cloudera | Microsoft | PlanetScale | Aurelius, owned by DataStax | Juxt Ltd. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2012 | 2020 | 2012 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.0, June 2022 | 1.19, September 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | commercial | commercial | Open Source Apache license, version 2.0 | Open Source MIT License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | Go | Java | Clojure | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | hosted | Docker Linux macOS | Linux OS X Unix Windows | All OS with a Java 8 (and higher) VM Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | 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 | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like DML and DDL statements | no | yes with proprietary extensions | no | limited SQL, making use of Apache Calcite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC | RESTful HTTP API | ADO.NET JDBC MySQL protocol ODBC | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | HTTP REST JDBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | All languages supporting JDBC/ODBC | .Net C# C++ Java JavaScript (Node.js) PHP Python Ruby | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | Clojure Java Python | Clojure Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes user defined functions and integration of map-reduce | no | yes proprietary syntax | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding Implicit feature of the cloud service | Sharding | yes via pluggable storage backends | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | yes implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | Multi-source replication Source-replica replication | yes | yes, each node contains all data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes query execution via MapReduce | no | no | yes via Faunus, a graph analytics engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Immediate Consistency | Eventual Consistency across shards Immediate Consistency within a shard | Eventual Consistency Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes not for MyISAM storage engine | yes Relationships in graph | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | optimistic locking | ACID at shard level | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes table locks or row locks depending on storage engine | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | 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. | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Apache Sentry and Kerberos | Access rights based on private key authentication or shared access signatures | Users with fine-grained authorization concept no user groups or roles | User authentification and security via Rexster Graph Server | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Impala | Microsoft Azure Table Storage | PlanetScale | Titan | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | 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 | Apache Impala 4 Supports Operator Multi-Threading Apache Impala becomes Top-Level Project Cloudera Bringing Impala to AWS Cloud Apache Doris just 'graduated': Why care about this SQL data warehouse Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop provided by Google News | Working with Azure to Use and Manage Data Lakes How to use Azure Table storage in .Net How to Use C# Azure.Data.Tables SDK with Azure Cosmos DB Inside Azure File Storage How to write data to Azure Table Store with an Azure Function provided by Google News | PlanetScale ends free tier bid, sheds staff in profitability bid PlanetScale Ranked Number 188 Fastest-Growing Company in North America on the 2023 Deloitte Technology Fast ... PlanetScale forks MySQL to add vector support PlanetScale Named to Fortune 2023 Best Small Workplaces How to Migrate to PlanetScale's Serverless Database provided by Google News | Titan Graph Database Integration with DynamoDB: World-class Performance, Availability, and Scale for New Workloads Amazon DynamoDB Storage Backend for Titan: Distributed Graph Database | Amazon Web Services JanusGraph Picks Up Where TitanDB Left Off 5 Q's with Graph Database Expert Marko Rodriguez – Center for Data Innovation DSE Graph review: Graph database does double duty provided by Google News |
Share this page