DBMS > Apache Drill vs. Apache Impala vs. IBM Db2 vs. PouchDB vs. SQLite
System Properties Comparison Apache Drill vs. Apache Impala vs. IBM Db2 vs. PouchDB vs. SQLite
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | Apache Impala Xexclude from comparison | IBM Db2 formerly named DB2 or IBM Database 2 Xexclude from comparison | PouchDB Xexclude from comparison | SQLite Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | Analytic DBMS for Hadoop | Common in IBM host environments, 2 different versions for host and Windows/Linux | JavaScript DBMS with an API inspired by CouchDB | Widely used embeddable, in-process RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Relational DBMS | Relational DBMS Since Version 10.5 support for JSON/BSON documents compatible with MongoDB | Document store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Document store RDF store in Db2 LUW (Linux, Unix, Windows) Spatial DBMS with Db2 Spatial Extender | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | impala.apache.org | www.ibm.com/products/db2 | pouchdb.com | www.sqlite.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | impala.apache.org/impala-docs.html | www.ibm.com/docs/en/db2 | pouchdb.com/guides | www.sqlite.org/docs.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Apache Software Foundation Apache top-level project, originally developed by Cloudera | IBM | Apache Software Foundation | Dwayne Richard Hipp | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 1983 host version | 2012 | 2000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 4.1.0, June 2022 | 12.1, October 2016 | 7.1.1, June 2019 | 3.46.1Â (13 August 2024), August 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source Apache Version 2 | commercial free version is available | Open Source | Open Source Public Domain | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | C++ | C and C++ | JavaScript | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux | AIX HP-UX Linux Solaris Windows z/OS | server-less, requires a JavaScript environment (browser, Node.js) | server-less | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | schema-free | yes dynamic column types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | no | yes not rigid because of 'dynamic typing' concept. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | yes | yes | yes via views | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | SQL-like DML and DDL statements | yes | no | yes SQL-92 is not fully supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC RESTful HTTP API | JDBC ODBC | ADO.NET JDBC JSON style queries MongoDB compatible ODBC XQuery | HTTP REST only for PouchDB Server JavaScript API | ADO.NET inofficial driver JDBC inofficial driver ODBC inofficial driver | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C++ | All languages supporting JDBC/ODBC | C C# C++ Cobol Delphi Fortran Java Perl PHP Python Ruby Visual Basic | JavaScript | Actionscript Ada Basic C C# C++ D Delphi Forth Fortran Haskell Java JavaScript Lisp Lua MatLab Objective-C OCaml Perl PHP PL/SQL Python R Ruby Scala Scheme Smalltalk Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | yes user defined functions and integration of map-reduce | yes | View functions in JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding only with Windows/Unix/Linux Version | Sharding with a proxy-based framework, named couchdb-lounge | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | yes with separate tools (MQ, InfoSphere) | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | yes query execution via MapReduce | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual Consistency | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | ACID | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes via file-system locks | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | Depending on the underlying data source | yes | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | Access rights for users, groups and roles based on Apache Sentry and Kerberos | fine grained access rights according to SQL-standard | no | 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 | Navicat for SQLite is a powerful and comprehensive SQLite GUI that provides a complete set of functions for database management and development. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | Apache Impala | IBM Db2 formerly named DB2 or IBM Database 2 | PouchDB | SQLite | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | Big gains for Relational Database Management Systems in DB-Engines Ranking Apache Drill case study: A tutorial on processing CSV files Analyse Kafka messages with SQL queries using Apache Drill MapR Advances Support for Flexible and High Performance Analytics on JSON and S3 Data with Apache Drill Apache Drill Adds New Data Formats Apache Drill Eliminates ETL, Data Transformation for MapR Database provided by Google News Apache Impala 4 Supports Operator Multi-Threading Apache Impala becomes Top-Level Project Cloudera brings Apache Iceberg data lake format to its Data Platform Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop Updates & Upserts in Hadoop Ecosystem with Apache Kudu provided by Google News Db2 is a story worth telling, even if IBM won't Data migration strategies to Amazon RDS for Db2 Six new Db2 capabilities DBAs must try today with Db2 11.5.9 Using Oracle Cloud Infrastructure (OCI) GoldenGate with Db2 for z Database Precisely Supports Amazon RDS for Db2 Service with Real-Time Data Integration Capabilities provided by Google News Getting Started with PouchDB Client-Side JavaScript Database Create Offline Web Apps Using Service Workers & PouchDB Building an Offline First App with PouchDB provided by Google News Google researchers suggest "fixing" SQL with pipe syntax, SQLite creator unconvinced How to work with Dapper and SQLite in ASP.NET Core LLM-Assisted Translation From Postgres to SQLite and DuckDB SQLite Vulnerability Could Put Thousands of Apps at Risk Optimizing neuroscience data management by combining REDCap, BIDS and SQLite: a case study in Deep Brain Stimulation provided by Google News |
Share this page