米Googleの「Dremel」クローンをオープンソースで実装するプロジェクト「Apache Drill」

 巨大なデータセットを分散システムで解析するためのプロジェクト「Drill」が、Apache Software Foundation(ASF)の新プロジェクトとして提案された。米Googleが開発するデータ処理ツール「Dremel」のようなシステムをオープンソースで作り上げることを目標とするという。

 Drillは米Googleが開発した大規模データ向けの並列クエリシステム「Dremel」(「BigQuery」という名称で一般にも提供されている)に着想を得たもので、「ビッグデータ」などと呼ばれている大規模なデータセットをインタラクティブに分析するための分散システムと説明されている。Drillではこれらに加え、対応するクエリ言語やデータフォーマット、データソースなどで柔軟性を持たせる予定で、クエリ言語、低遅延分散実行エンジン、入れ子データフォーマット、拡張性のあるデータソースの4つのコンポーネント/レイヤで構成されるという。プロジェクトにはHadoopの商用ディストリビューションを提供する米MapR Technologiesが支援企業として名乗りを上げている。

 ASFのインキュベーション提案ページでは、JSONや「Apache Avro」(オープンソースのデータシリアライゼーションシステム)で扱われる、入れ子になったデータを含む大規模データセットを低遅延でインタラクティブに分析するツールが求められている、とDremelの必要性が説明されている。オープンソースの分散システムとしてはHadoopがあるが、こちらは高スループット向けに設計されており、インタラクティブなデータ分析で必要となる低遅延性の実現は目標としていないと課題を提起している。

 当初の目標として、まず要件やアーキテクチャ定義を行った後、初期実装の開発を行うとしている。初期実装ではSQLライクな言語「DrQL」とDremelに似たカラムベースのフォーマットをサポートする予定で、その後、MongoDBで使われているクエリ言語「Mongo Query Language」などもサポートしていくという。

Apache Drillの提案書
http://wiki.apache.org/incubator/DrillProposal