准备工作——————————
1 充分理解需求,理解原始需求,一定要弄清楚为什么要做数据操作。不做数据操作就不能完成需求?然后再其他技术的选择上和数据迁移的选择上进行一个权衡。能不做的尽量不做。千万不要出现因为数据操作而数据操作,埋头写脚本的情况。这样的脚本往往是危险的。
2 对线上遗留数据,持充分的怀疑态度。绝对不要相信,数据是100%由现在的线上运行的程序跑出来的。这些遗留的数据很有可能经过很多其他人的维护,比如数据订正,比如程序bug,比如数据初始化,从而导致存在“脏数据”。特别是运行了1年以上的系统,特别是上线匆忙的系统,特别是上线后bug非常多的系统。一定不要相信这些系统生成数据都是符合要求的数据。
3 充分理解线上数据库的环境,以及做数据操作可能涉及到的表结构和业务。这次数据操作涉及到几张核心表,有多少张表与它们有关联,是否可以忽略不重要的数据,是否存在触发器。数据迁移后,能否保证这次操作后的数据,能够正常的run在系统里面,不会导致核心业务因为“脏数据”流不下去。
细节的工作--------------------
1 大批量数据,重要核心数据在处理前,必须备份。
2 做数据操作前先去摸底,看看需要处理的是多少的数据量。
3 写好check脚本。如果数据操作的时候,需要多步执行,这需要建立检查点,进行check。
4 写脚本时尽量让脚本支持断点重跑。
5 如果存在很多的更新、插入操作,涉及的表又多时,把每一次提交的量放少点。
6 最后能够标示出这次数据操作的数据,具有特殊的标示,有利于检查和回滚操作。
7 如果条件允许,尽量在仿真数据上测试,量要上来,评估出时间。
8 code review 是必须的。
9 在做数据操作时,其他有可能影响数据的业务系统需要评估风险。是否可以同时数据操作,同时业务系统工作,还是需要业务系统停机支持?
分享到:
相关推荐
部署与上线:将平台部署到实际环境中,完成数据迁移和初始化工作。 培训与推广:组织培训活动,提高用户对平台的认知和使用技能。 运维与优化:持续监测平台运行状况,进行必要的优化和升级。 四、时间计划 项目总...
knex-schema-builder 我建立了这个小帮手,因此我可以轻松地描述数据库模式并自动执行数据库初始化过程,以进行项目安装或将数据库迁移到较新的版本。 它可以在knex上运行,并且大多数功能都需要传递knex实例。 这个...
请升级到0.6.2+,并从初始化迁移中手动清除“ force”标签 安装 您不必将其添加到您的Gemfile中。 只是独立安装: $ gem install squasher @note如果您使用Rbenv,请不要忘记运行rbenv rehash 。 如果要与rails /...
初始化(构建)dbutils容器映像(需要通过brew / apt / yum安装realpath) $ ./dbutil.sh build 配置(如果需要)并将数据库模式升级到最新版本 $ ./dbutil.sh upgrade 删除架构并删除所有IaC数据 $ ./dbutil.sh...
包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, 为您的数据库应用程序简化安装部署过程。 (可在上述支持的不同数据库平台上进行自动安装。) B、通过系统数据编辑功能、导出生成初始化数据包。...
Spark 的初始化 Shell 的使用 弹性分布式数据集(RDDS) 并行集合 外部数据集 RDD 操作 RDD 持久化 共享变量 Broadcast Variables (广播变量) Accumulators (累加器) 部署应用到集群中 使用 Java / ...
使用一个高级别的数据迁移工具 i. 68.5.1. 启动时执行Flyway数据库迁移 ii. 68.5.2. 启动时执行Liquibase数据库迁移 viii. 69. 批处理应用 i. 69.1. 在启动时执行Spring Batch作业 ix. 70. 执行器(Actuator) i. ...
>包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, >为您的数据库应用程序简化安装部署过程。 >可以在上述支持的不同数据库平台上进行自动安装。 >2、支持和数据库之间的双向同步,即既...
>包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, >为您的数据库应用程序简化安装部署过程。 >可以在上述支持的不同数据库平台上进行自动安装。 >2、支持和数据库之间的双向同步,即既...
为数据库创建自动安装程序,可在不同数据库平台上执行自动安装、 以及初始化数据导入、升级语法执行等。 <br>4、数据库迁移 在不同数据库平台之间进行数据库结构和数据迁移。 <br>5、数据表数据查询...
包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, 为您的数据库应用程序简化安装部署过程。 可以在上述支持的不同数据库平台上进行自动安装。 2、支持和数据库之间的双向同步,即既可通过BDB创建、...
包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, 为您的数据库应用程序简化安装部署过程。 可以在上述支持的不同数据库平台上进行自动安装。 <br>2、支持和数据库之间的双向同步,即既...
包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, 为您的数据库应用程序简化安装部署过程。 可以在上述支持的不同数据库平台上进行自动安装。 <br>2、支持和数据库之间的双向同步,即既...
C、在安装数据库过程中可设置自动导入初始化数据,执行特定的SQL语法。 <br>3、数据迁移、数据导入导出功能。 可在不同的数据库类型之间实现数据库结构和数据迁移。 如果您要把一个数据库和数据库中...
1.7.11 怎样列出和描述初始化参数 1.7.12 怎样列出无记载参数 1.8 回顾 第2章 管理数据存储、对象和容量 2.1 配置数据存储 2.1.1 管理可用空间碎片 2.1.2 聚集可用空间的技术 2.1.3 管理区的碎片 2.1.4 查找...
包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, 为您的数据库应用程序简化安装部署过程。 可以在上述支持的不同数据库平台上进行自动安装。 <br>2、支持和数据库之间的双向同步,即既...
包括创建数据库、数据库结构、导入初始化数据、执行升级语法等, 为您的数据库应用程序简化安装部署过程。 可以在上述支持的不同数据库平台上进行自动安装。 <br>2、支持和数据库之间的双向同步,即既...
【资源说明】 1、该资源包括项目的全部源码,下载...1. migrate 迁移/初始化数据库 ```bash > python3 manage.py makemigrations > python3 manage.py migrate ``` 2. 设置一个超级管理员 admin (admin@123456) > 参考 ...