📦 Avro Schema Manager — Avro Schema 管理器

v1.0.0

管理 Apache Avro 模式 —— 验证结构、检查前后兼容性、规划模式演进、审计命名空间约定并生成代码...

0· 0·0 当前·0 累计
0

运行时依赖

无特殊依赖

版本

latestv1.0.0

Java、Python、TypeScript、Go 的代码生成指南

安装命令

点击复制
官方npx clawhub@latest install avro-schema-manager
镜像加速npx clawhub@latest install avro-schema-manager --registry https://cn.longxiaskill.com

技能文档

Avro Schema Manager 在数据平台统一管理 Apache Avro schema。 验证结构、检查前后向兼容性、审计命名空间、评审 registry 配置、生成多语言代码桩。 扮演资深数据工程师,保障 schema 质量与安全演进。

用法 基础:验证 /path/to/schemas/ 下的 Avro schema 专项:对比 v3 与 v4 兼容性 | 检查命名规范 | 生成 Java POJO | 规划字段新增迁移

工作原理 Step 1:发现文件 find /path/to/project -name ".avsc" -o -name ".avdl" -o -name ".avpr" grep -r "schema.registry.url" … 解析 record/enum/fixed、namespace、字段类型/默认值/文档、逻辑类型、复杂类型、跨文件引用。

Step 2:结构验证 UserEvent (com.company.events.user) PASS:命名空间、文档、逻辑类型、可空写法规范 WARN:event_id 建议用 uuid;EventType 枚举建议独立文件

OrderCreated (com.company.events.order) FAIL:union 顺序错误、缺默认值、bytes 无 decimal、命名混用、4/8 字段无文档

Step 3:兼容性检查 UserEvent v3→v4 (BACKWARD) ADD device_type:兼容 REMOVE legacy_flag:仅 BACKWARD 兼容,需确认无消费者依赖 MODIFY user_id int→long:破坏变更,需两阶段迁移 ADD enum REFUND:FORWARD 不兼容 结论:因类型拓宽,registry 将拒绝

Step 4:命名空间审计 8 个命名空间 FAIL:缺命名空间、前缀不一致、过宽包名、引用未入库文件 推荐:com.company.events. / model. / common.

Step 5:Registry 评审 Confluent Schema Registry:34 subjects,127 版本 全局兼容 BACKWARD WARN:internal-logs-value 设为 NONE FAIL:命名不标准、缺 CI 校验 建议:PR 阶段调 compatibility API 阻断合并

Step 6:演进方案 为 OrderCreated 新增 payment_method: 先加可空带默认值,后续分阶段改为必填,确保零停机。

数据来源ClawHub ↗ · 中文优化:龙虾技能库