Ludiaメモ

みんな大好きPostgreSQLにSennaを組み込むLudiaのREADME見ながらひととおりやったときのメモ

インデックスアクセスメソッドの登録
RPM版のpostgresqlにインストールしたときには、Ludiaの登録に使用するファイルは
/usr/share/pgsql/pgsenna2.sql
になる
インストールはpsql内から
mydb=# \i /usr/share/pgsql/pgsenna2.sql
でOK

分かち書きより2-gramがいいかも
たとえば
-まだまだ
-まだまだまだ
-まだまだまだまだ
を、「まだ」で検索すると、分かち書きだと2つめしかヒットしない

スコアの取得
pgs2getscore(TABLE.ctid, ‘indexname’)
だが、ここでctidはレコードの物理位置TIDを表すもので、全てのテーブルで同じ書き方で良い
何故かスコアが全て0になるときは、下記REINDEXを行う必要があると思われ

REINDEXが必要は不要
sennaインデックス内ではレコードのTIDを保持している
TIDはVACUUM FULLやCLUSTERで変更されるため、そういう時はREINDEXが必要
ちなみにautovacuumはfull vacuumを行わないので大丈夫なハズ

最近のLudiaはVACUUM FULLやCLUSTERに対応しており、特にREINDEXを必要としない

関連記事

2個のコメント

  1. 2007 年 10 月 23 日 8:22 AM に投稿 | パーマリンク

    最近のLudiaは、VACUUM FULLやCLUSTERに対応していますよー。

  2. 2007 年 10 月 23 日 8:43 AM に投稿 | パーマリンク

    おお、Ludiaの中の人だ!
    既に対応されていたのですね、古い情報流しちゃってすいませんです
    まだまだいじり倒してみま〜す

コメントを書く

メールアドレスが公開されたり他で使われたりすることはありません* 印の項目は必須項目です。

*
(表示されません) *