hyperestraier 大規模インデックス(400万文書)構築時のテクニック(2)
 2006.09.22

hyperestraier-1.4.0 を使って,400万弱の文書のインデックスを作成しました.前編からご覧ください. さて,400万の文書を80万×5のインデックスに分割し,最後にマージする方法の結果です. 結論から言うと,かなりの高速化を達成しました.前編のときは10日以上経過してもインデックス構築は終了しませんでした.今回の分割・マージ作戦では,約53時間(2日強)で終了しました. 80万文書のインデックスを5個分構築するのにかかった時間は,約16時間.この処理には,文書をインデックスに登録する処理(estcmd gather)とキーワードデータベースを構築する処理(estcmd extkeys)が含まれています.ただし,単語の頻度データベース(estcmd words)は,前編のときに作成したものを用いましたので,頻度データベースを生成する時間は含まれていません. そして,5インデックスをマージする処理(estcmd merge)にかかった時間は,約37時間となりました.5つインデックスのうち一つを主インデックスとみなし,残り4つのインデックスを主インデックスにマージしました. estcmd merge を実装してくれた平林さん.ありがとう.スバラシイ.
カテゴリー:技術情報メモ