Liferay Enterprise Search
- [LES]: Elastic Support Diagnostics Troubleshooting Utilityのインストールと実行方法について
 - [LES] Elasticsearchでロードバランサーを使うには?
 - [LES] ElasticsearchにLearning-to-Rankプラグインをインストールすると "IllegalStateException: ltr requires Java 14 "で失敗する。
 - [LES] Elasticsearchのライセンス期限切れについて
 - [LES] Elasticsearchの推奨Javaヒープサイズは?
 - [LES] Elasticsearch 仮想マシンの考察
 - [LES] Liferay Enterprise Searchを始めるにあたって
 - [LES] Liferay Enterprise Search サブスクリプションの一部として課金されるノード タイプ
 - Elasticsearch 7.17のサポート終了(EOL)のタイムラインとLiferay DXP Elasticsearchの互換性アップデート & FAQ
 - Liferay Enterprise Search Experiences (Blueprints) 1.1.0 for DXP 7.3 リリースハイライトとアップグレードの手順
 - Liferay Enterprise Search ExperiencesでLiferayの検索動作を簡単にカスタマイズできます。
 
[LES] Elasticsearchの推奨Javaヒープサイズは?
このコンテンツは、アクティブな Liferay Enterprise Search (LES) サブスクリプションをお持ちのお客様が利用できます。
質問
Elasticsearchの推奨Javaヒープサイズは?
回答
何をするかにもよります。 切子化、集約、親/子クエリを使用する場合は、より多くのヒープスペースが必要になります。 いくつかのパフォーマンステストを実行してヒープを監視して、適切なヒープサイズを把握することは理にかなっているかもしれません。
それに関わらず、 30.5GB よりも大きなヒープを設定し、利用可能なメモリの半分以下、どちらか低い方に設定することはお勧めしません。 (例:使用可能なメモリ128GB=最大30.5GBヒープ、使用可能なメモリ64GB=最大30.5GBヒープ、使用可能なメモリ32GB=最大16GBヒープ)。 この上限は、Lucene ソフトウェアが圧縮ポインタを使用できるようにするために必要なものです。
ログにこれが出てきたら
[INFO ][o.e.e.NodeEnvironment ] [node01] heap size [30.5gb], compressed ordinary object pointers [true]
の場合は、圧縮されたオブジェクトポインタが使用されています。
でもこれを見たら
[INFO ][o.e.e.NodeEnvironment ] [node01] heap size [35.0gb], compressed ordinary object pointers [false]
の場合、長いポインタが使われているので、elasticsearch ヒープに与えられるメモリ量を減らす方が効率的です。
詳しくは以下の記事も参考にしてみてください。
- https://www.elastic.co/guide/en/elasticsearch/reference/current/important-settings.html#heap-size-settings と
 - https://www.elastic.co/guide/en/elasticsearch/guide/current/heap-sizing.html.
 
Elastic、Elasticsearch、X-Packは、Elasticsearch BVの商標であり、米国で登録されています。 と、他の国の方にも紹介されています。