#2 spring batch 使用场景

spring batch 给出了如下几个使用场景

商用场景
[list]
[*] Commit batch process periodically
[*] Concurrent batch processing: parallel processing of a job
[*] Staged, enterprise message-driven processing
[*] Massively parallel batch processing
[*] Manual or scheduled restart after failure
[*] Sequential processing of dependent steps (with extensions to workflow-driven batches)
[*] Partial processing: skip records (e.g. on rollback)
[*] Whole-batch transaction: for cases with a small batch size or existing stored procedures/scripts
[/list]


我自己的想法来看的话,我觉得spring batch只是存在与一般的java程序与hadoop的模糊界限地带。spring batch所能做的,hadoop都能做。但是spring batch写了一个java batch job framework,它的作用就是帮你管理好你的job,各种监控,流程控制,重启等,也可以说是一个标准,免得你自己写一个frameword的时候,漏掉很多细节。

不过你要把spring batch的工作都放到hadoop里面做,可能hadoop有点大柴小用了,此外,还有以下几点考量

1. 学习梯度
学习梯度很重要,hadoop上手挺不容易的,写好一个M/R也不是那么简单的,如果你简单的new File()都可能让你的hadoop挂掉。spring batch 有与 spring 结合的很好,学习梯度小,例子也很多。spring batch 最好的还是job管理,这点的话hadoop有些东西还是得配置。此外你spring batch 配置Master/Slaver也比hadoop快捷的多。

2. 成本需求
成本除了机器成本之外,人力成本也是很重要的。与其搞一个team来弄hadoop,不如让程序员自己看看spring batch

3. 快速部署
spring batch最棒就是他的job管理,step的灵活配置,与spring的无缝结合,hadoop还要自己写一些处理逻辑


总结:
spring batch 对于处理批量任务还是挺棒的,hadoop更加有利于数据挖掘之类。spring batch适合规模不算太大的数据处理,hadoop那肯定是上规模的计算与处理了。spring batch应该是job的偏管理这块,而hadoop应该是偏计算这快。

以后发展方向可能要经常与spring batch,hadoop,data mining打交道了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值