こんにちは、 chappie です。 以前投稿した記事にて PostgreSQL で大量データに対する中間一致検索(LIKE検索)するためのインデックス作成について簡単に触れました。そのとき、 pg_trgm (trigram, トリグラム)を利用するのが有力な候補であり、詳しくは別記事で、、、と書いたっきりでした。半年近く間が空いてしまって恐縮ですが、書くと言った以上、書かないと年が越せない気がするので、今更ながら当時調査した内容についてシェアします。 概要 日本語のテキストデータを含むカラムに対して中間一致検索をかけた場合、その程度のパフォーマンスが得られるのか調べました。1000万レコードの日本語テキストデータを準備し、以下の 3 つの手法による検索速度を比較します。 1. PostgreSQL の contrib である pg_trgm を使ったインデックスを作成する サイト「Le
![PostgreSQL で大量データの中間一致検索するなら?](https://cdn-ak-scissors.b.st-hatena.com/image/square/fc8ea0daf4dac9684ca652ef9826bef13dd05912/height=288;version=1;width=512/http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F2%2F29%2FPostgresql_elephant.svg%2F200px-Postgresql_elephant.svg.png)