Solr - 頻繁なOOM(Out Of Memory)

トピック作成者:ks-solruserml-bot (2024/06/26 20:19 投稿)
5
CloseClose

(The bot translated the original post https://lists.apache.org/thread/mqr98oqb9n5ptqp51pd1ogbjp2hlkpp4 into Japanese and reposted it under Apache License 2.0. The copyright of posted content is held by the original poster.)

こんにちは、

SolrCloud 5.4.1のデプロイメント(3ノード、各12コア、18GB RAM)を調整していますが、グループクエリの実行中に頻繁にOutOfMemoryError(1日あたり合計20回)の例外が発生しています。

クエリのgroup.limit=1を見ていますが、行の範囲は1000から10000の間です。Solrクエリを分析しており、OOMをよりよく分析するためにアクティブスレッドと割り当てメモリをダンプするためのいくつかのJVMパラメータを追加しました。しかし、経験からどの程度OOMを心配すべきかをお聞きしたかったのです。
つまり、私はできるだけ早くこれらを取り除くために作業をしていますが、OOMが発生したときにSolrの動作が完全に損なわれるのか、それともシームレスに通常の動作に戻るのか知りたいです。

よろしくお願いします。
Vincenzo

返信投稿者:ks-solruserml-bot (2024/06/26 20:19 投稿)

私の経験では、Solrはそのような問題をかなりうまく処理しますが、時々、OOMの後にファイルハンドルの消失や奇妙な動作が見られることを覚えています。

返信投稿者:ks-solruserml-bot (2024/06/26 20:19 投稿)

OOM例外に遭遇した場合は、毎回JVMを再起動する必要があります。OOMが発生すると、JVMの状態は不確定になります。この理由から、OOMが発生した際に自動的に再起動するためのJVMフラグがあります。

返信投稿者:ks-solruserml-bot (2024/06/26 20:19 投稿)

残念ながら、私の経験では、SolrはOOMをうまく処理できず、再起動が必要です。
たとえば、インデックス作成のジョブが進行中である場合や、高コストのグループバイやコラプスクエリが実行中である場合、IndexWriterやIndexSearcherが閉じられ、その後はSolrを再起動しない限りコアが機能しなくなります。Solrに再起動可能なオプションや、jvmがoom-killerによって完全にシャットダウンされない限りコアを自動的にリロードする機能があればいいのですが。

Rahul

返信投稿者:ks-solruserml-bot (2024/06/26 20:20 投稿)

他の方が述べているように、OOMが発生した際のJavaプログラムの状態は完全に予測不可能です。Solrの場合、インデックスの破損を含め、何が起こるかわかりません。

このため、Solrはbin/solrシェルスクリプト経由で起動される際に、OOMが発生した場合に自動的に終了するようなJavaパラメータで起動されます。この機能はまだWindowsには実装されていません。Javaの最低バージョンが11になるSolr 9.0以降では、この機能をWindowsにも対応させる方法を検討できると思います。

Solrには、OOM後に再起動する機能は組み込まれていません。なぜなら、一度OOMが発生すると、問題を修正するまで続けて発生する可能性が高いからです。自動的にSolrを再起動する何かを持っている人は、それを自分で実装していますが、Solrはデフォルトではそのような機能を持っていません。私はそのような機能を実装することはお勧めしません。通常、Solrはクラッシュしません。クラッシュする場合は、非常に深刻な問題があるはずで、それを修正する必要があります。

OOMに対処する方法は正確に2つあります。1つは、枯渇したリソースの利用可能量を増やすことです。これは実際にはメモリでないかもしれません。もう1つは、必要なリソース量を減らすために、インデックスサイズを縮小する、クエリを変更するなどの対策を講じることです。

ありがとうございます。
Shawn

返信投稿者:ks-solruserml-bot (2024/06/26 20:20 投稿)

最新バージョンのSolrCloudに更新してみてください。

注意:大きな変更があります。

トピックへ返信するには、ログインが必要です。

KandaSearch

Copyright © 2006-2024 RONDHUIT Co, Ltd. All Rights Reserved.

投稿の削除

この投稿を削除します。よろしいですか?