特别是以下四个常见的缺陷(flaws)需要避免:
在每个事务中都将(所有并不需要的)数据读取,并缓存起来;
多次读取/查询同一事务中已经读取过的数据;
引起不必要的表或索引扫描;
在SQL语句的WHERE...utility steps),如:
Sort排序,排序程序从输入文件读取记录,并根据记录中的某个key字段重新排序,然后生成输出文件....拆分可以自定义或者由参数驱动的(parameter-driven)系统实用程序来执行.
Merge合并,合并程序从多个输入文件读取记录,并将组合后的数据写入到单个输出文件中....在预处理阶段,所有指示器都被标志为未处理. 在批处理程序获取记录阶段,只会读取被标记为未处理的记录,一旦他们被读取(并加锁),它们就被标记为正在处理状态....然后可以将这个文件拆分成多个部分,作为批处理实例的输入.