批处理

                                通用批处理指导原则

 1、批处理架构通常会影响在线服务的架构,反之亦然。设计架构和环境时请尽可能使用公共的模块。
 2、尽可能的简化,避免在单个批处理应用中构建复杂的逻辑结构。
 3、尽可能在数据存放的地方处理这些数据,反之亦然(即,各自负责处理自己的数据)。
 4、尽可能少的使用系统资源,尤其是I/O。尽可能多地在内存中执行大部分操作。
 5、审查应用程序I/O(分析SQL语句)以避免不必要的物理I/O。特别是以下四个常见的缺陷(flaws)需要避免:
          a、在每个事务中都将(所有并不需要的)数据读取,并缓存起来;
           b、多次读取/查询同一事务中已经读取过的数据;
           c、引起不必要的表或索引扫描;
           d、在SQL语句的WHERE子句中不指定过滤条件。

6、在同一个批处理不要做两次一样的事。例如,如果你需要报表的数据汇总,请在处理每一条记录时使用增量来存储,尽可能不要再去遍历一次同样的数据。
 7、在批处理程序开始时就分配足够的内存,以避免运行过程中再执行耗时的内存分配。
 8、总是将数据完整性假定为最坏情况。插入适当的检查和数据校验以保持数据完整性(integrity)。
 9、如有可能,请为内部校验实现checksum。例如,平面文件应该有一条结尾记录,说明文件中的总记录数和关键字段的集合(aggregate)。
10、尽可能早地在模拟生产环境下使用真实的数据量,进行计划和执行压力测试。
11、在大型批处理系统中,备份会是一个很大的挑战,特别是 7x24小时不间断的在线服务系统。数据库备份通常在设计时就考虑好了,但是文件备份也应该提升到同养的重要程度。如果系统依赖于文本文件,文件备份程序不仅要正确设置和形成文档,还要定期进行测试

来源:https://kimmking.gitbooks.io/springbatchreference/01_introduction/14.html

转载于:https://my.oschina.net/xiaoyaoyoufang/blog/1793335

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值