1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Groongaで学ぶ全文検索 2015-12-18 に参加しました

Last updated at Posted at 2015-12-31

少し前になりますが、Groongaで学ぶ全文検索 2015-12-18に参加しましたのでそのことを書きます。

この回のテーマは 「ドリルダウン(ファセット検索)」でした。

はじめに

今回、仕事で20分ほど遅刻してしまいました。ごめんなさい。。
遅刻してしまったこともあって、理解したと自信を持って言えず、須藤さんの目が見れませんでした。。
なので今日は反省文を書きます。ドリルダウンのことは少しだけ書きます。

ドリルダウン(ファセット検索)ってなに?

先生「ドリルダウンって知ってますか?」
私 「・・・」
先生「どっち?」
私 「・・・聞いたことあるけどよくわかりません」

まずはじめに、知ってるふりをしようとしてしまいました。ごめんなさい。。
遅刻した上に知らないなんて言いにくいと思ってしまいました・・・。
  
  
「ドリルダウン」とは、「データ集計や分析で用いる手法の一つで、集計範囲を一段階絞ってより詳細な集計を行うこと。(IT用語辞典より)」で、BIとか大量な情報を集計したり分析したりするときに使われるそうです。

私がイメージしやすかったアパレルのECサイトの例をあげてみます。
アパレルECサイトでこんなものがあるとします。

> MEN(100)
> WEMEN(100)
> KIDS(100)

で、これの「MEN」をクリックすると

> MEN(100)
 > アウター(10)
 > トップス(20)
 > ボトム(30)
 > グッズ(40)
> WEMEN(100)
> KIDS(100)

「MEN」で絞り込まれた情報を、別の切り口で集計されたものを見ることができたりします。
これはユーザーが商品を探しやすいように、ある切り口で探したいものの条件が用意されており、
さらに段階を絞って詳細な集計情報をみることができるというものです。

データを以下のように持っているとしたら、最初は「性別」で集計したものを表示しておき、「MEN」をクリックした際には「MEN」で絞り込み、「カテゴリー」で集計したものを表示している、というかんじです。

性別 カテゴリー アイテム カラー
MEN トップス セーター
MEN トップス シャツ
MEN トップス シャツ
MEN ボトム パンツ
WEMEN トップス セーター
WEMEN ボトム パンツ
WEMEN ボトム スカート

行指向と列指向(カラム指向)

上記のような集計処理をするのがドリルダウンですが、Groongaでは集計処理に適した「列指向」を採用しています。

そもそもデータベースには行指向と列指向がありますのでその特徴を比較してみます。

  • 行指向
     - データを行方向のまとまりでもっています。
     - 上記表でいうと「MEN,トップス,セーター,赤」といったまとまりになります。
     - 追加・更新・削除処理が得意です。
      - 行単位で操作できるため更新・削除時のレコードを特定しやすく、その特定のレコードに対して処理を行えばよいので、更新・削除が得意です。
      - 追加時も追加したい情報をまとめて追加すればいいだけなので列指向にくらべて追加処理も得意です。
     - 集計処理が苦手です。
      - データを一行ずつ取り出してみていくため時間がかかります。

  • 列指向(カラム指向)
     - データを列方向のまとまりでもっています。
     - 上記表でいうと「MEN,MEN,MEN,MEN,WEMEN,WEMEN,WEMEN」といったまとまりになります。
     - 追加・更新・削除処理が苦手です。
      - 各カラムに対して処理が必要なため時間がかかります。
     - 集計処理が得意です。
      - データがカラムごとにまとまっているため、集計したいデータが隣り合っており、集計処理が早くなります。
      - 「性別」で集計する場合「性別」の列をみればいいだけ!

まとめ(反省)

  • 遅刻をしないこと!!!
  • わかっているふりはほどほどに!(わかっているふりをしたせいで結局理解できたことが少なかった・・・せっかくの勉強会なのにもったいない。)
  • ツールとかは事前に使えるようにしておく(MacでQiita使おうとしたのですが、MacもQiitaも不慣れでわたわたしてました。。。)
  • 遅刻したのに再度説明してくださったりと、いろいろと配慮していただき感謝です。ご迷惑おかけしてすいませんでした(>_<)
  • ぎりぎり年内にまとめかけました。今は自分のためのまとめですが、来年は誰かの役に立つような上手なまとめを書きたいです。
  • よいお年を!
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?