[pgsql-jp: 41821] [ANN] PGroonga 0.8.0

Kouhei Sutou kou @ clear-code.com
2015年 9月 2日 (水) 23:27:07 JST


須藤です。

PostgreSQLからGroonga(*)を使うための拡張機能、
PGroonga(ぴーじーるんが) 0.8.0をリリースしました!
PGroongaを使うと高速な日本語全文検索機能を使うことができます。

  http://groonga.org/ja/blog/2015/09/01/pgroonga-0.8.0.html

(*) 国産の全文検索エンジン: http://groonga.org/ja/


同様の機能を提供するLIKEやpg_bigmとの性能の傾向の違いについ
てはこちらをご覧ください。

  http://www.clear-code.com/blog/2015/5/25.html


機能面では次のような違いがあります。

                          | pg_bigm | PGroonga
  ------------------------|---------|--------
  Windowsサポート         | △(*1)  | ○
  bigramサポート          | ○      | ○
  形態素解析器サポート     | ×      | ○
  レプリケーションサポート | ○      | △(*2)

(*1) パッチはある
     https://osdn.jp/projects/pgbigm/lists/archive/hackers/2015-May/000271.html
(*2) PostgreSQLが提供するストリーミングレプリケーション機能は
     使えないがpg_shardが提供するレプリケーション機能は使える
     http://www.clear-code.com/blog/2015/5/18.html


今回のリリースの目玉は次の点です。

  * ログまわりの機能強化
  * 検索結果表示時に便利な機能を追加

「検索結果表示時に便利な機能」はPGroongaの全文検索機能を使わ
なくても使える(= LIKEやpg_bigmで検索した結果に対しても使え
る)ので、少し説明します。

pgroonga.snippet_html(*)という関数を追加しました。

(*) https://github.com/pgroonga/pgroonga#pgroongasnippet_html%E9%96%A2%E6%95%B0

この関数は指定したテキストから指定したキーワード周辺のテキス
トを抽出します。

Googleの検索結果で、ページのタイトル・URLの下にページの中の
テキストが表示されていますが、それと同様の機能です。
KWIC(KeyWord In Context)と呼ばれたりしているものです。

PGroongaで検索したかどうか、PGroongaでインデックスを張ってい
るかどうかに関わらず使えます。なので、

  SELECT pgroonga.snippet_html(...);

という使い方もできます。この機能を使いたい人はPGroongaを試し
てみてください。

具体的なSQLの実行例は↑のURLにあるので参照してください。


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