DBMS > Apache Druid vs. Hive vs. Oracle Berkeley DB vs. Tarantool vs. Virtuoso
System Properties Comparison Apache Druid vs. Hive vs. Oracle Berkeley DB vs. Tarantool vs. Virtuoso
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Druid Xexclude from comparison | Hive Xexclude from comparison | Oracle Berkeley DB Xexclude from comparison | Tarantool Xexclude from comparison | Virtuoso Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Open-source analytics data store designed for sub-second OLAP queries on high dimensionality and high cardinality data | data warehouse software for querying and managing large distributed datasets, built on Hadoop | Widely used in-process key-value store | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | Virtuoso is a multi-model hybrid-RDBMS that supports management of data represented as relational tables and/or property graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Time Series DBMS | Relational DBMS | Key-value store supports sorted and unsorted key sets Native XML DBMS in the Oracle Berkeley DB XML version | Document store Key-value store Relational DBMS | Document store Graph DBMS Native XML DBMS Relational DBMS RDF store Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS with Tarantool/GIS extension | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | druid.apache.org | hive.apache.org | www.oracle.com/database/technologies/related/berkeleydb.html | www.tarantool.io | virtuoso.openlinksw.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | druid.apache.org/docs/latest/design | cwiki.apache.org/confluence/display/Hive/Home | docs.oracle.com/cd/E17076_05/html/index.html | www.tarantool.io/en/doc | docs.openlinksw.com/virtuoso | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation and contributors | Apache Software Foundation initially developed by Facebook | Oracle originally developed by Sleepycat, which was acquired by Oracle | VK | OpenLink Software | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2012 | 1994 | 2008 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 29.0.1, April 2024 | 3.1.3, April 2022 | 18.1.40, May 2020 | 2.10.0, May 2022 | 7.2.11, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache license v2 | Open Source Apache Version 2 | Open Source commercial license available | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | Open Source GPLv2, extended commercial license 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 | Java | C, Java, C++ (depending on the Berkeley DB edition) | C and C++ | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Unix | All OS with a Java VM | AIX Android FreeBSD iOS Linux OS X Solaris VxWorks Windows | BSD Linux macOS | AIX FreeBSD HP-UX Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes schema-less columns are supported | yes | schema-free | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | yes SQL - Standard relational schema RDF - Quad (S, P, O, G) or Triple (S, P, O) XML - DTD, XML Schema DAV - freeform filesystem objects, plus User Defined Types a/k/a Dynamic Extension Type | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | string, double, decimal, uuid, integer, blob, boolean, datetime | 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 | yes only with the Berkeley DB XML edition | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL for querying | SQL-like DML and DDL statements | yes SQL interfaced based on SQLite is available | Full-featured ANSI SQL support | yes SQL-92, SQL-200x, SQL-3, SQLX | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC RESTful HTTP/JSON API | JDBC ODBC Thrift | Open binary protocol | ADO.NET GeoSPARQL HTTP API JDBC Jena RDF API ODBC OLE DB RDF4J API RESTful HTTP API Sesame REST HTTP Protocol SOAP webservices SPARQL 1.1 WebDAV XPath XQuery XSLT | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure JavaScript PHP Python R Ruby Scala | C++ Java PHP Python | .Net Figaro is a .Net framework assembly that extends Berkeley DB XML into an embeddable database engine for .NET others Third-party libraries to manipulate Berkeley DB files are available for many languages C C# C++ Java JavaScript (Node.js) 3rd party binding Perl Python Tcl | C C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | .Net C C# C++ Java JavaScript Perl PHP Python Ruby Visual Basic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes user defined functions and integration of map-reduce | no | Lua, C and SQL stored procedures | yes Virtuoso PL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes only for the SQL API | yes, before/after data modification events, on replication events, client session events | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding manual/auto, time-based | Sharding | none | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, via HDFS, S3 or other storage engines | selectable replication factor | Source-replica replication | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | Chain, star, and bi-directional replication Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes query execution via MapReduce | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency | Casual consistency across sharding partitions Eventual consistency within replicaset partition when using asyncronous replication Immediate Consistency within single instance Sequential consistency including linearizable read within replicaset partition when using Raft | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | ACID | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes, cooperative multitasking | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes, write ahead logging | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes, full featured in-memory storage engine with persistence | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | RBAC using LDAP or Druid internals for users and groups for read/write by datasource and system | Access rights for users, groups and roles | no | Access Control Lists Mutual TLS authentication for Tarantol Enterprise Password based authentication Role-based access control (RBAC) and LDAP for Tarantol Enterprise Users and Roles | Fine-grained Attribute-Based Access Control (ABAC) in addition to typical coarse-grained Role-Based Access Control (RBAC) according to SQL-standard. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Druid | Hive | Oracle Berkeley DB | Tarantool | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Virtuoso is a modern multi-model RDBMS for managing data represented as tabular relations... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Performance & Scale — as exemplified by DBpedia and the LOD Cloud it spawned, i.e.,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Used for — Analytics/BI Conceptual Data Virtualization Enterprise Knowledge Graphs... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Broad use across enterprises and governments including — European Union (EU) US Government... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Largest installed-base of Multi-Model RDBMS for AI-friendly Knowledge Graphs Platform... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Available in both Commercial Enterprise and Open Source (GPL v2) Editions Feature... » 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 Druid | Hive | Oracle Berkeley DB | Tarantool | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Why is Hadoop not listed in the DB-Engines Ranking? | Data processing speed and reliability: in-memory synchronous replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Druid Wins Best Big Data Product in the 2023 BigDATAwire Readers' Choice Awards New DDoS malware Attacking Apache big-data stack, Hadoop, & Druid Servers 'Lucifer' Botnet Turns Up the Heat on Apache Hadoop Servers Apache Druid Takes Its Place In The Pantheon Of Databases How to connect DataGrip to Apache Druid | by Zisis Flokas provided by Google News | Design a data mesh pattern for Amazon EMR-based data lakes using AWS Lake Formation with Hive metastore ... Apache Software Foundation Announces Apache Hive 4.0 18 Top Big Data Tools and Technologies to Know About in 2024 ASF Unveils the Next Evolution of Big Data Processing With the Launch of Hive 4.0 Run Apache Hive workloads using Spark SQL with Amazon EMR on EKS | Amazon Web Services provided by Google News | Margo Seltzer Named ACM Athena Lecturer for Technical and Mentoring Contributions ACM recognizes far-reaching technical achievements with special awards Margo I. Seltzer | Berkman Klein Center Oracle buys Sleepycat Software How to store financial market data for backtesting provided by Google News | Tarantool Announces New Enterprise Version With Enhanced Scaling and Monitoring Capabilities Deploying Tarantool Cartridge applications with zero effort (Part 1) VShard — horizontal scaling in Tarantool Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel provided by Google News |
Share this page