Apache Drill Blog
Announcing Apache Drill 0.4.0: Self Service Data Exploration
We’re very excited to announce the release of Apache Drill 0.4.0. This release is a developer preview release and is the first in a series of monthly builds as Drill drives towards Beta and GA. Although this is only the second incubator release, the growth and strength of the Apache Drill community is already apparent. This release contains more than 800 JIRAs and 100,000 lines of new code from 40+ contributors in 15+ organizations.
Apache Drill was founded with the audacious goal of redefining analytics for flexibility using modern data formats while establishing a new benchmark for performance. Rather than re-implementing technologies and approaches from 30 years ago, Drill focuses on redefining the nature of data and metadata and strives to combine SQL, NoSQL and document database approaches in a single set of query capabilities. This release starts to deliver on these goals by allowing you to start experimenting with Drill’s new instant, no-setup analysis paradigm.
At its core, Drill was designed for ease of use and self-service data exploration. That means little setup, embracing convention over configuration and allowing a user to experiment on any platform. Unlike most systems in the Hadoop ecosystem, Apache Drill is software that you can start using on your desktop in just a couple of minutes. Just find a JSON or CSV file that you want to analyze, download Drill and execute your first query. For more details, see the Drill in 10 minutes section of the documentation.
This is a huge release that comes with a large number of changes and new features. Some highlights include:
- A new way to work with data and metadata including the first query engine to champion advanced Apache Parquet format files to support self-describing data, completely avoiding a central metadata repository.
- A completely new columnar execution engine that leverages both runtime code compilation and advanced memory management for query execution.
- Advanced cost-based query optimization that works with or without stats providing complex distributed query planning.
- Focus on full SQL capability with support for correlated subqueries, complex subexpressions and scalar subqueries.
- The first query engine to support JSON everything, enabling instant analysis of semi-structured and partially schemed data without setup or extra effort.
- In-query dynamic schema discovery allows you to redefine blob fields as complex objects, using advanced CONVERT_FROM and CONVERT_TO semantics.
- Support for more than 150 data formats and thousands of existing function libraries through strong integration with Hive Serdes and UDFs.
- Additional support for high performance native Drill storage plugins and UDFs.
- A friendly web interface with query and profiling tools including an advanced query plan visualizer and execution flow visualizations.
- A complete set of interfaces and APIs including support for JDBC, C++, Java, ODBC*, REST and CLI
- Advanced dynamic analysis capabilities on top of HBase including dynamic schema discovery, high speed parallel scanning and operator pushdown.
- Support for in-memory and beyond memory datasets with an multi-staged innovative sort algorithm that produces faster time to first record sorting than traditional query engines.
- Ability to meet query SLAs and avoid resource starvation with multiple query resource queues.
- Support for wide rows with thousands of columns within a single query.
- An advanced modular design with extensibility points at storage, query, planning and operator execution to work for a large set of standalone or embedded setups.
- Full scaling: run embedded on Linux, Mac or PC for development purposes or scale up to a full cluster on any platform.
- Support for use of Zookeeper and HBase for Drill configuration and profiling management.
- The only open source distributed query engine architected to work with all types of big data, not just Hadoop data sources.
- Lots more that you can read about by reviewing the Apache Drill Wiki
Be forewarned: this release is a developer preview release, so you’ll see lots of sharp edges and bugs. This release also has a large amount of debugging options enabled and a number of performance optimizations disabled. We recommend against using this release for anything more than initial experimentation. We’re now rolling out monthly releases so you can get a flavor for Drill now and start evaluating it for production use cases in the next couple of months.
Thanks to all the people and supporting organizations who have worked to help create this release. Together, we’ll enable better, faster decisions while making analysts’ lives easier.
-The Apache Drill Team