スケーラブルデータベースサーバ HiRDB Version 8 解説(UNIX(R)用)
排他制御の単位とその包含関係について説明します。
HiRDBは排他資源という単位で排他を掛けて,不正に参照されたり,更新されたりすることを防止しています。排他制御では排他資源の上位から下位へと順番に排他が掛けられます。排他を掛けていく途中で同一資源に対して,ほかのトランザクションと同時に実行できないトランザクションがある場合には,そのトランザクションは待ち状態になります。
また,排他資源には包含関係があるため,上位の資源で排他を掛けると,それより下位の資源には排他を掛ける必要がなくなります。排他資源とその包含関係を次の図に示します。例えば,表とページとの関係では,表が上位,ページが下位の排他資源です。
図6-26 排他資源とその包含関係
HiRDBが自動的にする排他制御に対して,表ごとに最下位の排他資源の単位を設定できます。最下位の排他資源の単位,設定方法及びそれぞれの長所と短所を説明します。
最下位の排他制御の単位を行にしたい場合には,定義系SQLのCREATE TABLEでLOCK ROWを指定します。最下位の排他制御の単位が行の場合の排他制御を行排他といいます。ページ排他と比較して排他資源の単位が下位であるため,同時実行性が向上します。しかしその反面,排他制御による処理時間やメモリ使用量が増加します。
最小の排他制御の単位をページにしたい場合には,定義系SQLのCREATE TABLEでLOCK PAGEを指定します。最下位の排他制御の単位がページの場合の排他制御をページ排他といいます。行排他と比較して排他資源の単位が上位であるため,排他制御による処理時間やメモリ使用量が減少します。しかし,その反面,同時実行性が低下します。
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.