シャード数 で質問です。

elasticsearchの記事を見ていると、シャードサイズは50GB以下に保つのが良いと書かれている場合があります。
この真偽は別として、これを実現するには、Fessのダッシュボード画面で、Fess.YYMMDDの項の、
「Shards :n*1、Doc:zzzz、Size: xxxx GB」
の表示で、xxxx/n <50GB となるように、nを調整すればよい、と解釈すればいいでしょうか?
また、このnの調整は、Fessのメンテナンス画面でnを「シャード数」として指定して再インデッシングをすればよいと解釈しましたが、こういった理解でいいでしょうか?

xxxx/n <50GB となるように、nを調整すればよい、と解釈すればいいでしょうか?

レプリカ数を0と考えれば、その解釈で良いと思います。

Fessのメンテナンス画面でnを「シャード数」として指定して再インデッシングをすればよい

はい、それで正しいです。

早速のご回答ありがとうございます。
早速やってみました。
やってみると、Fess.YYMMDDHHMM という長い名前のが出来て、
古いFess.YYMMDD もなぜか残っていました。
古い方は、ダッシュボード画面で▽を押して「Delete index」を実施すればいいのですね? (初歩的なことばかりですみません)

付いていたaliasが貼り代わって、問題がないようであれば、古いインデックスは手動で消してください。

ありがとうございました。
FESSドキュメントに「インデックスされたドキュメントを削除する場合は管理用の検索画面で削除します。「delete index」で削除しないように注意してください。」とあったので若干不安になりましたが、やってみます。
では。

Doc数が多い本番の方でやってみたのですが、
Docs が86000 に達すると、再インデクシングがストップして、エイリアスが新しい方に移って終わってしまいました。OOMなど発生したのかと思いましたが、2回やって2回ともdocs:86000で止まったので何らかの設定上の問題だと思いました。
どうすれば全文書で再インデクシングできますか?

elasticsearchのreindex apiに投げているので、elasticsearchのログを確認するのが良いと思います。

失礼しました。
3回やってすべて「docs:86000」で止まったので設定上の問題かと思いましたが、4回目は6万ぐらいで止まりました。
elasticsearch.logを見ると、

[INFO ][o.e.m.j.JvmGcMonitorService] [xxxx] [gc][7727] overhead, spent [253ms] collecting in the last [1s]

のようなのが続いて止まる場合と、上記の後、

[INFO ][o.e.c.m.MetadataMappingService] [xxxx] [fess.202102181158/CKllXoNdQRSfXcQStI3Qxw] update_mapping [_doc]
[WARN ][o.e.c.s.MasterService ] [xxxx] took [5.3m], which is over [10s], to compute cluster state update for [put-mapping [fess.202102181158/CKllXoNdQRSfXcQStI3Qxw][_doc]]

となって止まる場合がありました。
CPU負荷も高く、過負荷で処理が追いつかない感じでしょうか。

xmxを増加してみたり(4g→6g)、bootstrap.memory_lock: true としてみたりしてみましたが改善されず。

なにかいい手はないでしょうか?
(reindexをゆっくりやるような手とか)

その情報からだけでは何とも言えませんが、CPUのコア数とか少ないと厳しいと思います。
実行しているreindexに対して、elaticsearchにrethrottleを投げるとかしかないと思います。

返信ありがとうございます。
4コアですが少ないのですね。
(素人的には「遅いから結果がでるのも遅くなる」となってほしいところですが、JAVAはそういうもんじゃないようですね・・)
rethrottle ですが、具体的には以下のようになると考えましたがおかしな点あれば指摘ください。
(1)まず、再インデクシング操作をする
(2)以下コマンドをたたく
curl -XGET http://localhost:9200/_tasks?pretty
(3)「“action” : “indices:data/write/reindex”」となっているタスクIDをメモる
(4)以下コマンドをたたく
curl -XPOST http://localhost:9200/_reindex/xxxxxxxxxxxxxx:yyyyy/_rethrottle?requests_per_second=100
(5)Javaの状況を見ながら requests_per_second を調整する。

CPUが遅ければ、もろもろ遅くなるなりますが、GCするのにもCPUを使うので、GCが多発するような設定で使えば、GCにCPUが使われて想定以上に遅くなることもあると思います。reindexすると、1コアは100%で使われることになると思うので、それを踏まえて設定を調整する必要はあります。