PostgreSQL用全文検索関連ソフトウェアは、独立行政法人情報処理推進機構 (IPA)の2006年度「自治体におけるオープンソースソフトウェア活用に向けての導入実証」プロジェクトの中で開発されたものです。
以下のものが含まれます (PostgreSQL 8.2 で動作検証)。
すべてBSDライセンスで公開されるオープンソースソフトウェアです。
自由に利用できます。
normalizeは、入力テキストを一定のルールにしたがって「正規化」します。
以下の機能を持っています。
これによって表記の「ゆれ」を吸収し、たとえば検索の際に表記のゆれによる検索洩れを防ぐことができます。
実行例を示します。
test=# SELECT normalize('01234567890123abcあいうえおABC'); normalize -------------------------------- 01234567890123abcあいうえおabc (1 row) test=# SELECT normalize('ガギグゲゴ'); normalize ------------ ガギグゲゴ (1 row)
wakachi は、mecabを使って形態素解析を行い、入力テキストをスペースで単語に区切る形、いわゆる「わかち書き」に変換する PostgreSQL のユーザ定義C関数です。
実行例を示します。
test=# SELECT wakachi('wakachiはPostgreSQLのユーザ定義C関数です'); wakachi -------------------------------------------------- wakachi は PostgreSQL の ユーザ 定義 C 関数 です
このほか、以下のようなものがあります。
functions Tsearch2、wakachi や normalize を使った全文検索データベースの例 utf8_and_euc_jp_jis PostgreSQL 8.2 の MS932 ベースの Unicode ⇔ EUC_JP 変換マップ (conversion) の一部を変更したものです。 「~」(WAVE DASH) や、「-」(MINUS SIGN) の変換を、MS932 ではなく、Shift JIS に合わせたものです。
03-5979-2701 |