Skip to main content

数据配置版本管理(表级)

前言

平台配置的版本管理有两种模式,分别是表级别(以表为单位创建版本)和行级别(以每一行配置为单位创建版本)。 本章介绍的是平台表级别的版本管理。行级别版本管理请调转至 版本管理(行级)

基本原理

平台数据的存储走的是关系型数据库模式,数据的存储集合是以表为单位。一次版本发布操作,包含以下步骤:

  1. 提交版本

    该操作会做两件事情:

    1. 对目前已编辑好的源表进行一次全量拷贝
    2. 生成一条版本记录,包含版本id、版本描述、以及指向步骤1拷贝的表
danger
⚠️显然,目前由于是 **全量拷贝**,对于一些数据量特别大的表,
提交一次版本会非常只沉重,在操作耗时或者是存储空间上...(陷入沉思)
  1. 发布版本

    发布版本是一个非常轻量的操作,平台有个叫 _ver_release 的表,用来专门记录当提前数据表的最新发布版本。 当你使用 只读接口 来获取数据的时候,它会根据 _ver_release 里的版本id找到目标版本数据。

操作流程

完成一次版本发布的操作流程如下:

1. 版本开关

所有项目默认都是不开启版本管理的,编辑保存即刻生效。你可以在项目配置上找到版本管理开关,把它勾选上即可,该操作是一次性的。详见 => 项目配置enter image description here#120px

tip

打开版本管理开关不会导致数据访问异常,只读接口的逻辑会判断是否存在已提交的版本,如果没有,就会 访问源接口兜底

2. 提交版本

在上一步把版本管理开关打开后,在配置界面的右上角,就可以看到多了一个版本按钮

enter image description here #320px


在 `版本按钮` 的展开菜单,点击 `发布版本`,就可以进入`提交=>发布`流程。

enter image description here#640px

[ 发布前变更对比 ]

3. 发布版本

发布版本可以选择 灰度发布 或者 全量发布,在此处我们选择全量发布,完成发布流程。关于 灰度发布 会在后续的 《如何进行灰度发布?》 篇章中详细展开 enter image description here#500px

在选择全量发布之后,会出现以下选择框,其中有 确定发布暂不发布 按钮: enter image description here#300px

⚠️ 注意:在进入上一步界面的时候,已经创建了一个版本,如果选 确定发布,该版本会马上发布生效;如果选 暂不发布,相当于只创建版本但不发布,不影响线上。

4. 版本列表

执行上一步后,会自动进行全量发布,成功后打开版本列表界面,通过全量标签可以看到当前最新发布版本。如果想回滚到历史版本, enter image description here#600px

数据接口

关于数据接口

打开版本管理后,会对 高性能读接口 产生效果,但 读写接口 仍然操作的是源表数据,不会受到影响。