DBMS > Apache Phoenix vs. ClickHouse vs. Couchbase vs. Microsoft Azure Data Explorer vs. Sphinx
System Properties Comparison Apache Phoenix vs. ClickHouse vs. Couchbase vs. Microsoft Azure Data Explorer vs. Sphinx
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | ClickHouse Xexclude from comparison | Couchbase Originally called Membase Xexclude from comparison | Microsoft Azure Data Explorer Xexclude from comparison | Sphinx Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | A high-performance, column-oriented SQL DBMS for online analytical processing (OLAP) that uses all available system resources to their full potential to process each analytical query as fast as possible. It is available as both an open-source software and a cloud offering. | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Fully managed big data interactive analytics platform | Open source search engine for searching in data from different sources, e.g. relational databases | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Document store | Relational DBMS column oriented | Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Time Series DBMS | Key-value store originating from the former Membase product and supporting the Memcached protocol Spatial DBMS using the Geocouch extension Search engine Time Series DBMS Vector DBMS | Document store If a column is of type dynamic docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/dynamic then it's possible to add arbitrary JSON documents in this cell Event Store this is the general usage pattern at Microsoft. Billing, Logs, Telemetry events are stored in ADX and the state of an individual entity is defined by the arg_max(timestamps) Spatial DBMS Search engine support for complex search expressions docs.microsoft.com/en-us/azure/kusto/query/parseoperator FTS, Geospatial docs.microsoft.com/en-us/azure/kusto/query/geo-point-to-geohash-function distributed search -> ADX acts as a distributed search engine Time Series DBMS see docs.microsoft.com/en-us/azure/data-explorer/time-series-analysis | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | clickhouse.com | www.couchbase.com | azure.microsoft.com/services/data-explorer | sphinxsearch.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | clickhouse.com/docs | docs.couchbase.com | docs.microsoft.com/en-us/azure/data-explorer | sphinxsearch.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Clickhouse Inc. | Couchbase, Inc. | Microsoft | Sphinx Technologies Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2016 | 2011 | 2019 | 2001 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | v24.4.1.2088-stable, May 2024 | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | cloud service with continuous releases | 3.5.1, February 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source Apache 2.0 | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial | Open Source GPL version 2, commercial licence available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++ | C, C++, Go and Erlang | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | FreeBSD Linux macOS | Linux OS X Windows | hosted | FreeBSD Linux NetBSD OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | yes | schema-free | Fixed schema with schema-less datatypes (dynamic) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes bool, datetime, dynamic, guid, int, long, real, string, timespan, double: docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types | 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 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | all fields are automatically indexed | yes full-text index on all search fields | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | Close to ANSI SQL (SQL/JSON + extensions) | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | Kusto Query Language (KQL), SQL subset | SQL-like query language (SphinxQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | gRPC HTTP REST JDBC MySQL wire protocol ODBC PostgreSQL wire protocol Proprietary protocol | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | Proprietary protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | C# 3rd party library C++ Elixir 3rd party library Go 3rd party library Java 3rd party library JavaScript (Node.js) 3rd party library Kotlin 3rd party library Nim 3rd party library Perl 3rd party library PHP 3rd party library Python 3rd party library R 3rd party library Ruby 3rd party library Rust Scala 3rd party library | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | .Net Go Java JavaScript (Node.js) PowerShell Python R | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | yes | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | Yes, possible languages: KQL, Python, R | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes via the TAP protocol | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | key based and custom | Automatic Sharding | Sharding Implicit feature of the cloud service | 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 | Asynchronous and synchronous physical replication; geographically distributed replicas; support for object storages. | Multi-source replication including cross data center replication Source-replica replication | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | no | yes | Spark connector (open source): github.com/Azure/azure-kusto-spark | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Eventual Consistency Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | ACID | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | 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 | yes Ephemeral buckets | 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 and roles. Column and row based policies. Quotas and resource limits. Pluggable authentication with LDAP and Kerberos. Password based, X.509 certificate, and SSH key authentication. | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | Azure Active Directory Authentication | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | DoubleCloud: Fully managed ClickHouse alongside best-in-class managed open-source services to build analytics at scale. » more Aiven for Clickhouse: Managed cloud data warehousing with high-speed analytics. » more | CData: Connect to Big Data & NoSQL through standard Drivers. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Phoenix | ClickHouse | Couchbase Originally called Membase | Microsoft Azure Data Explorer | Sphinx | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | 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 Amazon EMR 4.7.0 – Apache Tez & Phoenix, Updates to Existing Apps | Amazon Web Services provided by Google News Why Clickhouse Should Be Your Next Database ClickHouse Cloud & Amazon S3 Express One Zone: Making a blazing fast analytical database even faster | Amazon ... ClickHouse Announces Launch of ClickPipes From Open Source to SaaS: the Journey of ClickHouse ClickHouse Announces ClickPipes: A Continuous Data Ingestion Service for ClickHouse Cloud provided by Google News Database company Couchbase files for U.S. IPO Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase Server and Capella to gain vector support Couchbase's database gets support for vector search and retrieval-augmented generation Couchbase Survey Finds Enterprises Plan Massive Spend on AI, with Over $21M Allocated in 2023-24 provided by Google News Azure Data Explorer: Log and telemetry analytics benchmark Providing modern data transfer and storage service at Microsoft with Microsoft Azure - Inside Track Blog Microsoft Introduces Azure Integration Environments and Business Process Tracking in Public Preview Controlling costs in Azure Data Explorer using down-sampling and aggregation Introducing Microsoft Fabric: The data platform for the era of AI | Microsoft Azure Blog 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 Googles Newest Challenger The Pirate Bay was recently down for over a week due to a DDoS attack How to Build 600+ Links in One Month provided by Google News |
Share this page