数据工作通常先在样本上做原型,然后直接指向全量。原型是按「看得懂」写的,而看得懂在全量上是贵的。
差别不是一个常数倍,而是另一种形状的活。
时间花在哪
- 逐行调用模型或服务,这一项压倒其余一切
- 一万行时没事、全量时很慢的无索引关联
- 反复计算一个根本不会变的指纹
- 一行一行往库里写
每一样在样本上都看不见,在全量上都是决定性的。
批处理,加缓存
把需要同一个昂贵操作的行归到一批,并按内容缓存结果。算过一次的指纹,就不该再算第二次。
调模型的时候按输入长度分批,免得慢的那些堵住队列。
让它能断点续跑
跑到八成失败、然后从零重来的任务,会以同样的方式再失败一次。写检查点,让每个阶段幂等,重跑不会把行插两遍。
按阶段量
每个阶段都计时、计数,不只在最后量。慢的那一段,通常不是大家猜的那一段。
这些集合由 Zovda 通过 Datuva 跑,每个阶段报自己的计数。数据研究语料展示了一次运行是怎么被描述的。
告诉我们你的链路卡在哪,我们会在 1 个工作日内回复。
