AI 术语表 · 入门 · 数据工程
批处理
批处理(Batch Processing)是把数据积累一段时间,在预定时间点一次性处理的方式。每晚汇总当天的销售额就是典型例子。
通俗解释 这就像不是换下一件衣服就洗一件,而是先收进洗衣篮,晚上再用洗衣机一次洗完。效率高,但如果有急着要穿的衣服就得等,这一局限也一样。
工作原理
先把一天内积累的订单记录或日志文件等特定范围的数据收集起来。调度器到了预定时间(例如每天凌晨)便启动作业。处理引擎一次性读取收集到的数据,进行整理、转换和汇总,再把结果保存到数据仓库或文件中。数据量大时,会分配到多台计算机上同时处理,以缩短时间。
批处理作业的步骤
- 1收集数据订单记录、日志文件
- 2按设定时间启动由调度器执行
- 3一次性处理清洗、转换、汇总
- 4保存结果数据仓库、文件
为什么重要
由于一次处理大量数据,往往比以小单位持续做同样的工作效率更高、成本更低。结构简单,便于构建和运维;失败时重新运行同一作业即可,恢复也比较容易。月度报表、结算、通过 ETL 填充数据仓库等工作,大多用批处理完成。在 AI 领域,它也广泛用于不需要即时响应的大型任务,如训练数据清洗、大批量文档嵌入和模型评估。
注意事项
结果以最后一次运行的时间点为准,期间新产生的数据不会被反映。因此,它不适合需要在几秒内作出反应的欺诈检测或实时推荐,这类工作要用流处理。如果作业之间存在先后顺序依赖,就需要管理依赖关系,以免前一个作业失败时后一个作业使用错误的数据。也有做法是缩短运行周期,采用“短周期批处理”,在实时性与效率之间取得平衡。
批处理 vs 流处理
批处理收集后一次性处理
- 处理大量数据效率高
- 结构简单,便于重新运行
- 上次运行之后的数据不会被反映
流处理数据一产生就处理
- 几秒内响应
- 处理迟到的数据比较麻烦
- 需要一直运行,运维负担大
공통 两者都是数据管道的处理方式
示例
网上商城每天凌晨通过批处理作业汇总前一天的订单、退货和访问日志,统计销售额和库存,并赶在早上上班前更新仪表盘。同一批处理作业还会整理每位顾客的购买记录,提前生成推荐系统要用的特征。LLM 服务公司也常采用批处理方式,把不需要立即响应的大量文档摘要或分类任务集中起来一次性处理。