所有参与者之间的通信,一致的工具和透明度是数据库部分中必不可少的标准

发布于:2021-01-17 00:00:27

0

36

0

工具 透明度 数据库

数据库领域是一个经常被低估的领域,DevOps原则在其中起着决定性的作用。在2019年柏林DevOps大会上的采访中,我们与Quest Software信息管理首席系统顾问Eero Mattila讨论了敏捷环境中的典型错误以及在数据库领域最佳实现DevOps的做法。

JAXenter:在引入DevOps和持续交付时,必须考虑数据库开发的哪些方面?

Eero Mattila:对数据库的结构更改通常需要应用程序停机,因为无法在活动操作期间进行更改。尽管应用程序开发的许多阶段是自动化的,但是数据库中的大多数步骤都是手动执行的,常常使数据库成为瓶颈。自动化的流程可以显着降低计划外停机和数据丢失的风险,加快开发周期并提高应用程序质量。

JAXenter:敏捷环境中的典型问题是什么?开发人员如何解决这些问题?

Eero Mattila:最普遍的问题是缺乏一致的工具和不规范的程序。诸如单元测试,版本控制和代码审查之类的任务通常仅在基本的基础上执行,如果这样,则大多是手动执行。这通常涉及大量的,计划外的后处理。诸如Oracle的Toad Developer Edition之类的端到端工具集通过与版本控制系统无缝集成,数据库代码的单元测试,自动代码审查,脚本生成等,为开发人员提供了支持。

JAXenter:在数据库段中实现DevOps的理想过程是什么?

Eero Mattila:与所有DevOps项目没有什么不同:所有参与者之间的交流,统一的工具和透明性也是数据库部分中必不可少的标准。敏捷开发的第一步是一致使用诸如Git,Subversion,TFS或类似版本的版本控制系统。与所有应用程序一样,还应使用单元测试工具对数据库代码进行测试,并在常规代码审查中测试数据库代码的可读性,可维护性,约定和所有用例的覆盖范围。最后,应该尽可能自动地执行修改所有必需数据库对象的脚本的生成。

JAXenter:什么因素决定DevOps和持续交付的成功?

Eero Mattila: DevOps和持续交付的目标是提高代码质量,同时缩短发布周期。不需要的计划外代码返工越少,项目将越成功。