Data Pipeline Architect 是一个用于设计稳健、可扩展数据管道的技能,目标是让数据可靠地从来源系统移动到目标系统。
用途 该技能为数据管道设计提供指导,覆盖从需求分析到架构选型、组件设计、错误处理、数据质量与监控的完整流程。
主要能力
- 核心能力领域:ETL 与 ELT 模式对比(传统 Extract-Transform-Load 与现代 Extract-Load-Transform);编排工具,包括 Airflow、Dagster、Prefect、dbt;数据质量,包括校验、监控、血缘追踪;可扩展性,包括批处理与流处理、分区、并行化。
- 管道设计流程:需求分析(来源系统与数据格式,如 API、数据库、文件、流;目标端,如数据仓库、数据湖、湖仓;新鲜度要求,如实时、每小时、每天;数据量与速度估算;质量与合规要求);架构选择(批处理管道适用于周期性批量处理,调度驱动、延迟容忍度较高、错误恢复较简单,工具如 Airflow、dbt、Spark;流处理管道适用于实时需求,事件驱动、亚秒到分钟级延迟、状态管理复杂,工具如 Kafka、Flink、Spark Streaming;混合方案包括 Lambda 或 Kappa 架构,批处理层保证完整性、速度层保证低延迟、服务层用于查询)。
- ETL 与 ELT 决策:ETL 适用于目标端计算能力有限、转换能显著减少数据量、敏感数据必须在落地前脱敏、传统数据仓库模式;ELT 适用于现代云仓库计算成本低、需要保留原始数据、转换频繁变化、仓库内 dbt 风格转换。
- 管道组件:抽取层(全量抽取与增量抽取,如 CDC、基于时间戳;API 分页与限流;连接池与重试逻辑;模式检测与漂移处理);转换层(数据清洗与标准化、业务逻辑应用、聚合与反规范化、类型转换与空值处理);加载层(upsert 策略,如 merge、delete+insert;分区方案,如时间、哈希、范围;索引管理;事务边界)。
- 错误处理模式:重试与退避用于瞬时故障(网络、限流);死信队列用于无法处理的毒消息;检查点用于从上次成功点恢复;幂等性保证可安全重跑而不产生重复。
- 数据质量框架:在各阶段实施检查,包括抽取阶段的完整性(行数与来源匹配)与新鲜度(数据时间戳在 SLA 内)、转换阶段的有效性(值在预期范围内)与唯一性(主键唯一)、加载阶段的对账(目标与来源总量匹配)与完整性(外键有效)。
- 监控与可观测性:跟踪管道时长与趋势、各阶段行数、错误率与类型、数据新鲜度(距上次成功运行的时间)、资源利用率;告警条件包括 SLA 违规(数据不新鲜)、行数异常(偏离基线 ±20%)、来源模式变更、重复失败。
常见模式 缓慢变化维(SCD):Type 1 覆盖(无历史)、Type 2 新增行并带有效期、Type 3 前一值列、Type 4 历史表。增量处理:基于时间戳的增量查询,以及基于 CDC 从事务日志捕获插入、更新、删除。幂等加载:Delete + Insert 模式按日期分区删除后插入;Merge/Upsert 模式按主键匹配更新或插入。
使用方式 该技能以文档形式提供设计指导,包含参考文件:references/orchestration-patterns.md(Airflow、Dagster、Prefect 模式)、references/data-quality-checks.md(校验框架与规则)、references/pipeline-templates.md(常见管道架构)。具体安装或调用方式暂未提供。
适用场景 适用于需要设计批处理、流处理或混合数据管道的场景,尤其是涉及多来源抽取、仓库或湖仓加载、数据质量校验、编排调度、错误恢复与监控告警的数据工程项目。
限制 该技能为设计指导性内容,不包含具体实现代码或可直接运行的管道;实际工具版本、平台支持、收费与价格等信息暂未提供。