DBMS > Apache Drill vs. H2 vs. NCache vs. OceanBase vs. YugabyteDB
System Properties Comparison Apache Drill vs. H2 vs. NCache vs. OceanBase vs. YugabyteDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | H2 Xexclude from comparison | NCache Xexclude from comparison | OceanBase Xexclude from comparison | YugabyteDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | Open-Source and Enterprise in-memory Key-Value Store | A distributed, high available RDBMS compatible with Oracle and MySQL | High-performance distributed SQL database for global, internet-scale applications. Wire and feature compatible with PostgreSQL. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Relational DBMS | Key-value store | Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store Search engine Using distributed Lucene | Document store Wide column store | Document store Wide column store | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | www.h2database.com | www.alachisoft.com/ncache | en.oceanbase.com | www.yugabyte.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | www.h2database.com/html/main.html | www.alachisoft.com/resources/docs | en.oceanbase.com/docs/oceanbase-database | docs.yugabyte.com github.com/yugabyte/yugabyte-db | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Thomas Mueller | Alachisoft | OceanBase previously Alibaba and Ant Group | Yugabyte Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2005 | 2005 | 2010 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 2.2.220, July 2023 | 5.3.3, April 2024 | 4.3.0, April 2024 | 2.19, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source dual-licence (Mozilla public license, Eclipse public license) | Open Source Enterprise Edition available | Open Source Commercial license available | 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. | 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 | C++ | 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 | yes | 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 | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | yes | 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 | JDBC ODBC | IDistributedCache JCache LINQ Proprietary native API | JDBC ODBC ODP.NET Oracle Call Interface (OCI) Proprietary native API Table API | 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++ | Java | .Net .Net Core C# Java JavaScript (Node.js) Python Scala | Ada in MySQL-compatible model C in Oracle- and MySQL- compatible models C++ in Oracle- and MySQL- compatible models D in MySQL-compatible model Delphi in MySQL-compatible model Eiffel in MySQL-compatible model Erlang in MySQL-compatible model Haskell in MySQL-compatible model Java in Oracle- and MySQL- compatible models JavaScript (Node.js) in MySQL-compatible model Objective-C in MySQL-compatible model OCaml in MySQL-compatible model Perl in MySQL-compatible model PHP in MySQL-compatible model Python in MySQL-compatible model Ruby in MySQL-compatible model Scheme in MySQL-compatible model Tcl in MySQL-compatible model | C C# C++ Go Java JavaScript (Node.js) PHP Python Ruby Rust Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | Java Stored Procedures and User-Defined Functions | no support for stored procedures with SQL-Server CLR | PL/SQL in oracle-compatible mode, MySQL Stored Procedure in mysql-compatible mode | yes sql, plpgsql, C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | yes Notifications | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | yes | horizontal partitioning (by hash, key, range, range columns, list, and list columns) | Hash and Range Sharding, row-level geo-partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | With clustering: 2 database servers on different computers operate on identical copies of a database | yes, with selectable consistency level | Multi-source replication using Paxos | Based on Raft distributed consensus protocol, minimum 3 replicas for continuous availability | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Immediate Consistency | 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 | yes | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | 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, multi-version concurrency control (MVCC) | 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 | yes | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | fine grained access rights according to SQL-standard | Authentication to access the cache via Active Directory/LDAP (possible roles: user, administrator) | Access rights for users, groups and roles according to SQL-standard | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | H2 | NCache | OceanBase | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | NCache has been the market leader in .NET Distributed Caching since 2005 . NCache... » 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 | 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 | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Market Leader in .NET Distributed Caching since 2005. » 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 | 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 | H2 | NCache | OceanBase | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | MapR to Speak on Stream Processing Systems, Apache Spark and Drill at Industry Events in January Apache Drill vs. Apache Spark — Which SQL query engine is better for you? Apache Drill case study: A tutorial on processing CSV files Apache Drill Poised to Crack Tough Data Challenges Apache Drill Eliminates ETL, Data Transformation for MapR Database 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 | OceanBase Inks Agreement with NTU Singapore in Database Optimization and Green Computing Advancements OceanBase Recognized as an Asia/Pacific Customers' Choice in the Gartner® Peer Insights™ Voice of the Customer ... Ant Group Will Cut Foreign Investors Out of Fast-Growing Database Business How Southeast Asia's Leading e-Wallets Saved Up to 40% in Database Costs - Fintech Singapore Alibaba's OceanBase distributed database aims at markets outside China 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 The surprising link between Formula One and enterprise PostgreSQL optimisation Yugabyte Embraces 'No Downtime, No Limits,' as the Theme of the Upcoming Distributed SQL Summit Asia Can Yugabyte Become The Defacto Database For Large-Scale, Cloud Native Applications? provided by Google News |
Share this page