DBMS > Apache Phoenix vs. CouchDB vs. GraphDB vs. OrientDB vs. RethinkDB
System Properties Comparison Apache Phoenix vs. CouchDB vs. GraphDB vs. OrientDB vs. RethinkDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" Xexclude from comparison | GraphDB former name: OWLIM Xexclude from comparison | OrientDB Xexclude from comparison | RethinkDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | A native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones. | Enterprise-ready RDF and graph database with efficient reasoning, cluster and external index synchronization support. It supports also SQL JDBC access to Knowledge Graph and GraphQL over SPARQL. | Multi-model DBMS (Document, Graph, Key/Value) | DBMS for the Web with a mechanism to push updated query results to applications in realtime. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Graph DBMS RDF store | Document store Graph DBMS Key-value store | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS using the Geocouch extension | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | couchdb.apache.org | www.ontotext.com | orientdb.org | rethinkdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | docs.couchdb.org/en/stable | graphdb.ontotext.com/documentation | www.orientdb.com/docs/last/index.html | rethinkdb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Apache Software Foundation Apache top-level project, originally developed by Damien Katz, a former Lotus Notes developer | Ontotext | OrientDB LTD; CallidusCloud; SAP | The Linux Foundation since July 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2005 | 2000 | 2010 | 2009 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | 3.3.3, December 2023 | 10.4, October 2023 | 3.2.29, March 2024 | 2.4.1, August 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source Apache version 2 | commercial Some plugins of GraphDB Workbench are open sourced | Open Source Apache version 2 | Open Source Apache Version 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Erlang | Java | Java | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | Android BSD Linux OS X Solaris Windows | All OS with a Java VM Linux OS X Windows | All OS with a Java JDK (>= JDK 6) | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | schema-free | schema-free and OWL/RDFS-schema support; RDF shapes | schema-free Schema can be enforced for whole record ("schema-full") or for some fields only ("schema-hybrid") | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | no | yes | yes | yes string, binary, float, bool, date, geometry | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes via views | yes, supports real-time synchronization and indexing in SOLR/Elastic search/Lucene and GeoSPARQL geometry data indexes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | no | stored SPARQL accessed as SQL using Apache Calcite through JDBC/ODBC | SQL-like query language, no joins | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | RESTful HTTP/JSON API | GeoSPARQL GraphQL GraphQL Federation Java API JDBC RDF4J API RDFS RIO Sail API Sesame REST HTTP Protocol SPARQL 1.1 | Tinkerpop technology stack with Blueprints, Gremlin, Pipes Java API RESTful HTTP/JSON API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | C C# ColdFusion Erlang Haskell Java JavaScript Lisp Lua Objective-C OCaml Perl PHP PL/SQL Python Ruby Smalltalk | .Net C# Clojure Java JavaScript (Node.js) PHP Python Ruby Scala | .Net C C# C++ Clojure Java JavaScript JavaScript (Node.js) PHP Python Ruby Scala | C community-supported driver C# community-supported driver C++ community-supported driver Clojure community-supported driver Dart community-supported driver Erlang community-supported driver Go community-supported driver Haskell community-supported driver Java official driver JavaScript (Node.js) official driver Lisp community-supported driver Lua community-supported driver Objective-C community-supported driver Perl community-supported driver PHP community-supported driver Python official driver Ruby official driver Scala community-supported driver | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | View functions in JavaScript | well-defined plugin interfaces; JavaScript server-side extensibility | Java, Javascript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | no | Hooks | Client-side triggers through changefeeds | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding improved architecture with release 2.0 | none | Sharding | Sharding range based | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-source replication Source-replica replication | Multi-source replication | Multi-source replication | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | yes | no | no could be achieved with distributed queries | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Eventual Consistency | Immediate Consistency, Eventual consistency (configurable in cluster mode per master or individual client request) | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes Constraint checking | yes relationship in graphs | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no atomic operations within a single document possible | ACID | ACID | Atomic single-document operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes strategy: optimistic locking | yes | yes | yes MVCC based | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | 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 | Access rights for users can be defined per database | Default Basic authentication through RDF4J client, or via Java when run with cURL, default token-based in the Workbench or via Rest API, optional access through OpenID or Kerberos single sign-on. | Access rights for users and roles; record level security configurable | yes users and table-level permissions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Phoenix | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | GraphDB former name: OWLIM | OrientDB | RethinkDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Ontotext GraphDB is a semantic database engine that allows organizations to build... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | GraphDB allows you to link text and data in big knowledge graphs. It’s easy to experiment... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Metadata enrichment and management, linked data publishing, semantic inferencing... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | GraphDB provides a platform for building next-generation AI and Knowledge Graph... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | GraphDB is the most utilized semantic triplestore for mission-critical enterprise... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | GraphDB Free is a non-commercial version and is free to use. GraphDB Enterprise edition... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Riding the Databricks Wave with Hybrid Knowledge Graphs Matching Skills and Candidates with Graph RAG A Triple Store RAG Retriever Integrating GraphDB with Relational Database Systems Understanding the Graph Center of Excellence | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | GraphDB former name: OWLIM | OrientDB | RethinkDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | Graph DBMS increased their popularity by 500% within the last 2 years Graph DBMSs are gaining in popularity faster than any other database category | Meet some database management systems you are likely to hear more about in the future 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 DB Ransom Attacks Spread to CouchDB and Hadoop How to Automate A Blog Post App Deployment With GitHub Actions, Node.js, CouchDB, and Aptible How to install the CouchDB NoSQL database on Debian Server 11 IBM Cloudant pulls plan to fund new foundational layer for CouchDB CouchDB 3.0 ends admin party era • DEVCLASS provided by Google News Ontotext's GraphDB Solution is Now Available on the Microsoft Azure Marketplace Ontotext Unveils GraphDB 10.4 with Enhanced AWS Integration and ChatGPT Connector Ontotext Platform 3.0 for Enterprise Knowledge Graphs Released Ontotext's GraphDB 8.10 Makes Knowledge Graph Experience Faster and Richer Ontotext's GraphDB 10 Brings Modern Data Architectures to the Mainstream with Better Resilience and Еаsier Operations provided by Google News OrientDB: A Flexible and Scalable Multi-Model NoSQL DBMS Comparing Graph Databases II. Part 2: ArangoDB, OrientDB, and… | by Sam Bell The 12 Best Graph Databases to Consider for 2024 ArangoDB raises $10 million for NoSQL database management Introducing Gremlin The Graph Database provided by Google News How to Use RethinkDB with Node.js Applications — SitePoint An introduction to building realtime apps with RethinkDB Stripe acquires team behind NoSQL database startup RethinkDB RethinkDB is dead, and MongoDB isn't what killed it MongoDB: The Popular Database for IoT provided by Google News |
Share this page