[pgsql-jp: 41763] [ANN] PGroonga 0.2.0

Kouhei Sutou kou @ clear-code.com
2015年 1月 29日 (木) 12:36:26 JST


はじめまして、須藤といいます。

PostgreSQLで日本語全文検索を実現するための拡張機能をリリース
したので紹介します。
(このメーリングリストはこういうのってありですか。。。?)

PGroonga(ぴーじーるんが)という拡張機能です。
  https://github.com/pgroonga/pgroonga#readme
  http://groonga.org/ja/blog/2015/01/29/pgroonga-0.2.0.html

Groonga(ぐるんが)という国産の全文検索エンジン(*)があるので
すが、それをPostgreSQLから使えるようにしたものです。

(*) http://groonga.org/ja/

同様の拡張機能として、textsearch_groonga(*)というものがあり
ました。しかし、textsearch_groongaは最新のPostgreSQL・
Groongaではビルドできなくなっています。

(*) http://textsearch-ja.projects.pgfoundry.org/textsearch_groonga.html

PGroongaはtextsearch_groongaをベースとして最新のPostgreSQL・
Groongaで使えるようにしたものです。


PostgreSQLで日本語全文検索する方法としてGINを使った
pg_bigm(*)があります。

(*) http://pgbigm.sourceforge.jp/

pg_bigmはインデックスを使った全文検索の後にRecheckというシー
ケンシャルに検索文字列が含まれているかをチェックする処理(*)
が必要になりますが、PGroongaではインデックスを使った全文検索
だけで完結するためRecheck処理は必要ありません。そこらへんで、
pg_bigmよりも性能がよくなるケースがあるんじゃないかと期待し
ています。(要ベンチマーク。興味のある人はベンチマークをとっ
てくれるとうれしいです。。。)

(*) http://pgbigm.sourceforge.jp/pg_bigm-1-1.html#enable_recheck


PGroongaはGroongaをベースにしているため、単純な全文検索以外
にも近傍検索や類似文書検索など高度な全文検索機能も使える余地
があります。(今はまだ実装していませんが。。。)

PostgreSQLで日本語全文検索をしたい方はぜひ試してみてください!
インストール方法(*)や使い方は↓を参考にしてください。
  https://github.com/pgroonga/pgroonga#readme

(*) CentOS 7用のパッケージだけ提供しています。次回のリリース
ではUbuntu 14.10のパッケージも提供する予定です。


pgsql-jp メーリングリストの案内