mcpField
S
schema-mapper

schema-mapper

github.com/nimrodfisher数据与数据库504221 次安装5 周前更新
代码仓库

关于 schema-mapper

schema-mapper 是用于梳理源字段与目标模型对应关系的数据工作流技能,可记录转换规则、缺口和处理决定。适用于数据团队集成数据源、规划 ETL 或 dbt 转换,以及审查字段沿袭。

主要功能

  1. 01比较字段名称匹配和类型差异
  2. 02映射源字段与目标字段
  3. 03记录转换规则与缺口
  4. 04生成列级映射文档

适用场景

  1. 01将新数据源接入现有模型
  2. 02规划 ETL 或 dbt 转换
  3. 03审查迁移中的字段变更
  4. 04为数据目录整理列级沿袭

安装

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

$npx skills add https://github.com/nimrodfisher/data-analytics-skills --skill schema-mapper

安装后在 Claude Code 中输入/schema-mapper确认已加载。

包含的文件

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

assets/
schema_mapping_template.md
references/
schema_mapping_patterns.md
scripts/
schema_compare.py

详细介绍

模式映射

适用场景

  • 集成新的数据源,需要将其字段映射到现有数据模型
  • 设计 ETL 或 dbt 转换,需要记录转换逻辑
  • 审核迁移期间某个字段的处理情况
  • 帮助新分析师了解列的来源
  • 准备需要列级血缘关系的数据目录条目

流程

  1. 收集源模式 — 列出每一列的名称、数据类型、可空标记和简要说明。可从 INFORMATION_SCHEMA、数据字典或源 API 文档中获取。
  2. 收集目标模式 — 以相同结构记录目标表或模型的信息。如果目标尚不存在,则根据分析需求起草。
  3. 将源列映射到目标列 — 对每个目标列,确定为其提供数据的源列。记录直接映射(仅重命名)和派生映射(计算、类型转换、查找联接)。使用 scripts/schema_compare.py 自动匹配名称相同的列。
  4. 记录转换规则 — 对每个派生映射,写明准确的转换方式(例如,CAST(amount_cents AS FLOAT) / 100.0、COALESCE(first_name, email))。
  5. 标记缺口 — 找出没有源数据的目标列(需要创建或设置默认值)以及没有对应目标的源列(将被丢弃或暂缓处理)。为每项记录处理决定。
  6. 生成映射文档 — 完整填写 assets/schema_mapping_template.md,列出所有列并分享给相关人员审核,然后再开始实施。

此技能所需的输入

  • 源模式:表名、列名、数据类型和说明
  • 目标模式:同上,或定义目标模式的分析需求
  • 任何现有转换逻辑(SQL、dbt 模型、Python 代码)
  • 用于规定值如何转换或设置默认值的业务规则
  • 能够处理模糊字段的利益相关者

输出

  • scripts/schema_compare.py — 比较两个模式,查找名称相同的列和类型不匹配的列
  • assets/schema_mapping_template.md — 已完成的逐列映射,包含转换规则、缺口和处理决定
  • 可选:根据映射生成的转换 SQL 或 dbt YAML

评论

支持 Markdown