mcpField
D
data-pipeline-architect

data-pipeline-architect

github.com/wyattowalsh数据与数据库537 次安装8 周前更新
代码仓库

关于 data-pipeline-architect

data-pipeline-architect 是用于设计、审查和运维批处理、流式及混合数据管道的技能,面向数据架构与工程工作。它强调数据契约、恢复机制、质量控制和迁移规划。

主要功能

  1. 01设计批处理、流式及混合管道
  2. 02审查可靠性、质量与成本
  3. 03规划检查点、重放和隔离
  4. 04定义数据契约与数据血缘
  5. 05制定迁移及回填方案

适用场景

  1. 01设计 API、文件、数据库或事件流摄取
  2. 02选择批处理或流式处理模式
  3. 03排查新鲜度、质量或成本问题
  4. 04规划回填、重放或平台迁移

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/wyattowalsh/agents --skill data-pipeline-architect

安装后在 Claude Code 中输入/data-pipeline-architect确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
evals.json
references/
decision-matrix.md
failure-modes.md
output-templates.md
worked-examples.md
scripts/
check.py
scripts/asset_toolkit/
__init__.py
_shared.py
common.py
package.py
validate_evals.py
validate_hooks.py
validate_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、文件、数据库或事件流摄取数据的方案
  • 在批处理、流式处理或混合数据移动方式之间进行选择
  • 定义数据约定、数据沿袭和恢复策略
  • 审查存在新鲜度、质量或成本问题的管道
  • 规划回填、重放或平台迁移

分类逻辑

选择模式前,先进行以下判断:

  1. 如果任务主要涉及数据库模式建模、表设计或索引策略,请使用 database-architect。
  2. 如果任务主要涉及对已生成数据进行 BI 分析、指标解读或仪表板叙事,请使用 data-wizard。
  3. 如果任务主要涉及供应商设置、集群预配、代理管理或部署配置,请使用 devops-engineer 或 infrastructure-coder。
  4. 如果任务主要涉及针对故障管道的事件指挥或中断协调,请使用 incident-response-engineer。
  5. 如果任务主要涉及服务级遥测架构,而非管道控制措施,请使用 observability-advisor。

指令

模式:设计
  1. 确定数据源、数据接收端、延迟预期、数据量、正确性要求和下游使用者。
  2. 选择处理模型:批处理、流处理或混合处理。
  3. 如果处理模型、交接契约或重放策略不明确,请使用 references/decision-matrix.md。
  4. 定义各个阶段:摄取、验证、规范化、转换、发布和监控。
  5. 为每次交接编写数据契约,包括架构、质量检查、新鲜度目标和责任方。
  6. 指定检查点、重放策略、迟到数据处理方式和隔离区行为。
  7. 制定包含可观测性和成本控制的架构。
模式:审查
  1. 阅读流水线描述、编排流程和数据集接口。
  2. 检查是否存在薄弱的契约、静默数据丢失、不佳的重试边界、不清晰的数据沿袭或缺少重放策略等问题。
  3. 分别标出可靠性、质量、成本和可操作性问题。
  4. 在完成审查前,使用 references/failure-modes.md 对可能被忽视的问题进行压力测试。
模式:运维
  1. 定义流水线 SLO:新鲜度、成功率和数据质量阈值。
  2. 指定哪些内容会创建检查点、哪些会重试,以及哪些会被隔离。
  3. 设计不会干扰实时路径的回填和重放路径。
  4. 推荐与重要业务故障模式相关联的仪表板和警报。
  5. 明确实时和重放的状态转换,让运维人员能够判断哪些数据可以安全地重新运行。
模式:迁移
  1. 梳理当前状态和痛点:cron 作业、脆弱的脚本、隐藏的契约或平台锁定。
  2. 一次迁移一个阶段,同时保留数据源的真实语义。
  3. 为迁移窗口定义共存、验证和回滚方案。
  4. 将迁移状态记录与业务输出状态分开,确保切换验证可审计。
模式:契约
  1. 定义数据集负责人、架构版本规则、新鲜度目标和必需的验证。
  2. 明确指出哪些变更属于破坏性变更,哪些属于非破坏性变更。
  3. 说明无效记录的形式及其处理方式。
  4. 定义契约版本变更时,使用者对重放和回填的预期。

输出要求

  • 每个设计都必须说明处理模型,以及每个边界处的契约。
  • 每次审查都必须分别列出可靠性、数据质量和成本方面的发现。
  • 每个运维方案都必须包含检查点、重放和隔离。
  • 每个迁移方案都必须说明共存边界、回滚触发条件和验证检查点。
  • 每份契约都必须说明责任方、新鲜度、版本控制和无效记录处理方式。

关键规则

  1. 每个生产者与使用者之间的边界都必须有明确的数据契约。
  2. 流水线必须定义无效记录的隔离或拒绝方式。
  3. 回填和重放必须与实时路径分开设计。
  4. 新鲜度和质量目标必须可衡量,而非仅隐含说明。
  5. 如果任务主要是分析已生成的数据,请将其交由 data-wizard 处理。

扩展策略

  • 小型:单数据源或单接收端的批处理流程。在增加更多阶段之前,优先采用一个持久化检查点边界、一种批处理周期和一条清晰的重放路径。
  • 中型:多阶段批处理或微批处理流程。增加阶段级契约,分离发布边界,并在各阶段之间进行面向批处理的验证。
  • 大型:包含多个使用者的混合或流处理流程。在推荐拓扑之前,先定义水位线、迟到数据策略、回填隔离和并行恢复边界。
  • 大型迁移或平台变更:将共存、重放和切换视为独立的批处理工作流,而非一次性的大规模重写。

状态管理

  • 在每个恢复边界持久化检查点状态,让运维人员知道哪些内容可以安全重试、重放或跳过。
  • 将水位线或批次窗口进度与业务输出状态分开跟踪,让迟到数据和重放情况清晰可见,而不是依靠推断。
  • 将隔离区元数据、契约版本和血缘引用与失败或重放的记录一并保存,以便审计恢复决策。
  • 在建议重试或双跑迁移之前,先明确摄取、转换和发布阶段的幂等性预期。

渐进式披露

  • 从本文件中的模式契约开始,仅在出现当前不确定事项时加载用于解决该问题的参考文件。
  • 当拓扑结构或重放策略尚未明确时,使用 references/decision-matrix.md。
  • 当需要审查可靠性、质量漂移或运维负担时,使用 references/failure-modes.md。
  • 当用户需要可供调整的具体模式时,使用 references/worked-examples.md。
  • 当用户需要结构化的响应格式时,使用 references/output-templates.md。

范围边界

适用范围: 摄取架构、编排边界、可靠性策略、数据契约、血缘、重放、迁移规划。

不适用范围: 临时分析、BI 叙事、底层 DBA 工作或从零开始的架构建模。

评论

支持 Markdown