DBMS > Apache Phoenix vs. Faircom DB vs. OrientDB vs. RethinkDB vs. Sphinx
System Properties Comparison Apache Phoenix vs. Faircom DB vs. OrientDB vs. RethinkDB vs. Sphinx
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | Faircom DB formerly c-treeACE Xexclude from comparison | OrientDB Xexclude from comparison | RethinkDB Xexclude from comparison | Sphinx Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | Native high-speed multi-model DBMS for relational and key-value store data simultaneously accessible through SQL and NoSQL APIs. | Multi-model DBMS (Document, Graph, Key/Value) | DBMS for the Web with a mechanism to push updated query results to applications in realtime. | Open source search engine for searching in data from different sources, e.g. relational databases | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store Relational DBMS | Document store Graph DBMS Key-value store | Document store | Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | www.faircom.com/products/faircom-db | orientdb.org | rethinkdb.com | sphinxsearch.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | docs.faircom.com/docs/en/UUID-7446ae34-a1a7-c843-c894-d5322e395184.html | www.orientdb.com/docs/last/index.html | rethinkdb.com/docs | sphinxsearch.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | FairCom Corporation | OrientDB LTD; CallidusCloud; SAP | The Linux Foundation since July 2017 | Sphinx Technologies Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 1979 | 2010 | 2009 | 2001 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | V12, November 2020 | 3.2.29, March 2024 | 2.4.1, August 2020 | 3.5.1, February 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | commercial Restricted, free version available | Open Source Apache version 2 | Open Source Apache Version 2 | Open Source GPL version 2, commercial licence 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 | ANSI C, C++ | Java | C++ | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | AIX FreeBSD HP-UX Linux NetBSD OS X QNX SCO Solaris VxWorks Windows easily portable to other OSs | All OS with a Java JDK (>= JDK 6) | Linux OS X Windows | FreeBSD Linux NetBSD OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | schema free, schema optional, schema required, partial schema, | schema-free Schema can be enforced for whole record ("schema-full") or for some fields only ("schema-hybrid") | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes, ANSI SQL Types, JSON, typed binary structures | yes | yes string, binary, float, bool, date, geometry | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 full-text index on all search fields | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | yes, ANSI SQL with proprietary extensions | SQL-like query language, no joins | no | SQL-like query language (SphinxQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | ADO.NET Direct SQL JDBC JPA ODBC RESTful HTTP/JSON API RESTful MQTT/JSON API RPC | Tinkerpop technology stack with Blueprints, Gremlin, Pipes Java API RESTful HTTP/JSON API | Proprietary protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | .Net C C# C++ Java JavaScript (Node.js and browser) PHP Python Visual Basic | .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 | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | yes .Net, JavaScript, C/C++ | Java, Javascript | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | Hooks | Client-side triggers through changefeeds | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | File partitioning, horizontal partitioning, sharding Customizable business rules for table partitioning | Sharding | Sharding range based | Sharding Partitioning is done manually, search queries against distributed index is supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | yes, configurable to be parallel or serial, synchronous or asynchronous, uni-directional or bi-directional, ACID-consistent or eventually consistent (with custom conflict resolution). | Multi-source replication | Source-replica replication | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | no | no could be achieved with distributed queries | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Eventual Consistency Immediate Consistency Tunable consistency per server, database, table, and transaction | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | yes relationship in graphs | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | tunable from ACID to Eventually Consistent | ACID | Atomic single-document operations | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes MVCC based | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | Yes, tunable from durable to delayed durability to in-memory | yes | yes | yes The original contents of fields are not stored in the Sphinx index. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | 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 with additional protections for files | Access rights for users and roles; record level security configurable | yes users and table-level permissions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Faircom DB formerly c-treeACE | OrientDB | RethinkDB | Sphinx | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Meet some database management systems you are likely to hear more about in the future | The DB-Engines ranking includes now search engines 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 FairCom Unveils New Look, FairCom DB v13: Introducing 'DB Made Simple' FairCom kicks off new era of database technology USA - English 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 HNS IoT Botnet Evolves, Goes Cross-Platform provided by Google News An introduction to building realtime apps with RethinkDB How to Use RethinkDB with Node.js Applications — SitePoint 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 Switching From Sphinx to MkDocs Documentation — What Did I Gain and Lose Manticore is a Faster Alternative to Elasticsearch in C++ Perplexity AI: From Its Use To Operation, Everything You Need To Know About Google's Newest Challenger The Pirate Bay was recently down for over a week due to a DDoS attack Beyond the Concert Hall: 5 Organizations Making a Difference in Classical Music in 2018 | WQXR Editorial provided by Google News |
Share this page