电脑技术学习

实例讲解IBM DB2中提高并发度的三个方法

dn001

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语句不等待这条记录的提交,并且认为他已经被删除了。