三个IBM DB2中提高并发度的方法
作者: 洛克, 出处:赛迪网, 责任编辑: 王晓晨,
2008-07-17 10:11
三种方法来提高并发度:降低隔离级,读操作不会因为锁冲突被拦,改变加锁的时机;减少锁冲突;在where相关字段上加索引,减少锁占用。
DB2中,可以用三种方法来提高并发度:
1.降低隔离级, 读操作不会因为锁冲突被拦
select .... with UR
2.改变加锁的时机,减少锁冲突(这样其行上的insert/update/delete操作不会锁住条件不同select操作)
db2set DB2_EVALUNCOMMITTED=ON
db2set DB2_SKIPDELETED=ON
db2set DB2_SKIPINSERTED=ON
3.在where相关字段上加索引,减少锁占用
注解:
db2set DB2_EVALUNCOMMITTED=ON - 这个参数将在记录锁之前进行谓词检查,尽量减少锁的时间;
db2set DB2_SKIPINSERTED=ON - 这个参数将新insert且没有提交的数据跳过;例如,SELECT/UPDATE语句不会发现这条记录;
db2set DB2_SKIPDELETED=ON - 这个参数将新delete且没有提交的数据跳过;例如,SELECT/UPDATE语句不等待这条记录的提交,并且认为他已经被删除了。

