IBM Support

Update タスクのキューの調整について

Question/Answer


Question

Update タスクには、キューを調整するためのパラメータが存在していますが、どのように設定するパラメータでしょうか。

Answer

Updateタスクは、主に全文索引とビュー索引を定期的に更新しており、3 つの処理を行っています。

・ Domino ディレクトリのビューを更新する (Directory Indexer)
・ Domino ディレクトリ以外のビュー索引を更新する (Indexer)
・ 全文索引を更新する (Indexer)

Update タスクを起動すると Directory Indexer と Indexer というスレッドが起動します。Directory Indexer タスク は 1 分間隔で Domino ディレクトリのビュー索引を更新しています。

Indexer は、ビュー索引や全文索引の更新を適切に行うために、即時キューと遅延キューという二つのキューを使用して処理を行っています。

即時キューと遅延キューで行われる処理としては、以下のようなものがあります。

即時キューに入って実行される処理:

Router によるメール配信処理に伴うメールデータベースのビューの更新処理、データベースプロパティより実行される「圧縮」処理

遅延キューに入って実行される処理:

ユーザーがデータベースプロパティよりリクエストした全文索引の作成や更新処理、ユーザーの文書追加/削除に伴う全文索引の更新処理(※1)、複製によって発生するビューの更新処理

(※1)全文索引の更新が遅延キューによって更新されるのは各データベースのプロパティにある [全文検索] タブの [更新の頻度] の設定が「即時」の場合になります。

Update の動きを調整するパラメータには、次のようなものがあります。

Updaters=<タスク数>
Update タスクの数を指定します。デフォルトは 1 です。

Update_Fulltext_Thread=<0/1>
Fulltext Indexer という全文索引の更新処理を専用のスレッドが起動します。多くのビュー索引の更新処理によって全文索引の更新が遅延するような場合に、専用スレッドを利用します。

0 はビュー索引と全文索引の更新は同一スレッドで実行します(デフォルト)
1 はビュー索引と全文索引の更新は別のスレッドで実行します

Update_Idle_Time=<秒単位>
Update_Idle_Time_MS=<ミリ秒単位>
データベースへのビュー索引の更新を行った後、次のデータベースの処理に移るまでのインターバルを秒単位で指定します。
より短いインターバルを指定したい場合はミリ秒単位を指定します。
デフォルトでは 5 秒です。

Ftupdata_Idle_Time=<秒単位>
Ftupdata_Idle_Time_MS=<ミリ秒単位>
データベースへの全文索引の更新を行った後、次のデータベースの処理に移るまでのインターバルを秒単位で指定します。
より短いインターバルを指定したい場合はミリ秒単位を指定します。

Update_Disable_Views=<0/1>
Update タスクによるビュー索引更新を無効にすることができます。
無効にした場合は、ユーザーがビューにアクセスするタイミングでビュー索引が更新されます。
0 はビュー索引の更新処理が有効になります (デフォルト)
1 はビュー索引の更新処理が無効になります
通常は、このパラメータで無効化した場合、updall タスクをスケジュールで実行します。

Update_Disable_Fulltext=<0/1>
Update タスクによる全文索引の更新を無効にすることができます。

0 は全文索引の更新処理が有効になります (デフォルト)
1 は全文索引の更新処理が無効になります
通常は、このパラメータで無効化した場合、updall タスクをスケジュールで実行します。Updall タスクは デフォルトで午前 2 時のタイミングで毎日実施されています。

Update_Suppression_Limit=<数>
遅延キューに保持する変更要求の数を指定できます。
デフォルトで 32767 です。

Update_Suppression_Time=<分単位>
遅延キューに登録した変更要求を保留する時間を指定できます。
マイナス値を入れると 秒単位で指定ができます。
デフォルトで 15 分です。

No_Compact_From_Client=<0/1>

0 はクライアントからのデータベースの圧縮要求が有効になります。
1 はクライアントからのデータベースの圧縮要求が無効になります。

 

遅延キューの状況を確認するには、統計情報を出力します。

> show stat update
[06CC:0006-10E8]   Update.DeferredList = 1
[06CC:0006-10E8]   Update.DeferredList.NextDueTime = 10/29/2018 14:23:53 ZE9

Update.DeferredListが遅延キューの数で、Update.DeferredList.NextDueTimeが次に遅延キューが処理される日時です。

大量のデータベースを頻繁に複製している場合には、遅延キューが蓄積する場合があります。

定期的に統計情報を収集し、遅延キューが蓄積しているけれども、プラットフォームのCPUやHDD I/Oリソースに余裕があるという場合は、Updateの調整を行うことで、スループットが向上する可能性があります。

具体的な調整の例としては、Indexer タスク: Update と Updall の「Update タスクとこのタスクでのシステムリソースの使用を管理する」を参照してください。

Document information

More support for: IBM Domino

Software version: 9.0

Operating system(s): Windows

Reference #: 0737631

Modified date: 05 November 2018