DBMS > Apache Drill vs. Apache Impala vs. H2GIS vs. PlanetScale vs. Realm
System Properties Comparison Apache Drill vs. Apache Impala vs. H2GIS vs. PlanetScale vs. Realm
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | Apache Impala Xexclude from comparison | H2GIS Xexclude from comparison | PlanetScale Xexclude from comparison | Realm Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | Analytic DBMS for Hadoop | Spatial extension of H2 | Scalable, distributed, serverless MySQL database platform built on top of Vitess | A DBMS built for use on mobile devices that’s a fast, easy to use alternative to SQLite and Core Data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Relational DBMS | Spatial DBMS | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Relational DBMS | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | impala.apache.org | www.h2gis.org | planetscale.com | realm.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | impala.apache.org/impala-docs.html | www.h2gis.org/docs/home | planetscale.com/docs | realm.io/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Apache Software Foundation Apache top-level project, originally developed by Cloudera | CNRS | PlanetScale | Realm, acquired by MongoDB in May 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 2013 | 2020 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 4.1.0, June 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source Apache Version 2 | Open Source LGPL 3.0 | commercial | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | C++ | Java | Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux | Docker Linux macOS | Android Backend: server-less iOS Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | SQL-like DML and DDL statements | yes | yes with proprietary extensions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC RESTful HTTP API | JDBC ODBC | ADO.NET JDBC MySQL protocol ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C++ | All languages supporting JDBC/ODBC | Java | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net Java with Android only Objective-C React Native Swift | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | yes user defined functions and integration of map-reduce | yes based on H2 | yes proprietary syntax | no runs within the applications so server-side scripts are unnecessary | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | yes | yes Change Listeners | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | none | Sharding | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | yes based on H2 | Multi-source replication Source-replica replication | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | yes query execution via MapReduce | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual Consistency | Immediate Consistency | Eventual Consistency across shards Immediate Consistency within a shard | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | yes not for MyISAM storage engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | ACID | ACID at shard level | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes, multi-version concurrency control (MVCC) | yes table locks or row locks depending on storage engine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | Depending on the underlying data source | yes | yes | yes | 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 | yes In-Memory realm | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | Access rights for users, groups and roles based on Apache Sentry and Kerberos | yes based on H2 | Users with fine-grained authorization concept no user groups or roles | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | Apache Impala | H2GIS | PlanetScale | Realm | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL, PostgreSQL and Redis are the winners of the March ranking Apache Drill case study: A tutorial on processing CSV files Analyse Kafka messages with SQL queries using Apache Drill Apache Drill Poised to Crack Tough Data Challenges Apache Drill Eliminates ETL, Data Transformation for MapR Database Drill Mines Diverse Data Sets, Google Style provided by Google News Apache Impala 4 Supports Operator Multi-Threading Cloudera Bringing Impala to AWS Cloud Apache Impala becomes Top-Level Project Apache Doris just 'graduated': Why care about this SQL data warehouse Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop provided by Google News PlanetScale ends free tier bid, sheds staff in profitability bid PlanetScale Ranked Number 188 Fastest-Growing Company in North America on the 2023 Deloitte Technology Fast ... PlanetScale forks MySQL to add vector support PlanetScale Named to Fortune 2023 Best Small Workplaces How to Migrate to PlanetScale's Serverless Database provided by Google News MongoDB aims to unify developer experience with launch of MongoDB Cloud Danish CEO explains Silicon Valley learning curve for European entrepreneurs - San Francisco Business Times Is Swift the Future of Server-side Development? Kotlin Programming Language Will Surpass Java On Android Next Year Java Synthetic Methods — What are these? | by Vaibhav Singh provided by Google News |
Share this page