Tasuku SUENAGA
a****@razil*****
2006年 12月 7日 (木) 00:22:41 JST
末永です。 『すべてのインデックスの.SEN.lファイル』とは、 SQLクエリに書かれているテーブルに振られているインデックス ではなく、 現在利用しているDB内に存在する、 全てのSennaインデックスファイルの和です。 検索・更新の実行にかかわらず、 データベースの利用中には上記のメモリを 常時占有しています。 なるべくメモリ利用量を削減したいと考えているのですが、 現在では以上のような挙動になっています。 >> >> 「すべてのインデックスの.SEN.lファイルのサイズの和 (MB) + >> >> INITIAL_N_SEGMENTS / 2 (MB) * インデックスの数」 >> >> ぶんの物理メモリは必要になると考えてください。 > > 『すべてのインデックスの.SEN.lファイル』とは、 > > SQLに書かれているテーブルに振られているインデックスの事で宜しいで しょうか? > > 例えば、 > > select * from a where match(body) against('the'); > > ならば > > aに振られているインデックスファイル > > a.001.SEN.l(001の部分は、002等も存在するので、ファイルは複数存在す る)を指 > > している。 > > > > 例えば、以下の様なSQLはまともに動かないですが > > select * from a,b where match(body) against('the'); > > ならば > > aとbに振られているインデックスファイル > > a.001.SEN.l+b.001.SEN.l > > > > それとも、DB全てのインデックスファイルの和でしょうか? --- Tasuku SUENAGA <a****@razil*****>