Solrの範囲検索は結構重い(まぁ、そりゃそうか。。)

Apache Solr入門 ―オープンソース全文検索エンジン
関口 宏司 三部 靖夫 武田 光平 中野 猛 大谷 純
技術評論社
売り上げランキング: 37660
おすすめ度の平均: 5.0

5 検索エンジンに興味のある全ての知識レベルの方にお勧め

 
↑のApache Solr入門でも触れられている(83ページ)を参考に
↓のような実装をしました。
=====
hoge_start_datetime:[* TO NOW] AND hoge_stop_datetime:[NOW TO *]
=====
 
20万件程度のインデックスデータから、データを取得するのに、
上記と他にいくつかの条件で検索をかけました。

日付の範囲検索を除くと↓で
<int name=”QTime”>7</int>
 
日付の範囲検索を入れると↓
<int name=”QTime”>50</int>
 
Solrの検索は100ミリ秒以内に返せればいいやと思っていたのですが、
Jmeterなどで負荷をかけるとリソースがかなり食われて、
100/secくらいでロードアベレージが30とかいくわ(8コアCPUのマシン)、
バンバン100ミリ秒こえちゃいましたログが出てしまいました。
# ちなみにクライアント側のタイムアウトの設定は、
# commonのHTTPClientにパラメータ渡してsetHostConfigurationしてやるアレです。
 
ということで、範囲検索を使う時は若干注意が必要かなと~。

コメント

  1. […] Solrの範囲検索は結構重い(まぁ、そりゃそうか。。) […]

  2. […] Checkだいぶ前に Solrの範囲検索は結構重い(まぁ、そりゃそうか。。) なんていうエントリを書きましたが、 […]

タイトルとURLをコピーしました