数据 · 2026年9月22日
也发布于 ไทย
数据工程师的角色与责任
数据工程师的工作中充满了重复性的任务,如从API获取数据、检查结构、转换字段以及将结果写入存储。围绕这些任务,需要进行设置、测试、错误消息处理和文档编写。这样的工作可以委托给代理人来完成,比如编写Airflow任务图:获取API数据,保存到S3,使用Pydantic检查结构并加载到存储中,同时添加重试、日志记录和测试。
然而,随着实现越来越多地可以通过描述获得,数据工程师将负责什么?编写代码从来不是全部工作,代码的结果很明显,然而保证系统不丢失数据、没有过载源请求以及避免夜间恢复的解决方案却不那么显而易见。
在数据加载过程中,若出现失败,需要考虑几个问题:如何确认所有预期文件已到达?何时允许使用这些文件?重新启动时会发生什么?是否存在之前的工作版本?合理的文件加载设计需要确保新的文件与当前版本分开存储,发布前检查完整性和内容,确保消费者仅使用准备好的版本。
代理人可以被要求实现这种方案,并寻找潜在的弱点。然而,首先需要有人明确需求,并决定哪些保证是必要的。提出解决方案和做出决定是不同的任务。利用代理进行设计是可行的,但不能仅仅因为是模型提出的建议而拒绝它们。最终,客户期望获得的是一个有效的系统,而不是一个聊天中的回答。
SQL和Python的知识依然重要,数据工程师在处理过程中需要明白代码的行为,以及如何评估和确保数据的完整性和一致性。错误的假设可能导致处理结果不准确,因此基本知识对于识别遗漏的情况、提问和区分工作解决方案与貌似合理的解决方案是至关重要的。