任务耗时太长怎么办?(如何优化数据任务)

面对耗时过长的任务,优化是关键。除了考虑技术手段如数据倾斜、小文件问题,应首先评估任务是否可下线、降低频率或延后运行。减少数据量、优化JOIN策略及SQL结构也是有效方法。历史经验表明,下线任务和减少数据量能显著改善资源占用和任务耗时问题。
摘要由CSDN通过智能技术生成

任务耗时太长怎么办?

开发完需求之后,并不是万事大吉了。因为离线任务每天要运行,任务维护的工作,有时候比开发成本还高。
比较常见的问题是任务占据大量资源,耗时太久,无法按时产出,或者直接因资源不足失败。

如果只是个别任务占用过多资源,增加维护成本,还好解决。大不了拆分任务,或者直接下线任务。
最怕的是开发任务的时候,没有考虑过任务运行效率,导致整体资源不足以维护任务稳定按时产出,各种意外频发,防不胜防。那就不是处理个别任务就能解决的问题了。

而此时,要么财大气粗,直接加倍扩容。否则只能投入额外的人力对任务进行优化。

任务优化目的是为了任务减少资源(主要指计算资源)占用,减少任务耗时
单纯的用资源换时间或时间换资源,,我认为只是换了一种任务运行方案,不算是优化任务,除非对应资源多到不用是浪费的程度。

提到任务优化,不少人第一时间考虑的是技术上的,是不是数据倾斜?是不是小文件过多?是不是reduce数量太少?

但我觉得,在考虑如何使用技术手段之前,还有更应该考虑的问题

  1. 任务是否能下线?下线的任务优化程度是100%。
  2. 任务能不能降低频率?原来15min一次的能不能改成60min?能释放某些时段的资源。
  3. 任务能不能延后运行,放到资源空闲时期运行?空闲的计算资源基本上等于浪费,能用就是多出来的。
  4. 任务读取的数据量能不能减少?比如原来任务要取近30天的数据,能不能只取15天。减少一半数据量,会减少大
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值