java临时记录表数据_Spring Batch - 临时表设计 - 将数据传输到主表

我正在开发一个数据加载器应用程序,它使用平面文件读取数据并插入到临时临时表中 . 这是使用MultiResourcePartitioner( thread pool 10-11,queue 151 )完成的,其中每个步骤对每个文件并行运行 . 有大约 15000 个文件,所以一旦第一个 set of 150 file resources 完成, jobexecutiondecider 将 again run another 150 files 类似,这样直到15000个文件完成 .

下一步是将数据从登台表移动到主表,然后压缩文件并将其移动到另一个位置 . 在设计升级和归档步骤时,我要求您输入中等吞吐量,如果作业失败,则在下一次运行期间,即 . 在大约3个小时之后,它应该清除所有陈旧数据并将 COMPLETED 数据移动到主表 . 当我说 COMPLETED 时,这意味着一个完整的完整文件被成功读取并插入到临时表中 . 只有这些数据被移动到主表 . 我们还有另一个表,用于存储文件名,文件路径和完成状态,并在成功完成文件后更新,更新afterStep方法 .

Note:

我们不希望直接插入到主表中,因为该表具有物化视图,因此删除主表中的陈旧数据会影响业务用户查看报表,有一次他们看到记录,下次记录因工作而消失每小时运行并清除不成功的数据 .

我目前的方法是运行与多源分区步骤并行的分段步骤,并有一个固定延迟为2分钟的预定任务执行程序,tasklet bean轮询登台表,移动已处理标志Y的数据并从分段表中删除,同时监视分区步骤,无论是运行还是停止 . 如果正在运行tasklet将返回RepeatStatus.CONTINUE,如果分区步骤完成,则完成RepeatStatus.FINISHED . 最后一步将归档文件 . 当作业再次启动时,如果某个归档文件未完成,这是从另一个存储文件名等的表中已知的,列is_archived是Y未存档,A archived.let我知道您的注释 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值