关于 data-pipeline-architect
data-pipeline-architect 是用于设计、审查和运维批处理、流式及混合数据管道的技能,面向数据架构与工程工作。它强调数据契约、恢复机制、质量控制和迁移规划。
主要功能
- 01设计批处理、流式及混合管道
- 02审查可靠性、质量与成本
- 03规划检查点、重放和隔离
- 04定义数据契约与数据血缘
- 05制定迁移及回填方案
适用场景
- 01设计 API、文件、数据库或事件流摄取
- 02选择批处理或流式处理模式
- 03排查新鲜度、质量或成本问题
- 04规划回填、重放或平台迁移
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ wyattowalsh/ agents --skill data-pipeline-architect安装后在 Claude Code 中输入/data-pipeline-architect确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
evals/evals.jsonreferences/decision-matrix.mdfailure-modes.mdoutput-templates.mdworked-examples.mdscripts/check.pyscripts/asset_toolkit/__init__.py_shared.pycommon.pypackage.pyvalidate_evals.pyvalidate_hooks.pyvalidate_skill.py详细介绍
数据管道架构师
为批处理、流式处理和混合工作负载设计弹性的数据移动与转换系统。
范围: 数据摄取、转换、服务路径管道设计和运维控制。不适用于临时分析(data-wizard)或数据库模式设计(database-architect)。
规范术语
| 术语 | 定义 |
|---|---|
| source | 生成数据的上游系统 |
| sink | 接收数据的目标系统 |
| batch window | 作为单个计划单元处理的时间片 |
| watermark | 用于判断事件时间数据完整性的进度标记 |
| data contract | 关于架构、语义、新鲜度和质量的约定 |
| checkpoint | 用于重启和恢复的持久化进度状态 |
| late data | 在预期处理窗口之后到达的记录 |
| quarantine | 用于隔离无效或可疑记录的区域 |
| lineage | 从源记录经由转换到输出的追踪路径 |
| replay | 从过去某个时间点重新处理数据 |
分派
| $ARGUMENTS | 模式 |
|---|---|
design <pipeline> | 设计新的批处理或流式处理管道 |
review <pipeline or architecture> | 审查现有管道 |
operate <issue> | 改进可靠性、监控和恢复 |
migrate <change> | 规划管道迁移或重新构建平台 |
contract <dataset> | 定义生产者与消费者之间的数据约定 |
| 关于数据摄取、ETL、ELT 或流式处理的自然语言请求 | 自动识别最匹配的模式 |
| 空 | 显示包含示例的模式菜单 |
参考资料
| 文件 | 用途 |
|---|---|
references/decision-matrix.md | 选择批处理、流式处理或混合模式,确定约定风格和重放策略 |
references/failure-modes.md | 常见管道故障模式、症状和设计控制措施 |
references/worked-examples.md | 常见数据摄取和转换模式的示例 |
references/output-templates.md | 各公开模式的可复用输出格式 |
模式菜单
| # | 模式 | 示例 |
|---|---|---|
| 1 | 设计 | design clickstream ingestion to warehouse and feature store |
| 2 | 审查 | review nightly billing ETL architecture |
| 3 | 运维 | operate strategy for backfills and failed partitions |
| 4 | 迁移 | migrate from cron scripts to orchestrated pipeline |
| 5 | 约定 | contract orders fact table feed |
适用场景
- 设计从 API、文件、数据库或事件流摄取数据的方案
- 在批处理、流式处理或混合数据移动方式之间进行选择
- 定义数据约定、数据沿袭和恢复策略
- 审查存在新鲜度、质量或成本问题的管道
- 规划回填、重放或平台迁移
分类逻辑
选择模式前,先进行以下判断:
- 如果任务主要涉及数据库模式建模、表设计或索引策略,请使用
database-architect。 - 如果任务主要涉及对已生成数据进行 BI 分析、指标解读或仪表板叙事,请使用
data-wizard。 - 如果任务主要涉及供应商设置、集群预配、代理管理或部署配置,请使用
devops-engineer或infrastructure-coder。 - 如果任务主要涉及针对故障管道的事件指挥或中断协调,请使用
incident-response-engineer。 - 如果任务主要涉及服务级遥测架构,而非管道控制措施,请使用
observability-advisor。
指令
模式:设计
- 确定数据源、数据接收端、延迟预期、数据量、正确性要求和下游使用者。
- 选择处理模型:批处理、流处理或混合处理。
- 如果处理模型、交接契约或重放策略不明确,请使用
references/decision-matrix.md。 - 定义各个阶段:摄取、验证、规范化、转换、发布和监控。
- 为每次交接编写数据契约,包括架构、质量检查、新鲜度目标和责任方。
- 指定检查点、重放策略、迟到数据处理方式和隔离区行为。
- 制定包含可观测性和成本控制的架构。
模式:审查
- 阅读流水线描述、编排流程和数据集接口。
- 检查是否存在薄弱的契约、静默数据丢失、不佳的重试边界、不清晰的数据沿袭或缺少重放策略等问题。
- 分别标出可靠性、质量、成本和可操作性问题。
- 在完成审查前,使用
references/failure-modes.md对可能被忽视的问题进行压力测试。
模式:运维
- 定义流水线 SLO:新鲜度、成功率和数据质量阈值。
- 指定哪些内容会创建检查点、哪些会重试,以及哪些会被隔离。
- 设计不会干扰实时路径的回填和重放路径。
- 推荐与重要业务故障模式相关联的仪表板和警报。
- 明确实时和重放的状态转换,让运维人员能够判断哪些数据可以安全地重新运行。
模式:迁移
- 梳理当前状态和痛点:cron 作业、脆弱的脚本、隐藏的契约或平台锁定。
- 一次迁移一个阶段,同时保留数据源的真实语义。
- 为迁移窗口定义共存、验证和回滚方案。
- 将迁移状态记录与业务输出状态分开,确保切换验证可审计。
模式:契约
- 定义数据集负责人、架构版本规则、新鲜度目标和必需的验证。
- 明确指出哪些变更属于破坏性变更,哪些属于非破坏性变更。
- 说明无效记录的形式及其处理方式。
- 定义契约版本变更时,使用者对重放和回填的预期。
输出要求
- 每个设计都必须说明处理模型,以及每个边界处的契约。
- 每次审查都必须分别列出可靠性、数据质量和成本方面的发现。
- 每个运维方案都必须包含检查点、重放和隔离。
- 每个迁移方案都必须说明共存边界、回滚触发条件和验证检查点。
- 每份契约都必须说明责任方、新鲜度、版本控制和无效记录处理方式。
关键规则
- 每个生产者与使用者之间的边界都必须有明确的数据契约。
- 流水线必须定义无效记录的隔离或拒绝方式。
- 回填和重放必须与实时路径分开设计。
- 新鲜度和质量目标必须可衡量,而非仅隐含说明。
- 如果任务主要是分析已生成的数据,请将其交由 data-wizard 处理。
扩展策略
- 小型:单数据源或单接收端的批处理流程。在增加更多阶段之前,优先采用一个持久化检查点边界、一种批处理周期和一条清晰的重放路径。
- 中型:多阶段批处理或微批处理流程。增加阶段级契约,分离发布边界,并在各阶段之间进行面向批处理的验证。
- 大型:包含多个使用者的混合或流处理流程。在推荐拓扑之前,先定义水位线、迟到数据策略、回填隔离和并行恢复边界。
- 大型迁移或平台变更:将共存、重放和切换视为独立的批处理工作流,而非一次性的大规模重写。
状态管理
- 在每个恢复边界持久化检查点状态,让运维人员知道哪些内容可以安全重试、重放或跳过。
- 将水位线或批次窗口进度与业务输出状态分开跟踪,让迟到数据和重放情况清晰可见,而不是依靠推断。
- 将隔离区元数据、契约版本和血缘引用与失败或重放的记录一并保存,以便审计恢复决策。
- 在建议重试或双跑迁移之前,先明确摄取、转换和发布阶段的幂等性预期。
渐进式披露
- 从本文件中的模式契约开始,仅在出现当前不确定事项时加载用于解决该问题的参考文件。
- 当拓扑结构或重放策略尚未明确时,使用
references/decision-matrix.md。 - 当需要审查可靠性、质量漂移或运维负担时,使用
references/failure-modes.md。 - 当用户需要可供调整的具体模式时,使用
references/worked-examples.md。 - 当用户需要结构化的响应格式时,使用
references/output-templates.md。
范围边界
适用范围: 摄取架构、编排边界、可靠性策略、数据契约、血缘、重放、迁移规划。
不适用范围: 临时分析、BI 叙事、底层 DBA 工作或从零开始的架构建模。
评论
支持 Markdown