不用担心,对于PDI来说,20百万条记录是一个小数字,如果表格打开输入,你就不会锁定它。这就是为什么
Bulk load
用于输出表而不是输入表。
然而,一个常见的初学者陷阱是
Truncate table
输出表上的选项。如果您运行(不充分或并行处理)两次输出步骤,则每个将锁定另一个。永远。
加快:你可以使用
Lazy conversion
复选框输入,以便数据保持字节格式,直到使用。但我不确定你是否在一个简单的输入/输出表上获胜。如果在输出文件上写入日期或Blob时发生错误,则错误消息将非常神秘。
您还可以通过增加提交大小来提高输出速度(最糟糕的是在Oracle中进行一些试验),并通过增加
number of rows in row set
这会增加读取的行数
table input
。要这样做,请右键单击任意位置
Properties/Miscelanous
。
我真正建议的是增加JVM内存大小。使用编辑器(记事本或更好)编辑名为的文件
spoon.bat
。你会在第94-96行找到一条包含类似“-Xmx256K”的行。将其更改为“-Xmx4096M”(其中4096是机器RAM大小的一半)。
执行“批处理”有很多意义。其中一个正在酝酿之中
Make the transformation database transactional
。您可以使用上面提到的复选框进行操作
Number of row in rowset
(并且拼凑为
Make the transformation database
在PDI最新版本)。选中该框后,如果出现问题,数据库的状态将回滚,就好像转换从未执行过一样。但我不建议你这样做。