Jira サーバーで再インデックス時間を短縮する

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問


プラットフォームについて: Server と Data Center のみ - この記事は、サーバーおよびデータセンター プラットフォームのアトラシアン製品にのみ適用されます。


問題

大規模な Jira インスタンス (300,000 件~の課題) をお持ちの場合、完全な再インデックスには数時間かかる可能性があります。再インデックスのパフォーマンスは、CPU パフォーマンス、ディスク パフォーマンス、DB パフォーマンスなどのさまざまな要因に依存します。デフォルトでは、Jira 7.x は 10 個のスレッドのみを、Jira 8.x は 20 個のスレッドをそれぞれ再インデックスのために実行します。このため、ご利用のハードウェアの性能が高い場合、それをさらに活用して再インデックス時間を軽減できる可能性があります。これはバックグラウンドでの再インデックスには適用されません。バックグラウンドでの再インデックスは常にシングル スレッドで実行されます。 

ソリューション

最終的な目的は、システムのリソースを確認し、インデックス スレッドの数を限界まで増やすことです。1 つの要素にのみ目を向けることはおすすめしません。Lucene のディスク ライターはシングル スレッドであるため、この場合の目的は十分なデータを用意することになります。  

再インデックス中にシステムの負荷を確認します。

  • CPU 使用率 (50% 未満の場合、チューニングで改善を見込める可能性があります)
  • ディスク使用率 (70% 未満の場合、チューニングで改善を見込める可能性があります)
  • DB 使用率 (キャパシティがある場合は DB 管理者に確認)。必要に応じて DB プールのサイズを増やします。 

チューニング

$JIRA_HOME/jira-config.propertiesjira.index.issue.threads の値を追加または更新します。

Jira 7.x の場合

# jira.index.issue.threads = 10 (default for Jira 7.x)
jira.index.issue.threads = 20

Jira 8.x の場合 - CPU 数が許容される場合にのみ変更。例: 32 個の CPU のシステムでは値を 30 または 32 に設定

# jira.index.issue.threads = 20 (default for Jira 8.x)
jira.index.issue.threads = 30

チューニングのヒント

  • 値を高くしすぎないようにします (例: CPU コア数の 2 倍~)
  • 値 20 から開始し、少しずつ増やしながら再インデックスを都度実行します。大きな改善が見られない場合は変更をロールバックします。 

詳細についてはこちらをご確認ください。  JRA-38598 - Getting issue details... STATUS   JRA-25788 - Getting issue details... STATUS

上述の課題にある例の抜粋です。

1.

週末にスレッドの数を 50 個に増やしたところ、ロックアウトのインデックス時間が 50 分から 10 分に短縮されました。平均コア使用率は 10% から 40% に増えました。

2. 

300,000 件の課題、32 コア、48 RAM インスタンスでのテストの結果です。10 から 32 スレッドにすることで、時間が 29 分から 15 分に短縮されました。

3.

スレッドを 20 に設定しました。インデックス時間を 1 時間軽減できました。これまで 3 時間 40 分だったのが 2 時間 40 分になりました。


説明大規模な Jira インスタンス (300,000 件~の課題) をお持ちの場合、完全な再インデックスには数時間かかる可能性があります。再インデックスのパフォーマンスは、CPU パフォーマンス、ディスク パフォーマンス、DB パフォーマンスなどのさまざまな要因に依存します。デフォルトでは、Jira は 10 個のスレッドのみを再インデックスのために実行します。このため、ご利用のハードウェアの性能が高い場合、それをさらに活用して再インデックス時間を軽減できる可能性があります。これはバックグラウンドでの再インデックスには適用されません。バックグラウンドでの再インデックスは常にシングル スレッドで実行されます。 
製品Jira
プラットフォームサーバー
最終更新日: 2020 年 12 月 13 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.