概要

PGroongaはPostgreSQLの拡張機能です。PGroongaはGroongaを使った新しいインデックスアクセスメソッドを提供します。

Groongaは組み込み可能な超高速全文検索エンジンです。GroongaはMySQLにも組み込めます。MroongaはGroongaベースのストレージエンジンです。Groongaはスタンドアローンの検索エンジンとしても使えます。

PostgreSQLはアルファベットと数値だけを使った言語の全文検索だけをサポートしています。これは、日本語や中国語などはサポートしていないということです。PGroongaをPostgreSQLにインストールすると全言語対応の超高速全文検索機能を使えるようになります!

さらに、PGroongaはJSON内のすべてのテキスト値に対する全文検索もサポートしています。これは他にはない機能です。組み込みのPostgreSQLの機能でもJsQueryでもサポートしていません。

関連する拡張機能

あらゆる言語をサポートした全文検索を実現するための拡張機能がいくつかあります。

PGroongaはソースコードを変更しなくてもあらゆる言語をサポートした全文検索を実現できます。

PGroongaはRecheckなしで動きます。インデックスを使った検索で誤検出をしないからです。そのため、PGroongaはヒット数が多くなる場合でも高速です。

PGroongaはレプリケーションをサポートしています。レプリケーション機能を使うにはPostgreSQL 9.6以降が必要です。

PGroongaはクラッシュセーフではありません。更新中にPostgreSQLのプロセスがクラッシュした場合はPGroongaのインデックスが壊れるかもしれません。PGroongaのインデックスが壊れたらREINDEXPGroongaのインデックスを再作成する必要があります。

歴史

PGroongaはtextsearch_groongaをベースにしています。textsearch_groongaは板垣貴裕さんが開発しました。感謝します。

次のステップ

使ってみたくなりましたか?PGroongaをインストールしてチュートリアルを試してください。PGroongaについてもっと理解できるはずです。