DBMS > Apache Phoenix vs. Cubrid vs. IBM Db2 vs. JanusGraph vs. TypeDB
System Properties Comparison Apache Phoenix vs. Cubrid vs. IBM Db2 vs. JanusGraph vs. TypeDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | Cubrid Xexclude from comparison | IBM Db2 formerly named DB2 or IBM Database 2 Xexclude from comparison | JanusGraph successor of Titan Xexclude from comparison | TypeDB formerly named Grakn Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | CUBRID is an open-source SQL-based relational database management system with object extensions for OLTP | Common in IBM host environments, 2 different versions for host and Windows/Linux | A Graph DBMS optimized for distributed clusters It was forked from the latest code base of Titan in January 2017 | TypeDB is a strongly-typed database with a rich and logical type system and TypeQL as its query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Relational DBMS Since Version 10.5 support for JSON/BSON documents compatible with MongoDB | Graph DBMS | Graph DBMS Relational DBMS Often described as a 'hyper-relational' database, since it implements the 'Entity-Relationship Paradigm' to manage complex data structures and ontologies. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store RDF store in Db2 LUW (Linux, Unix, Windows) Spatial DBMS with Db2 Spatial Extender | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | cubrid.com (korean) cubrid.org (english) | www.ibm.com/products/db2 | janusgraph.org | typedb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | cubrid.org/manuals | www.ibm.com/docs/en/db2 | docs.janusgraph.org | typedb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | CUBRID Corporation, CUBRID Foundation | IBM | Linux Foundation; originally developed as Titan by Aurelius | Vaticle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2008 | 1983 host version | 2017 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | 11.0, January 2021 | 12.1, October 2016 | 0.6.3, February 2023 | 2.26.3, January 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source Apache Version 2.0 | commercial free version is available | Open Source Apache 2.0 | Open Source GPL Version 3, commercial licenses available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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++, Java | C and C++ | Java | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | Linux Windows | AIX HP-UX Linux Solaris Windows z/OS | Linux OS X Unix Windows | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | yes | 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 | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | ADO.NET JDBC ODBC OLE DB | ADO.NET JDBC JSON style queries MongoDB compatible ODBC XQuery | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | gRPC protocol TypeDB Console (shell) TypeDB Studio (Visualisation software- previously TypeDB Workbase) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | C C# C++ Go Java JavaScript (Node.js) Perl PHP Python Ruby | C C# C++ Cobol Delphi Fortran Java Perl PHP Python Ruby Visual Basic | Clojure Java Python | All JVM based languages Groovy Java JavaScript (Node.js) Python Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | Java Stored Procedures | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding only with Windows/Unix/Linux Version | yes depending on the used storage backend (e.g. Cassandra, HBase, BerkeleyDB) | Sharding by using Cassandra | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Source-replica replication | yes with separate tools (MQ, InfoSphere) | yes | Multi-source replication by using Cassandra | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | no | no | yes via Faunus, a graph analytics engine | yes by using Apache Kafka and Apache Zookeeper | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | yes | yes Relationships in graphs | no substituted by the relationship feature | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | ACID | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access Control Lists (using HBase ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC, multi-tenancy | fine grained access rights according to SQL-standard | fine grained access rights according to SQL-standard | User authentification and security via Rexster Graph Server | yes at REST API level; other APIs in progress | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Phoenix | Cubrid | IBM Db2 formerly named DB2 or IBM Database 2 | JanusGraph successor of Titan | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | TypeDB is a polymorphic database with a conceptual data model, a strong subtyping... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | TypeDB provides a new level of expressivity, extensibility, interoperability, and... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Life sciences : TypeDB makes working with biological data much easier and accelerates... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Apache f or language drivers, and AGPL and Commercial for the database server. The... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Phoenix | Cubrid | IBM Db2 formerly named DB2 or IBM Database 2 | JanusGraph successor of Titan | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Azure HDInsight Analytics Platform Now Supports Apache Hadoop 3.0 Deep dive into Azure HDInsight 4.0 provided by Google News | Use AWS DMS to migrate data from IBM Db2 DPF to an AWS target | Amazon Web Services IBM Collaborates with AWS to Launch a New Cloud Database Offering, Enabling Customers to Optimize Data ... IBM's vintage Db2 database jumps on AWS's cloud bandwagon Precisely Supports Amazon RDS for Db2 Service with Real-Time Data Integration Capabilities Blog Theme - Details provided by Google News | Database Deep Dives: JanusGraph JanusGraph Picks Up Where TitanDB Left Off From graph db to graph embedding. In 7 simple steps. | by Andy Greatorex Nordstrom Builds Flexible Backend Ops with Kubernetes, Spark and JanusGraph Compose for JanusGraph arrives on Bluemix provided by Google News | Modelling Biomedical Data for a Drug Discovery Knowledge Graph Spacecraft Engineering Models: How to Migrate UML to TypeQL How Roche Discovered Novel Potential Gene Targets with TypeDB Building a Biomedical Knowledge Graph | by Daniel Crowe Bayer's Approach to Modelling and Loading Data at Scale provided by Google News |
Share this page