关于 schema-mapper
schema-mapper 是用于梳理源字段与目标模型对应关系的数据工作流技能,可记录转换规则、缺口和处理决定。适用于数据团队集成数据源、规划 ETL 或 dbt 转换,以及审查字段沿袭。
主要功能
- 01比较字段名称匹配和类型差异
- 02映射源字段与目标字段
- 03记录转换规则与缺口
- 04生成列级映射文档
适用场景
- 01将新数据源接入现有模型
- 02规划 ETL 或 dbt 转换
- 03审查迁移中的字段变更
- 04为数据目录整理列级沿袭
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ nimrodfisher/ data-analytics-skills --skill schema-mapper安装后在 Claude Code 中输入/schema-mapper确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/schema_mapping_template.mdreferences/schema_mapping_patterns.mdscripts/schema_compare.py详细介绍
模式映射
适用场景
- 集成新的数据源,需要将其字段映射到现有数据模型
- 设计 ETL 或 dbt 转换,需要记录转换逻辑
- 审核迁移期间某个字段的处理情况
- 帮助新分析师了解列的来源
- 准备需要列级血缘关系的数据目录条目
流程
- 收集源模式 — 列出每一列的名称、数据类型、可空标记和简要说明。可从
INFORMATION_SCHEMA、数据字典或源 API 文档中获取。 - 收集目标模式 — 以相同结构记录目标表或模型的信息。如果目标尚不存在,则根据分析需求起草。
- 将源列映射到目标列 — 对每个目标列,确定为其提供数据的源列。记录直接映射(仅重命名)和派生映射(计算、类型转换、查找联接)。使用
scripts/schema_compare.py自动匹配名称相同的列。 - 记录转换规则 — 对每个派生映射,写明准确的转换方式(例如,
CAST(amount_cents AS FLOAT) / 100.0、COALESCE(first_name, email))。 - 标记缺口 — 找出没有源数据的目标列(需要创建或设置默认值)以及没有对应目标的源列(将被丢弃或暂缓处理)。为每项记录处理决定。
- 生成映射文档 — 完整填写
assets/schema_mapping_template.md,列出所有列并分享给相关人员审核,然后再开始实施。
此技能所需的输入
- 源模式:表名、列名、数据类型和说明
- 目标模式:同上,或定义目标模式的分析需求
- 任何现有转换逻辑(SQL、dbt 模型、Python 代码)
- 用于规定值如何转换或设置默认值的业务规则
- 能够处理模糊字段的利益相关者
输出
scripts/schema_compare.py— 比较两个模式,查找名称相同的列和类型不匹配的列assets/schema_mapping_template.md— 已完成的逐列映射,包含转换规则、缺口和处理决定- 可选:根据映射生成的转换 SQL 或 dbt YAML
评论
支持 Markdown