Holey inserts (Concurrent Write)

データベースに行 (レコード) を追加する際には、重複キーをはじめとしていろいろな事前検査があります。
ブロッキング・ファクターが大きかったり、いろんなジョブが同一のテーブルにアクセスするような状況の場合、この事前検査がデフォルトでは並列では行われないためのボトルネックが生じることがあります。

仕組みとどういう状況で有効かは Striving for Optimal Journal Performance on DB2 Universal Database for iSeries という Redbook の中の 5.3.6 Enabling Concurrent Writes (ECW) のところに詳しく書いてありますので、そちらを参照してください。

REUSEDLT(*YES) のテーブルにしか有効ではありません。

この機能は QDBENCWT という API を呼ぶことで設定されます。
'1' が ENABLE、'0' が DISABLE になっています。状態の変更には IPL が必要になります。

たとえば、以下のように '1' と引数をつけて実行した場合、まず現状が表示されます (今はこの機能は活動化されていない)。
そして次の行の "WILL BE ENABLED NEXT IPL" ということで、次回の IPL から有効になるということが示されていますね。

V5R3 では、REUSEDLT(*YES) のテーブルすべてに対してデフォルトでこの機能は有効になっています。
V5R3 Memo to user の「3.39.9 Enable concurrent write (ECW) default behavior on record inserts」に記述があります。

[Top Pageに戻る]

Ads by TOK2