見出し画像

全文検索FESS クロールスケジューリング

前回までの設定で概ね本番稼働に向けての設定は進んで来たので運用面の調整を進めていきます。

本番稼働では日中は検索にパフォーマンスを集中して欲しいため、クロールは夜間に終わらせてしまいたいところ。

今回はクロールのグループを5つにわけて、曜日別にクロールを実施。
ファイル数を均等にクロールできるよう、フォルダ内のファイル数を調査してみたいと思います。

約200万ファイルを想定してこれを5つのグループに均等に割り当てるので1グループ40万ファイル以下にするのが理想的。

私は個別にフォルダのプロパティからファイル数、フォルダのサイズを確認するのがだるいので、バッチファイルのDIRコマンドでフォルダ構造を書き出し

dir  /a-d /s > DIR.TXT

書き出したファイルをEXCELマクロで整形するという方法をとっています。
ソースは汚いので割愛

一度書き出してしまえばどの拡張子はクロール対象外にしてもいいなとか、
ほぼ更新されないフォルダについては更新を頻繁にしなくてよいクロールグループを作ってみたりと、運用面で工夫の余地が生まれます。

検討の結果、誰も使用しない土日のクロール数を増やして、平日夜間のクロール数を最小限に、というのが私の環境での最適解でした。

スケジューリングの工夫でクロール時間に余裕ができたので、除外していた拡張子や、ファイルサイズの拡大を検討してもいいかなと、欲が出てきたところです。

この辺はクロールに割り当てるスレッド数やメモリの量にもよるので、
設置した端末の性能と相談しながら最適な条件を探るしかなさそうです。


いいなと思ったら応援しよう!