技术开发 频道

解析:数据库开发如何向DevOps模式转换?

  【IT168 评论】DevOps如何以及为什么适合数据库开发?Quest Software信息管理系统顾问Eero Mattila对此有着自己的想法。在柏林的DevOpsCon 2018采访中,Mattila解释了这一领域需要注意的事项以及哪些工具对数据库开发和DevOps流程是有必要的。

数据库开发如何转换为DevOps模式?
Eero Mattila

  虽然云计算时代到来,不少数据库选择上云,但是在任何弹性环境或持续部署策略中,这仍然是管理最困难的部分,也是最明显的瓶颈。虽然各类云平台提供了针对不同数据库的众多实例类,但自动化能力还是不够明显。如果想让数据库朝着DevOps的方向发展,自动化将是最重要的一环。

  JAXenter:在数据库开发中部署DevOps,应该考虑哪些特殊功能?

  Eero Mattila:DevOps是关于速度和流程的标准化,现在也有很多基于云上的DevOps平台,其原则之一就是将基础重复性的事情使用自动化脚本或软件来实现,但数据库是一种特殊应用,当发生结构变化时,我们需要暂停应用程序。几乎所有应用程序都可以用新版本替换,在交易期间不能在结构上改变表格。

数据库开发如何转换为DevOps模式?

  JAXenter:成功进行DevOps转换的必要条件是什么?

  Eero Mattila:为了避免问题发生,所有流程必须尽可能自动化。版本控制就是其中一个方面,可以自动化单元测试、代码评论、数据对象同步以及其他功能。自动化这些对如今的企业和DBA而言并不是什么难事,要注意的是所有这些都必须集成到CI系统中。

  JAXenter:DevOps会对数据库带来哪些影响呢?

  Eero Mattila:以更高质量的数据库应用程序提高速度,提高生产力。抛开所有玩笑话,开发人员应该检查对版本控制(VCS)中代码和表的所有更改。CI系统查找VCS中的更改并启动下一步,代码审查和单元测试将自动应用,生成必要的SQL脚本。最后但并非不重要的一点是,将创建一个新的构建或为其创建提供一个特定的时间表。

数据库开发如何转换为DevOps模式?

  如果单个测试失败,则会通知开发人员或DBA。时间密集型任务,如代码审查、单元测试、原理图比较和脚本生成应该完全自动化。这样,开发人员可以专注于他们的代码,DBA可以专注于处理数据库。

  JAXenter:哪些工具或者软件有助于成功转换DevOps?

  Eero Mattila:第一个是数据对象的版本控制系统,比如表格,程序,函数,软件包等。接下来是一个用于自动化单元测试、代码审查、SQL优化和DB对象同步的工具。最后是对构建进行持续集成扩展。

  通过向DevOps的方向转换,数据库在需求、开发、构建部署以及交付等几个阶段的瓶颈可以迎刃而解,DBA也可以获取更多时间关注数据库整体架构设计,企业也会得到更低的运行成本。

0
相关文章