DEV.co
Open-Source Databases · apache

drill

Apache Drill is a distributed SQL query engine designed to run ad-hoc queries across self-describing data sources like NoSQL databases and Hadoop clusters without requiring upfront schema definition. It supports multiple query languages and integrates with common big-data storage systems.

Source: GitHub — github.com/apache/drill
2k
GitHub stars
988
Forks
Java
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryapache/drill
Ownerapache
Primary languageJava
LicenseApache-2.0 — OSI-approved
Stars2k
Forks988
Open issues126
Latest releasedrill-1.22.0 (2025-06-29)
Last updated2026-06-26
Sourcehttps://github.com/apache/drill

What drill is

Drill is a Java-based massively parallel processing (MPP) query layer inspired by Google Dremel, providing a distributed query engine that can execute SQL against schema-on-read data sources including Parquet, JSON, and various NoSQL systems. It uses Jetty for HTTPS communication, SASL/Kerberos for authentication, and includes cryptographic libraries for secure data transmission.

Quickstart

Get the drill source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/apache/drill.gitcd drill# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Ad-hoc Analytics on Self-Describing Data

Query JSON, Parquet, CSV, and other self-describing formats without pre-defining schemas. Ideal for exploratory analysis on semi-structured data stored in Hadoop or cloud object storage.

Multi-Source Federation Queries

Execute single SQL queries across multiple heterogeneous data sources (NoSQL, relational, Hadoop) simultaneously, reducing the need to move or consolidate data into a data warehouse.

Large-Scale Distributed Query Processing

Process petabyte-scale datasets in distributed environments where traditional SQL engines require extensive ETL preprocessing or schema definition.

Implementation considerations

  • Requires Java runtime and cluster infrastructure; evaluate existing Hadoop/Kubernetes ecosystem fit and deployment topology (embedded, distributed, cloud).
  • Schema inference on large or complex self-describing data may require query tuning and explicit schema hints to optimize performance.
  • Security setup includes SASL, Kerberos, and SSL/TLS configuration; ensure cryptographic libraries are properly deployed and export control compliance is verified.
  • No built-in data governance or fine-grained access control at column level; plan additional authorization layers if data sensitivity requires row/column masking.
  • Query optimization and cost control rely on understanding distributed execution plans and proper index/partitioning strategies.

When to avoid it — and what to weigh

  • Transactional OLTP Systems — Drill is an analytical (OLAP) engine; it is not designed for ACID transactions, row-level locking, or high-frequency transactional workloads.
  • Real-Time Sub-Second Latency Requirements — Designed for batch and ad-hoc queries on large datasets; not suitable for applications requiring millisecond query responses or streaming real-time data.
  • Minimal Operational Complexity / Fully Managed Solutions Preferred — Requires infrastructure setup, cluster management, and operational expertise; consider managed services (Athena, BigQuery, Redshift Spectrum) if you want zero infrastructure overhead.
  • Small Data or Single-Machine Analytics — Overhead of distributed execution may not justify costs for datasets that fit easily in memory or on a single server.

License & commercial use

Apache License 2.0 (Apache-2.0) – a permissive OSI-approved license permitting commercial use, modification, and distribution with attribution and liability disclaimer.

Commercial use is permitted under Apache-2.0. Ensure your deployment includes appropriate attribution and complies with the license terms. The export control notice (ECCN 5D002.C.1) indicates cryptographic software is included; verify compliance with relevant export regulations in your jurisdiction before deployment.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityHigh
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Supports authentication via SASL and Kerberos; communication secured via Jetty HTTPS. Includes cryptographic libraries (OpenSSL, Java SE Security). Export-controlled under U.S. ECCN 5D002.C.1; verify compliance in your jurisdiction. No statement regarding vulnerability disclosure, penetration testing, or security audit history found in provided data. Evaluate third-party security reviews and dependency scanning before production deployment.

Alternatives to consider

Apache Presto / Trino

Similar federated SQL query engine; broader connector ecosystem and stronger community adoption in cloud environments (Databricks, Starburst). Slightly lower operational complexity.

Amazon Athena / Google BigQuery

Fully managed serverless alternatives; eliminate infrastructure and operational burden; auto-scaling and built-in cost controls. Higher cloud lock-in; less suitable for hybrid/on-premises.

Apache Spark SQL

Broader data processing framework with integrated SQL engine; stronger ML integration and larger community. Steeper learning curve; overkill for simple federated queries.

Software development agency

Build on drill with DEV.co software developers

Apache Drill can accelerate federated queries across distributed data sources. Review deployment architecture, security compliance, and operational readiness with your infrastructure team. Contact us to assess fit and plan a proof-of-concept.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

drill FAQ

Does Drill require pre-defined schemas?
No. Drill is designed for schema-on-read, automatically inferring schema from self-describing data (JSON, Parquet, etc.). You can also provide explicit schemas for optimization.
Can Drill replace my data warehouse?
Partially. Drill excels at ad-hoc queries on semi-structured data; it lacks data warehouse features like incremental refresh, sophisticated indexing, and fine-grained access control. Use as a query layer, not a replacement for dedicated warehouses.
What are the minimum hardware and infrastructure requirements?
Requires Java 8+ and cluster infrastructure for distributed nodes. Single-node embedded deployment is possible but offers little advantage over traditional SQL databases. Typical deployments use 3+ coordinator/executor nodes with network and storage backends.
Is Drill suitable for real-time analytics?
No. Drill is optimized for batch and ad-hoc queries on stored datasets. For real-time streaming analytics, consider Flink, Spark Streaming, or managed services like Kafka Streams.

Custom software development services

DEV.co is a software development agency delivering custom software development services to companies building on open source. Our software developers and web developers design, integrate, and ship production systems — spanning web development, APIs, AI, data, and cloud. If drill is part of your open-source databases roadmap, our team can implement, customize, migrate, and maintain it.

Evaluate Drill for Your Data Platform

Apache Drill can accelerate federated queries across distributed data sources. Review deployment architecture, security compliance, and operational readiness with your infrastructure team. Contact us to assess fit and plan a proof-of-concept.