DBMS > Apache Drill vs. Elasticsearch vs. NCache vs. TiDB vs. YugabyteDB
System Properties Comparison Apache Drill vs. Elasticsearch vs. NCache vs. TiDB vs. YugabyteDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | Elasticsearch Xexclude from comparison | NCache Xexclude from comparison | TiDB Xexclude from comparison | YugabyteDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | A distributed, RESTful modern search and analytics engine based on Apache Lucene Elasticsearch lets you perform and combine many types of searches such as structured, unstructured, geo, and metric | Open-Source and Enterprise in-memory Key-Value Store | TiDB is an open source distributed SQL database that supports Hybrid Transactional/Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. | High-performance distributed SQL database for global, internet-scale applications. Wire and feature compatible with PostgreSQL. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Search engine | Key-value store | Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS Vector DBMS | Document store Search engine Using distributed Lucene | Document store | Document store Wide column store | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | www.elastic.co/elasticsearch | www.alachisoft.com/ncache | pingcap.com | www.yugabyte.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | www.alachisoft.com/resources/docs | docs.pingcap.com/tidb/stable | docs.yugabyte.com github.com/yugabyte/yugabyte-db | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Elastic | Alachisoft | PingCAP, Inc. | Yugabyte Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2010 | 2005 | 2016 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 8.6, January 2023 | 5.3.3, April 2024 | 8.0.0, March 2024 | 2.19, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source Elastic License | Open Source Enterprise Edition available | Open Source Apache 2.0 | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | TiDB Cloud: Fully-managed TiDB Service. Bring everything great about TiDB to the cloud. | YugabyteDB Managed is the fully managed database-as-a-service offering of YugabyteDB. Get started quickly, and effortlessly ensure continuous availability and limitless scale of your cloud native applications. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C#, .NET, .NET Core, Java | Go, Rust | C and C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | All OS with a Java VM | Linux Windows | Linux | Linux OS X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free Flexible type definitions. Once a type is defined, it is persistent | schema-free | yes | depending on used data model | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | partial Supported data types are Lists, Queues, Hashsets, Dictionary and Counter | 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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes All search fields are automatically indexed | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | SQL-like query language | SQL-like query syntax and LINQ for searching the cache. Cache Synchronization with SQL Server using SQL dependency. | yes | yes, PostgreSQL compatible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC RESTful HTTP API | Java API RESTful HTTP/JSON API | IDistributedCache JCache LINQ Proprietary native API | GORM JDBC ODBC Proprietary protocol SQLAlchemy | JDBC YCQL, an SQL-based flexible-schema API with its roots in Cassandra Query Language YSQL - a fully relational SQL API that is wire compatible with the SQL language in PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C++ | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | .Net .Net Core C# Java JavaScript (Node.js) Python Scala | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | C C# C++ Go Java JavaScript (Node.js) PHP Python Ruby Rust Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | yes | no support for stored procedures with SQL-Server CLR | no | yes sql, plpgsql, C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes by using the 'percolation' feature | yes Notifications | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | yes | horizontal partitioning (by key range) | Hash and Range Sharding, row-level geo-partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | yes, with selectable consistency level | Using Raft consensus algorithm to ensure data replication with strong consistency among multiple replicas. | Based on Raft distributed consensus protocol, minimum 3 replicas for continuous availability | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | ES-Hadoop Connector | yes | yes with TiSpark Connector | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Eventual Consistency Immediate Consistency Strong Eventual Consistency over WAN with Conflict Resolution using Bridge Topology | Immediate Consistency | Strong consistency on writes and tunable consistency on reads | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes full support since version 6.6 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | optimistic locking and pessimistic locking | ACID | Distributed ACID with Serializable & Snapshot Isolation. Inspired by Google Spanner architecture. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | Depending on the underlying data source | yes | yes | yes | yes based on RocksDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Depending on the underlying data source | Memcached and Redis integration | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | Authentication to access the cache via Active Directory/LDAP (possible roles: user, administrator) | Fine grained access rights according to SQL-standard | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | Elasticsearch | NCache | TiDB | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | NCache has been the market leader in .NET Distributed Caching since 2005 . NCache... » more | TiDB is an advanced open-source, distributed SQL database for modern application... » more | YugabyteDB is an open source distributed SQL database for cloud native transactional... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | NCache is 100% .NET/ .NET Core based which fully supports ASP.NET Core Sessions ,... » more | - HORIZONTAL SCALING : TiDB grants total transparency into your data workloads without... » more | PostgreSQL compatible: Get instantly productive with a PostgreSQL compatible RDBMS.... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | NCache enables industries like retail, finance, banking IoT, travel, ecommerce, healthcare... » more | TiDB is ideal for transactional applications that require extreme scalability and... » more | Systems of record and engagement for cloud native applications that require resilience,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Bank of America, Citi, Natures Way, Charter Spectrum, Barclays, Henry Schein, GBM,... » more | Block, Pinterest, Catalyst, Bolt, Flipkart, Capcom, Shopee (E-commerce), JD Cloud... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Market Leader in .NET Distributed Caching since 2005. » more | 34K+ GitHub stars 5K+ members in TiDB Community Slack 1K+ community contributors... » more | 2 Million+ lifetime clusters deployed, 6.5K+ GitHub stars, 7K YugabyteDB Community... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | NCache Open Source is free on an as-is basis without any support. NCache Enterprise... » more | TiDB Community : Free open source software (Apache 2.0) TiDB Self-Hosted : Enterprise... » more | Apache 2.0 license for the database » 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 Drill | Elasticsearch | NCache | TiDB | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | PostgreSQL is the DBMS of the Year 2017 Elasticsearch moved into the top 10 most popular database management systems MySQL, PostgreSQL and Redis are the winners of the March ranking | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Drill case study: A tutorial on processing CSV files Analyse Kafka messages with SQL queries using Apache Drill Apache Drill improves big data SQL query engine Apache Drill Eliminates ETL, Data Transformation for MapR Database Apache Drill Poised to Crack Tough Data Challenges provided by Google News | Understanding Elasticsearch Reindexing: When to Reindex, Best Practices and Alternatives Netflix Uses Elasticsearch Percolate Queries to Implement Reverse Searches Efficiently The Total Economic Impact™️ of Elasticsearch 8 Powerful Alternatives to Elasticsearch Red Hat and Elastic Fuel Retrieval Augmented Generation for GenAI Use Cases provided by Google News | How to use NCache in ASP.Net Core Custom Response Caching Using NCache in ASP.NET Core provided by Google News | How PingCAP transformed TiDB into a serverless DBaaS using Amazon S3 and Amazon EBS | Amazon Web Services How a new database architecture supports scale and reliability in TiDB PingCAP Launches TiDB 7.5, Enhancing Distributed SQL Database Tech Google Cloud's C3D Instances Provide Strong Performance Value For PingCAP's TiDB TiDB by PingCAP Leads Data Management Revolution at GIDS 2024, Empowering India's Burgeoning Developer ... provided by Google News | Yugabyte Achieves PCI DSS Level 1 Compliance, Validating Secure and Scalable Distributed PostgreSQL for ... YugabyteDB Becomes First Distributed SQL Database Vendor to Complete CIS Benchmark Yugabyte announced details and theme for Distributed SQL Summit Asia The surprising link between Formula One and enterprise PostgreSQL optimisation Yugabyte adds multiregion Kubernetes support to YugabyteDB 2.18 provided by Google News |
Share this page