Apache Drill
開発元 | Apacheソフトウェア財団 |
---|---|
最新版 |
1.15
/ 2018年12月31日 |
リポジトリ | |
対応OS | クロスプラットフォーム |
サポート状況 | Active |
ライセンス | Apache License, Version 2.0. |
公式サイト |
drill |
Apache Drillは、大規模データセットの対話型分析のための分散アプリケーションをサポートするオープンソースのソフトウェアフレームワークである。GoogleのDremelシステムはGoogle BigQueryという名称でInfrastructure as a Serviceとして利用可能であるが、DrillはDremelのオープンソースバージョンである。Drillは10,000台のサーバもしくはそれ以上の規模までの拡大が可能であり、数テラバイト、数兆レコードのデータを数秒で処理できることが設計目標に明記されている。DrillはApacheトップレベルプロジェクトの1つである[1]。
Drillは多様なNoSQLデータベースやファイルシステムをサポートしており、これにはHBase、MongoDB、MapR-DB、HDFS、MapR-FS、Amazon S3、Azure Blob Storage、Google Cloud Storage、Swift、NAS、ローカルファイルシステムが含まれる。単一のクエリで複数のデータストアからのデータを結合することが可能である。例えば、MongoDBのユーザープロファイルのコレクションをHadoopのイベントログのディレクトリと結合することができる。
Drillのデータストアを意識したオプティマイザは、データストア内部の処理能力を活用するように自動的にクエリプランを再構築する。これに加えて、Drillとデータストアが同じノード上にあればDrillはデータ局所性をサポートする。[2]。
Apache Drill 1.9では動的なユーザー定義関数が追加された。
Apache Drill 1.11では暗号関連関数とPCAPファイルフォーマット対応が追加された。
特徴
[編集]- MongoDBやElasticsearchに似た、正式なスキーマの宣言を必要としない、スキーマ不要のJSONドキュメントモデル
- 業界標準API: ANSI SQL、ODBC/JDBC、RESTful API
- ユーザおよび開発者にとって非常に扱いやすい
- プラガブルアーキテクチャにより複数のデータストアに接続が可能
サポート
[編集]DrillはApache HadoopテキストファイルやNoSQL、クラウドストレージなどの非リレーショナルデータストアに主に重点を置いている。次のデータストアがサポートされている:
- Apache Hadoop、MapR、CDH、Amazon EMRを含むすべてのHadoopディストリビューション(HDFS API 2.3以降)
- NoSQL: MongoDB、Apache HBase
- クラウドストレージ: Amazon S3、Google Cloud Storage、Azure Blob Storage、Swift
- Apache Avro、Apache Parquet、JSONを含む複数のデータ形式の扱い
- RDBMSストレージプラグインのサポート(JDBCを使った接続)
ストレージプラグインを開発することで、新しいデータストアを追加することができる。Drillの「スキーマ不要の」JSONデータモデルにより、非リレーショナルデータストアをその場で検索可能である[3]。
関連項目
[編集]脚注・出典
[編集]- ^ “The Apache Software Foundation Announces Apache™ Drill™ as a Top-Level Project”. 2014年12月2日閲覧。
- ^ “Apache Drill - Schema-free SQL for Hadoop, NoSQL and Cloud Storage”. drill.apache.org. 2015年12月29日閲覧。
- ^ “Frequently Asked Questions - Apache Drill”. drill.apache.org. 2015年12月29日閲覧。
論文
[編集]いくつかの論文がDrillの誕生と設計に影響を与えている。下記はその一部のリストである:
- 2005 From Databases to Dataspaces: A New Abstraction for Information Management 著者らは、すべてのデータ形式を受け入れてデータアクセスのためのAPIを提供し、データに対する理解に基づき進化するストレージシステムの必要性を強調している。
- 2010 Dremel: Interactive Analysis of Web-Scale Datasets