术语表
Spring Batch 术语表
- 批处理 (Batch)
-
一段时间内累积的业务事务集合。
- 批处理应用风格
-
一个术语,用于将批处理指定为一种独立的应用风格,类似于在线、Web 或 SOA。它包含输入、验证、信息转换为业务模型、业务处理和输出等标准要素。此外,它还需要在宏观层面进行监控。
- 批处理
-
处理一段时间(如一小时、一天、一周、一个月或一年)内累积的大量业务事务。它是一种重复且可预测的方式,将一个或一组流程应用于大量数据实体或对象,且不包含人工干预或为错误处理设置单独的人工干预部分。
- 批处理窗口
-
批处理 Job 必须完成的时间范围。这可能受到其他系统上线、其他依赖 Job 需要执行或批处理环境特有的其他因素的限制。
- Step
-
主要的批处理任务或工作单元。它初始化业务逻辑并根据提交间隔设置和其他因素控制事务环境。
- Tasklet
-
由应用开发者创建的一个组件,用于处理 Step 的业务逻辑。
- 批处理 Job 类型
-
Job 类型描述了 Job 在特定类型处理中的应用。常见领域包括接口处理(通常是平面文件)、表单处理(用于在线生成 PDF 或打印格式)和报表处理。
- 驱动查询
-
驱动查询识别 Job 需要完成的工作集。Job 随后将该工作分解为独立的工作单元。例如,驱动查询可能是识别所有状态为“待传输”的财务事务并将其发送到合作伙伴系统。驱动查询返回一组要处理的记录 ID。每个记录 ID 随后成为一个工作单元。驱动查询可能涉及连接(如果选择条件跨越两个或多个表)或仅涉及单个表。
- Item
-
Item 表示待处理的最小完整数据量。简单来说,它可能是文件中的一行、数据库表中的一行或 XML 文件中的一个特定元素。
- 逻辑工作单元 (LUW)
-
批处理 Job 通过驱动查询(或其他输入源,如文件)进行迭代,以完成 Job 必须实现的整套工作。每次执行的工作迭代都是一个工作单元。
- 提交间隔
-
在单个事务中处理的一组 LUW。
- 分区
-
将一个 Job 拆分成多个线程,每个线程负责处理总数据的一个子集。执行线程可以在同一个 JVM 内,也可以跨越支持工作负载均衡的集群环境中的多个 JVM。
- 暂存表
-
用于在处理过程中存放临时数据的表。
- 可重启的 (Restartable)
-
可以再次执行并假定与初次运行时相同身份的 Job。换句话说,它具有相同的 Job 实例 ID。
- 可重跑的 (Rerunnable)
-
一个可重启且能管理其自身状态(基于先前运行的记录处理情况)的 Job。可重跑 Step 的一个例子是基于驱动查询的 Step。如果驱动查询可以被构造,使其在 Job 重启时限制已处理的行,那么它就是可重跑的。这由应用逻辑管理。通常,会在
where
语句中添加一个条件,使用类似于and processedFlag != true
的逻辑来限制驱动查询返回的行。 - 重复
-
重复 (Repeat)
- 重试
-
重试 (Retry)
- 恢复 (Recover)
-
恢复操作以一种方式处理异常,使得重复过程能够继续。
- 跳过 (Skip)
-
跳过是一种恢复策略,常用于文件输入源,作为忽略未通过验证的错误输入记录的策略。