数据库演进与数据 Schema Evolution —— 如何在不停机条件下给业务加字段、改结构、加索引

23 阅读1分钟
  1. 前言

    • 大型系统永远不是第一次设计最正确
    • 数据结构会变,这件事要工程化面对
  2. DB schema evolution 原则

    • 前向兼容
    • 后向兼容
    • additive only(add 不 break)
  3. 表结构变更策略

    • online ddl
    • shadow table
    • dual write
    • 写新表读旧表 / 双读策略
  4. 索引变更策略

    • 如何安全添加索引
    • 如何安全 drop 索引
    • 索引变更对 RT 影响评估
  5. JSON column / wide table / columnar table 选择

  6. 表版本化治理

    • meta version table
    • schema registry
    • publish-subscribe schema变更消息
  7. 案例:订单表,新增 business_type 字段
    分 5 stage rollout,整个过程不停机

  8. 总结

    • DB 演进不是 DBA 的事
    • 是整个后端工程成熟度基石