0

我有以下要求 -

我必须
1.query 一个表并选择大约 20k 行匹配一些条件。
2.处理这些记录并更改一些字段。
3.用改变的记录更新同一张表。

如何使用多线程批处理 SELECT、PROCESS 和 UPDATE 记录?有什么最佳实践吗?使用的最佳线程数是多少?任何替代方法?

!要使用的行相互独立

4

1 回答 1

0

当然,您意识到,除非您正在处理的行彼此完全独立,否则并发线程中的处理可能会损害性能。

对?

无论如何,我最好的建议:

1) 除非绝对需要,否则不要使用多线程

2)即使那样,除非“批次”是独立的,否则不要使用多个线程(一个批次中的任何内容都不需要等待另一个持有的锁)

3) 一起做查询、处理和更新,作为一个批次

……而且,最重要的……

4) 尽可能使用存储过程:

http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/c0007033.htm

于 2012-04-14T05:40:53.443 回答