[レポート]Apache DrillでJSON形式のオープンデータを分析してみる #dbts2015 #be_crazy_about_db_tech

2015.06.16

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、城内です。 今回は、先週末に開催されたdb tech showcase Tokyo 2015に参加してきましたので、セッションレポートを書きたいと思います。 少し時間があいてしまいましたが、スライドも公開され、面白い内容でしたのでぜひご覧頂ければと思います。

セッション情報

  • セッション名:Apache DrillでJSON形式のオープンデータを分析してみる
  • スピーカー:マップアール・テクノロジーズ株式会社 草薙昭彦氏

スライド

[slideshare id=49306846&doc=apachedrillopendata20150611-150612094242-lva1-app6892&w=640&h=480]

セッション内容

Apache Drillの概要

Apache Drillとは、スキーマフリーのSQLエンジンである。

データの今後

  • データ量は2倍に増え、ペタバイト級になっていく
  • 非構造データがデータ全体の80%を占める

→非リレーショナルなデータストアに向かう(HadoopやHBASE、MongoDBなど) →また、開発サイクルが早くなっていく中で、なるべくスキーマやクエリの定義に柔軟性を持たせたい →でも、NoSQLのインターフェースにまだなじめない

そんな要望から、SQLのよさとNoSQLのよさをマージして生まれたのが、Apache Drillである。

BIシステムの変遷

  1. IT部門主導のBI
  2. セルフサービス型のBI(TableauやMicroStrategyなど)
  3. スキーマフリーのデータ検索 →マーケティング部門が直接操作可能

システムの構築にかかる期間も、データモデリングやデータ変換、データ移行が不要になることで、数か月から数日まで短縮される。

Apache Drillの特徴

  • 動的なスキーマディスカバリーをサポートし、スキーマを事前に宣言する必要がない
  • データモデルはフレキシブルに対応でき、SQLの中で形式をデータソースに合わせて指定することができる

Apache Drillのアーキテクチャ

  • 分散されたサーバ上でdrillbitというデーモンが動作する
  • dillbitの管理はZooKeeperが行っている
  • 他の実行エンジン(MapReduceやSparkなど)には依存しない
  • データ処理単位はカラムナレコードバッチ

drillbitは、HDFSやHBase、Hive、MongoDBなどの上で動作し、データの局所性を最大限活用する。

Drillで政府統計情報(e-Stat)を分析してみよう

こちらは実際のDemoを交えながらのご説明だったので、内容だけにはなりますが、スライドのP18以降をご参照ください。

感想

とにかくApache Drillはすごいなと感じました。スキーマフリーなところと、それに紐づくデータの整形処理が不要になるところがアーキとしてはかなり強力だと思いました。クエリの処理時間は従来のデータ分析のアーキには勝てないとは思いますが、システム立案から実際の利用までの期間で考えると、環境の作り込みが不要な分Apache Drillの方が早いように思います。

私はとても感動したので、ぜひこれから試してみようと思いますが、もしよかったら皆さまもぜひお試しくださいね。

参考

弊社ブログにも以下のエントリーがありますので、もしよかったらご覧ください。