20160329 Groonga新リリース自慢会6.0.1に参加した
概要
20160329に行われたGroonga新リリース自慢会6.0.1の内容と感想
この勉強会に行ったきっかけ
- 20160324くらいに検索を作る側にまわってみたいと思ったから
- 20160327-20160330の間に行われるSolr,Groonga,Elasticsearch,AmazonCloudSearchの勉強会をconnpass,atnd,doorkeeperで検索したところこの勉強会がヒットしたから
勉強会の内容
- Groonga6.0.1の変更内容(http://groonga.org/ja/blog/2016/03/29/groonga-6.0.1.html)
- 静的検索によるフレーズ検索の高速化
- mroonga6.01の変更内容
- PGroonga1.0.3の変更内容
知らなかったけど知ったこと
Groongaは[bitを大事にする文化がある|新しい情報に重きをおく|スループットをなるべく一定に|肉を大事にする文化がある]
実際に要望があって変更することが多い?(そういうことは少ないと思っていた)
B+は前方一致検索なら有効だがそれ以外には向かない→全文一致検索では形態素解析のように文を単語に切り分けてkeyと結果の表を作る こうすることで距離がわかるようになる(他にもメリットがある)
文章量が増えると単語ごとに出現頻度が異なる(セキュリティの暗号っぽい考え方だなと思った)
単語がレアなやつから調べることで効率的になる
インデックスの作り方にはオフラインとオンラインの2種類があること
圧縮方法にZlib,LZ4などがあり,Zlibは圧縮率が高く速度が普通,LZ4は圧縮率はそこそこで速度がはやい。んで、速度のほうがわりと重要(ここの理由を理解していない)
インデックスのオンラインにおける整合性のとり方
検索にはスクリプト構文とクエリ構文の2種類がある
わからなかったこと
Groongaはテーブルを型にできる
バックアップはカラムごとではなくページ単位でやる(これは理由がわからない)
インデックスの下にJVM
参照ロックフリー
スキップ機能
そもそもテーブルの作り方がわからない
そもそもそもそもGroongaはなんのプログラミング言語で書かれてるのか知らないまま行ってしまった
感想
普段は函館に住んでるのでなかなか勉強会に行けないがまた東京や札幌にいく機会があればもう一度参加したいと思った。Groonga以外の検索関連の勉強会も参加してみたい。検索をつくるのに必要な学ぶ分野を頭の中で整理できたのでよかった。まだ検索を作る側の1%も知れていないが今回の新リリース自慢会だけでも日本語検索がいかに難しいかということがわかった。
※この記事はGoogle Driveで公開したものと同じです。