Edited at

【Groongaで学ぶ全文検索 2015-12-18】ドリルダウンについて

More than 3 years have passed since last update.


はじめに

2回目の参加です。仕事で20分遅刻しました。すみません >_<


ドリルダウンについて


ドリルダウンとは

ドリルダウンとは - IT用語辞典


ドリルダウンとは、データ集計や分析で用いる手法の一つで、集計範囲を一段階絞ってより詳細な集計を行うこと。また、そのようなソフトウェアの機能。例えば、各年のデータが表示された画面で、特定の年を指定してその年の月単位のデータを表示したりするような操作のことを言う。



  • 集計範囲を一段階絞ってより詳細な集計を行うこと。

  • 別名、ファセット

  • BIとかOLAPでよく用いられる

BIとは - IT用語辞典


BI(Business Intelligence、BI)とは、業務システムなどから蓄積される企業内の膨大なデータを、蓄積・分析・加工して、企業の意思決定に活用しようとする手法。ERPパッケージやCRMソフトなどからもたらされるデータの分析を専門家に依存せず、経営者や社員が必要な情報を自在に分析し、経営計画や企業戦略などに活用することを目指している。


OLAPとは - IT用語辞典


OLAP(On-line Analytical Processing、OLAP)とは、データベースに蓄積された大量のデータに対し複雑な集計、分析を行い、素早く結果を提示することができるシステム。



データの持ち方


  • データの持ち方として、行指向と列指向(カラムナ)がある

  • 行指向は行毎にワンセットのデータを持つ


    • RDBMSで用いられ、集計が苦手気味



  • 列指向は列毎にワンセットなデータを持つ


    • データウェアハウスで用いられ、集計が得意



  • なのでGroongaは列指向採用してる

行指向
列指向

行指向
列指向


Groongaの強み


  • 一定量の情報を取得して、突き合わせ処理してるので早い


    • 1個ずつやるより一気にガッとやった方が効率が良いから



  • 1回のselectでn個のdrill downすることができる
    ので早い



  • 2段のドリルダウンを行う場合、1個目のScanと2個目のScanを同時に走らせている

  • 集計時、結果セットをHashテーブルで持つことでキー毎の集計を高速化してる

  • 更にバリューに当該レコードの情報を保持してるので、集計結果を表示するときに色々使える


実際のパフォーマンス


  • 色々探したけど見つからないので、時間みて検証したい。。


まとめ


  • ほぼ用語集な内容ですみません。

  • ドリルダウンやカラムナーについては、知っておかないといけない知識ということは再認識できた。

  • ドリルダウンって、絞り込みじゃなくて集計です!という須藤さんの言葉が分かったようで、実は理解出来ていないことを今知った。。

  • 最近バタバタしてるし、遅刻してしまったし、少し不完全燃焼(楽しみにしていたセミナーだったのに・・)

  • 次回は業務を落ち着けて、遅刻しないように参加します!