CN110019118A - 基于DevOps提升数据库运维效率的***及其方法 - Google Patents
基于DevOps提升数据库运维效率的***及其方法 Download PDFInfo
- Publication number
- CN110019118A CN110019118A CN201710901776.4A CN201710901776A CN110019118A CN 110019118 A CN110019118 A CN 110019118A CN 201710901776 A CN201710901776 A CN 201710901776A CN 110019118 A CN110019118 A CN 110019118A
- Authority
- CN
- China
- Prior art keywords
- node
- database
- mysql
- devops
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012544 monitoring process Methods 0.000 claims abstract description 71
- 238000004458 analytical method Methods 0.000 claims abstract description 35
- 238000012550 audit Methods 0.000 claims abstract description 25
- 230000008859 change Effects 0.000 claims description 41
- 230000001737 promoting effect Effects 0.000 claims description 18
- 238000007726 management method Methods 0.000 claims description 10
- 238000009434 installation Methods 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 7
- 230000002045 lasting effect Effects 0.000 abstract description 7
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 16
- 238000000275 quality assurance Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000036541 health Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000007792 addition Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000012508 change request Methods 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及基于DevOps提升数据库运维效率的***及其方法,该***包括供租户申请节点实例的节点申请单元;节点监控单元,用于采集所述节点申请单元内被监控节点的监控数据,写入到MySQL,采用jqPlot图表从MySQL读取监控数据并图形化展示;DDL审核单元,用于根据节点申请单元内选中需要变更的节点及输入的DDL和DML语句,进行语法和语义的分析,根据分析结果进行反馈,对所有操作生成flashback语句。本发明提高数据库管理员生产力,数据库服务更加高效、稳定可靠,也有利于批量操作和升级,更高效的跨部门合作,提升团队协作效率,实现降低开发难度以及运维难度,保障数据库持续、高效、稳定输出服务。
Description
技术领域
本发明涉及企业数据库运维平台,更具体地说是指基于DevOps提升数据库运维效率的***及其方法。
背景技术
在项目运行过程中,数据库性能底下、故障频发常来自于操作***和数据库配置项缺失、表结构、SQL设计不规范;也因为权限混乱、语句编写失误等原因导致数据库误操作不断。因此,为保障数据库稳定性,性能最大化,减少故障概率,数据库管理员需要在研发过程中统一把控,支撑完成如下事项:数据库服务部署、DDL人工审核发布、DML误操作订正、慢查询优化、索引优化、权限管理、故障处理……当各项目的数据库变动任务并行而至,一方面数据库管理员环节会成为整个流程的瓶颈;另一方面由于数据库从部署到审核都需要遵循规范化,介于语句和环境的复杂性,人工审核和操作难以确保高准确率。
目前对于企业数据内的变更工作一般有人工变更以及半自动变更方式,其中,如图1所示,对于人工变更法而言,所有的变更工作都是由人工走流程来完成,这种方法的交流方式一般是邮件,需要执行变更时,DEV/QA写邮件向数据库管理员发起变更,在数据库管理员收到之后大概完成如下流程:业务申请数据库资源,数据库管理员申请硬件资源后,手动部署并逐个接入各种监控、高可用***、备份***;研发人员申请访问资源、***,数据库管理员人员频繁登录服务器变更权限;开发人员提交数据库变更要求,数据库管理员审核后提出建议,不符合规范的重走流程重新编写;对于符合要求的,数据库管理员直接线上执行,但是人工审核容易出错,上线实践后才发现错误,又必须reply给开发。对于半自动变更而言,如图2所示,采用开源工具或脚本来协助个别人工繁冗事务,交流方式依然是邮件或流程***,大概有如下流程:业务申请数据库资源,数据库管理员申请硬件资源后,登录服务器运行自动化脚本部署;有一个强大的审核程序druid解析器,流程依然和人工审核一样;数据库管理员依然需要登录服务器变更权限;服务器部署计划任务工作,每天自动收集线上慢SQL,分析汇总后发邮件至各开发人员优化,开发人员要登录测试环境查看索引和执行计划。
但是,对人工变更方式而言,存在以下问题:数据库管理员日常重复工作,尤其是在DDL审核、执行且环节,循环且易出错,对于语法错误、语义错误肉眼无法保证100%识别,要正在线上实践才发现;对于已经定义的规则,各位数据库管理员存在宽松不均的问题,最终导致规则不成规则,很难推行下去;执行前,数据库管理员要对线上环境做检查,考虑语句对线上的稳定性有影响,权衡执行时间;执行后,还需要通知DEV、QA部门验证,数据库管理员才能完成该变更,浪费不少时间成本。对于半自动变更方式而言,存在以下问题:每次变更,数据库管理员依然要登录服务器远程批量操作;druid解析器依然存在可能存在没有审核到的漏洞,给线上数据库带来了很大的风险;审核程序首先要在测试环境中执行一次,如果发现没问题后,才会去线上执行,那么这个测试就需要时刻与线上环境保持同步,数据需要一样,数据库及表的元数据必须要保证相同,这样在Beta执行才具有参照性。一个频繁变更的节点,测试环境需要不断同步线上环境,代价非常高;由于备份导出数据和执行不是同一个事务里边,无法保证备份数据的准确性,加上变更后线上数据的覆盖,无法回滚,这样的备份意义不大。综上所述,无论是人工变更还是半自动变更,存在开发难度高以及运维复杂度高的问题。
因此,有必要设计一种基于DevOps提升数据库运维效率的***,实现降低开发难度以及运维难度,保障数据库持续、高效、稳定输出服务。
发明内容
本发明的目的在于克服现有技术的缺陷,提供基于DevOps提升数据库运维效率的***及其方法。
为实现上述目的,本发明采用以下技术方案:基于DevOps提升数据库运维效率的***,所述***包括:
节点申请单元,用于供租户申请节点实例;
节点监控单元,用于采集所述节点申请单元内的被监控节点的监控数据,写入到MySQL,采用jqPlot图表从MySQL读取监控数据并图形化展示;
DDL审核单元,用于根据节点申请单元内选中需要变更的节点以及输入的DDL和DML语句,进行语法和语义的分析,根据分析结果进行反馈,且对所有操作生成flashback语句。
其进一步技术方案为:所述节点申请单元包括节点详情输入模块、实例生成模块以及安装模块;
所述节点详情输入模块,用于供租户输入所申请的所有节点实例信息;
所述实例生成模块,用于根据所述节点详情输入模块输入的信息从MySQL的资源池表中读取符合条件的实例,更改实例状态为部署状态;
所述安装模块,用于对租户申请的实例进行安装,并加入至所述节点监控单元内,更改实例状态为已使用状态。
其进一步技术方案为:所述***还包括慢日志汇总单元,用于分析慢SQL语句,并进行反序展现。
其进一步技术方案为:所述***还包括账号管理单元,用于管理租户所创建的连接MySQL的应用账号。
其进一步技术方案为:所述***还包括SQL索引优化单元,用于优化供租户所用的SQL索引。
本发明还提供了基于DevOps提升数据库运维效率的方法,所述方法包括:
在MySQL的资源池表内规划好可安装的节点;
输入节点申请条件;
根据申请条件从MySQL的资源池表调取节点,形成符合条件的实例,将所述实例状态设置为在部署状态;
对所述实例进行安装;
对所述实例加入节点监控内,并将实例状态设置为已使用状态;
对实例进行节点监控;
根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句,进行语法和语义进行分析,根据分析结果进行反馈;
对所有操作生成flashback语句。
其进一步技术方案为:对实例进行节点监控的步骤,包括以下具体步骤:
获取实例内被监控节点的监控数据;
将所述监控数据写入MySQL内;
采用jqPlot图表从MySQL读取监控数据并进行图形化展示。
其进一步技术方案为:根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句,进行语法和语义进行分析,根据分析结果进行反馈的步骤,包括以下具体步骤:
获取实例内需要变更的节点、DDL和DML语句;
获取自定义配置规则,采用内带语法分析器可对DDL和DML语句进行语法分析以及语义分析;
判断分析结果是否为符合审核标准;
若是,则选择对应节点,执行对应变更,并进入对所有操作生成flashback语句的步骤;
若不是,则返回报错信息。
本发明与现有技术相比的有益效果是:本发明的基于DevOps提升数据库运维效率的***,通过设置节点申请单元、节点监控单元以及DDL审核单元,对节点实例的自动申请、节点监控以及变更节点的审核从数据库管理员解放出来,形成糅合多个开源工具的自动化***,提高数据库管理员生产力,数据库服务更加高效、稳定可靠,也有利于批量操作和升级,更高效的跨部门合作,提升团队协作效率,无需浪费精力在流程***或者邮件交流上,轻松完成Ops与Dev、QA部门的交汇处的工作,实现降低开发难度以及运维难度,保障数据库持续、高效、稳定输出服务。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
图1为现有技术的人工变更方式的流程图;
图2为现有技术的半自动变更方式的流程图;
图3为本发明具体实施例提供的基于DevOps提升数据库运维效率的***的结构框图;
图4为本发明具体实施例提供的节点申请单元的结构框图;
图5为本发明具体实施例提供的基于DevOps提升数据库运维效率的***的功能框架图;
图6为本发明具体实施例提供的基于DevOps提升数据库运维效率的方法的流程图;
图7为本发明具体实施例提供的对实例进行节点监控的流程图;
图8为本发明具体实施例提供的根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句进行语法和语义进行分析的流程图。
具体实施方式
为了更充分理解本发明的技术内容,下面结合具体实施例对本发明的技术方案进一步介绍和说明,但不局限于此。
如图3~8所示的具体实施例,本实施例提供的基于DevOps提升数据库运维效率的***,可以运用在开通数据库服务并自动接入监控以及进行一切日常变更及后续运营操作的过程中,实现降低开发难度以及运维难度,保障数据库持续、高效、稳定输出服务。
DevOps(Development Operations)是一组过程、方法与***的统称,用于促进开发、技术运营和质量保障(QA)部门之间的沟通、协作与整合。在传统On-Premise方式下,各部门人员的工作状态常被打断来支撑交汇的工作,这不利于专注于自己的工作,如果将这些操作规范化并封装起来,对Dev、QA提供统一操作接口,完全可以实现自主解决问题。
如图3所示,本实施例提供了基于DevOps提升数据库运维效率的***,该***包括:
节点申请单元1,用于供租户申请节点实例;
节点监控单元2,用于采集所述节点申请单元1内的被监控节点的监控数据,写入到MySQL,采用jqPlot图表从MySQL读取监控数据并图形化展示;
DDL审核单元3,用于根据节点申请单元1内选中需要变更的节点以及输入的DDL和DML语句,进行语法和语义的分析,根据分析结果进行反馈,且对所有操作生成flashback语句。
具体的,上述的基于DevOps提升数据库运维效率的***具体是在利用ansible+python+php,糅合inception、sqladvisor、percona toolkit、jqPlot等开源工具,做到基于MySQL资源池创建与监控的流程化处理,自助式运营,大量节省了流程开支。
根据节点申请单元1获取到的租户申请节点实例的条件,进行节点的调用形成实例,并加入节点监控单元2,倘若条件内囊括了变更节点,则经过DDL审核单元3进行分析,返回变更结果,且将操作生成flashback语句,用于回滚;而节点监控单元2则负责对节点进行获取监控数据,并呈现给租户,提升了研发、数据库管理员效率,保障数据库持续、高效、稳定输出服务。
在某些实施例中,上述的节点申请单元1包括节点详情输入模块11、实例生成模块12以及安装模块13。
节点详情输入模块11,用于供租户输入所申请的所有节点实例信息。
实例生成模块12,用于根据所述节点详情输入模块11输入的信息从MySQL的资源池表中读取符合条件的实例,更改实例状态为部署状态。
安装模块13,用于对租户申请的实例进行安装,并加入至所述节点监控单元2内,更改实例状态为已使用状态。
对于上述节点详情输入模块11,具体包括了基本信息、配置信息以及可用性信息,其中基本信息包括节点名称、所在地域、内外网ip地址端口以及创建时间;配置信息包括版本、CPU/内存/资源使用量等硬件信息;可用性信息包括复制方式以及部署方;可以通过节点详情输入模块11输入是否变更节点或者选择监控节点等,自主选择,***根据租户的选择进行对应节点实例生成,并反馈相应的结果,实现将Dev、QA、Ops放到同一***开发中,注重部门汇合处工作的自助完成,提供了一种快速、有效的方式,避免不必要的部门间流程,缩短业务上线时间,并保障了业务的市场竞争力,更适合互联网+时代。
对于上述的实例生成模块12以及安装模块13,主要用于自动申请节点实例的过程中,对租户输入的节点申请条件(即节点实例信息)进行对应节点实例的生成,前提是DB需要事先在MySQL资源池表里边规划好可安装的MySQL节点,以便于根据租户的申请条件随时调用节点并安装,形成节点实例,达到自助式运营,大量节省了流程开支的效果。
对于上述的节点监控单元2,具体是从健康监控、资源监控、键缓存监控、Innodb监控、复制监控以及表空间分析等多方面进行节点实例的监控,其中,健康监控主要是查看当前连接进程、并发数、网络流量、tps、qps;资源监控是监控连接资源、文件资源、表资源的使用率和最大允许值;键缓存监控具体查看当前缓存使用率和命中率;Innodb监控具体是查看innodb的buffer pool、io线程数大小以及增删改查量级;复制监控具体获取当前主从复制的监控状态;表空间分析具体是分析数据库表空间大小。
另外,对于上述的DDL审核单元3,具体是数据库变更统一入口,租户选中需要变更的节点,输入框中提交DDL和DML语句,***会根据自定义配置规则,内带parser可对其语法和语义进行分析,不符合审核标准的节点实例,直接返回相应的报错信息;对于符合审核标准的节点实例,会直接在选中的线上***执行,且该变更可审计可溯源;同时,对所有操作生成flashback语句,方便回滚,做到变更可控。在审核变更环节,由于是根据MySQL源码修改,可以对提交的所有语句的语法分析,如果语法有问题,都会将相应的错误信息返回给审核者,还提供语义分析,当一个表、库、列等信息不正确或者不符合审核标准的时候报错,或者使用了一个不存在的对象时报错等等。还提供了很多针对SQL规范性约束的功能,数据库管理员都是可以通过***参数来配置的,提供只审核不执行功能,租户无需再做线上***的镜像到测试环境,在执行DML时还根据Binlog得到flashback语句,提供生成回滚语句的功能,准确率得到保障,同时所有操作在线审批后自动调度全部操作可审计、可溯源。
在某些实施例中,上述的***还包括慢日志汇总单元,用于分析慢SQL语句,并进行反序展现,对于慢SQL自动生成了优化索引建议,租户可直接参考该建议对SQL调试。将数据库管理员从登录数据库服务器权限变更、审核执行、数据变更、慢查询优化等被动局面解放了出来,有更多的时间研究学***台更智能化的方向去发展,提高数据库管理员生产力。
在某些实施例中,上述的***还包括账号管理单元,用于管理租户所创建的连接MySQL的应用账号。账号只允许增删改查,用于程序连接数据库,如有变更需求,则需要从DDL审核单元3进行变更。
在某些实施例中,上述的***还包括备份管理单元,用于对租户所创建的所有内容进行备份,包括账号内所有信息,起到安全管理的作用。
另外,在某些实施例中,上述的***还包括错误日志下载单元,用于节点错误日志下载链接,方便租户关注自己节点错误输出。
上述的基于DevOps提升数据库运维效率的***基于规划好的MySQL资源池,提供低、中、高三种硬件等级配置,具备异步、半同步、强同步多种复制方式选择,为租户提供申请、审核处理,最后生成MySQL数据库节点的可视化操作,同时,租户可根据业务需求,选择单节点或者集群分布式云数据库。当节点被创建后,数据库监控、慢日志汇总分析、备份策略自动纳入数据库管理员管理平台,后续99%的数据库操作租户都可通过该***自助解决。
上述的基于DevOps提升数据库运维效率的***,通过设置节点申请单元1、节点监控单元2以及DDL审核单元3,对节点实例的自动申请、节点监控以及变更节点的审核从数据库管理员解放出来,形成糅合多个开源工具的自动化***,提高数据库管理员生产力,数据库服务更加高效、稳定可靠,也有利于批量操作和升级,更高效的跨部门合作,提升团队协作效率,无需浪费精力在流程***或者邮件交流上,轻松完成Ops与Dev、QA部门的交汇处的工作,实现降低开发难度以及运维难度,保障数据库持续、高效、稳定输出服务。
如图6所示,本实施例还提供了基于DevOps提升数据库运维效率的方法,该方法包括:
S1、在MySQL的资源池表内规划好可安装的节点;
S2、输入节点申请条件;
S3、根据申请条件从MySQL的资源池表调取节点,形成符合条件的实例,将所述实例状态设置为在部署状态;
S4、对所述实例进行安装;
S5、对所述实例加入节点监控内,并将实例状态设置为已使用状态;
S6、对实例进行节点监控;
S7、根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句,进行语法和语义进行分析,根据分析结果进行反馈;
S8、对所有操作生成flashback语句。
对于上述的S1步骤,具体是有数据库管理员先在MySQL数据库的资源池表内规划好可以安装的MySQL节点,以便于后续租户申请节点实例时随时调用。
对于上述的S2步骤,节点申请条件包括基本信息、配置信息以及可用性信息,其中基本信息包括节点名称、所在地域、内外网ip地址端口以及创建时间;配置信息包括版本、CPU/内存/资源使用量等硬件信息;可用性信息包括复制方式以及部署方;可以通过节点详情输入模块11输入是否变更节点或者选择监控节点等,自主选择,***根据租户的选择进行对应节点实例生成,并反馈相应的结果,实现将Dev、QA、Ops放到同一***开发中,注重部门汇合处工作的自助完成,提供了一种快速、有效的方式,避免不必要的部门间流程,缩短业务上线时间,并保障了业务的市场竞争力,更适合互联网+时代。
对于上述的S6步骤,对实例进行节点监控的步骤,包括以下具体步骤:
S61、获取实例内被监控节点的监控数据;
S62、将所述监控数据写入MySQL内;
S63、采用jqPlot图表从MySQL读取监控数据并进行图形化展示。
上述的S61步骤至S63步骤,具体是由节点监控单元2进行节点监控;从健康监控、资源监控、键缓存监控、Innodb监控、复制监控以及表空间分析等多方面进行节点实例的监控,其中,健康监控主要是查看当前连接进程、并发数、网络流量、tps、qps;资源监控是监控连接资源、文件资源、表资源的使用率和最大允许值;键缓存监控具体查看当前缓存使用率和命中率;Innodb监控具体是查看innodb的buffer pool、io线程数大小以及增删改查量级;复制监控具体获取当前主从复制的监控状态;表空间分析具体是分析数据库表空间大小。
对于上述的S7步骤,根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句,进行语法和语义进行分析,根据分析结果进行反馈的步骤,包括以下具体步骤:
S71、获取实例内需要变更的节点、DDL和DML语句;
S72、获取自定义配置规则,采用内带语法分析器可对DDL和DML语句进行语法分析以及语义分析;
S73、判断分析结果是否为符合审核标准;
若是,则S74、选择对应节点,执行对应变更,并进入S8步骤;
S75、若不是,则返回报错信息。
上述的S71步骤至S75步骤以及S8步骤,具体通过DDL审核单元3完成,租户选中需要变更的节点,输入框中提交DDL和DML语句,***会根据自定义配置规则,内带parser可对其语法和语义进行分析,不符合审核标准的节点实例,直接返回相应的报错信息;对于符合审核标准的节点实例,会直接在选中的线上***执行,且该变更可审计可溯源;同时,对所有操作生成flashback语句,方便回滚,做到变更可控。在审核变更环节,由于是根据MySQL源码修改,可以对提交的所有语句的语法分析,如果语法有问题,都会将相应的错误信息返回给审核者,还提供语义分析,当一个表、库、列等信息不正确或者不符合审核标准的时候报错,或者使用了一个不存在的对象时报错等等。还提供了很多针对SQL规范性约束的功能,数据库管理员都是可以通过***参数来配置的,提供只审核不执行功能,租户无需再做线上***的镜像到测试环境,在执行DML时还根据Binlog得到flashback语句,提供生成回滚语句的功能,准确率得到保障,同时所有操作在线审批后自动调度全部操作可审计、可溯源。
上述的基于DevOps提升数据库运维效率的方法,通过基于规划好的MySQL资源池,提供低、中、高三种硬件等级配置,具备异步、半同步、强同步多种复制方式选择,为租户提供申请、审核处理,最后生成MySQL数据库节点的可视化操作,同时,租户可根据业务需求,选择单节点或者集群分布式云数据库。当节点被创建后,数据库监控、慢日志汇总分析、备份策略自动纳入数据库管理员管理平台,后续99%的数据库操作租户都可通过该***自助解决。
上述的基于DevOps提升数据库运维效率的方法,提高数据库管理员生产力,数据库服务更加高效、稳定可靠,也有利于批量操作和升级,更高效的跨部门合作,提升团队协作效率,无需浪费精力在流程***或者邮件交流上,轻松完成Ops与Dev、QA部门的交汇处的工作,实现降低开发难度以及运维难度,保障数据库持续、高效、稳定输出服务。
上述仅以实施例来进一步说明本发明的技术内容,以便于读者更容易理解,但不代表本发明的实施方式仅限于此,任何依本发明所做的技术延伸或再创造,均受本发明的保护。本发明的保护范围以权利要求书为准。
Claims (8)
1.基于DevOps提升数据库运维效率的***,其特征在于,所述***包括:
节点申请单元,用于供租户申请节点实例;
节点监控单元,用于采集所述节点申请单元内的被监控节点的监控数据,写入到MySQL,采用jqPlot图表从MySQL读取监控数据并图形化展示;
DDL审核单元,用于根据节点申请单元内选中需要变更的节点以及输入的DDL和DML语句,进行语法和语义的分析,根据分析结果进行反馈,且对所有操作生成flashback语句。
2.根据权利要求1所述的基于DevOps提升数据库运维效率的***,其特征在于,所述节点申请单元包括节点详情输入模块、实例生成模块以及安装模块;
所述节点详情输入模块,用于供租户输入所申请的所有节点实例信息;
所述实例生成模块,用于根据所述节点详情输入模块输入的信息从MySQL的资源池表中读取符合条件的实例,更改实例状态为部署状态;
所述安装模块,用于对租户申请的实例进行安装,并加入至所述节点监控单元内,更改实例状态为已使用状态。
3.根据权利要求1或2所述的基于DevOps提升数据库运维效率的***,其特征在于,所述***还包括慢日志汇总单元,用于分析慢SQL语句,并进行反序展现。
4.根据权利要求3所述的基于DevOps提升数据库运维效率的***,其特征在于,所述***还包括账号管理单元,用于管理租户所创建的连接MySQL的应用账号。
5.根据权利要求4所述的基于DevOps提升数据库运维效率的***,其特征在于,所述***还包括SQL索引优化单元,用于优化供租户所用的SQL索引。
6.基于DevOps提升数据库运维效率的方法,其特征在于,所述方法包括:
在MySQL的资源池表内规划好可安装的节点;
输入节点申请条件;
根据申请条件从MySQL的资源池表调取节点,形成符合条件的实例,将所述实例状态设置为在部署状态;
对所述实例进行安装;
对所述实例加入节点监控内,并将实例状态设置为已使用状态;
对实例进行节点监控;
根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句,进行语法和语义进行分析,根据分析结果进行反馈;
对所有操作生成flashback语句。
7.根据权利要求6所述的基于DevOps提升数据库运维效率的方法,其特征在于,对实例进行节点监控的步骤,包括以下具体步骤:
获取实例内被监控节点的监控数据;
将所述监控数据写入MySQL内;
采用jqPlot图表从MySQL读取监控数据并进行图形化展示。
8.根据权利要求7所述的基于DevOps提升数据库运维效率的方法,其特征在于,根据节点申请条件内的需要变更的节点以及输入的DDL和DML语句,进行语法和语义进行分析,根据分析结果进行反馈的步骤,包括以下具体步骤:
获取实例内需要变更的节点、DDL和DML语句;
获取自定义配置规则,采用内带语法分析器可对DDL和DML语句进行语法分析以及语义分析;
判断分析结果是否为符合审核标准;
若是,则选择对应节点,执行对应变更,并进入对所有操作生成flashback语句的步骤;
若不是,则返回报错信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710901776.4A CN110019118A (zh) | 2017-09-28 | 2017-09-28 | 基于DevOps提升数据库运维效率的***及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710901776.4A CN110019118A (zh) | 2017-09-28 | 2017-09-28 | 基于DevOps提升数据库运维效率的***及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110019118A true CN110019118A (zh) | 2019-07-16 |
Family
ID=67186417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710901776.4A Pending CN110019118A (zh) | 2017-09-28 | 2017-09-28 | 基于DevOps提升数据库运维效率的***及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019118A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110795450A (zh) * | 2019-09-12 | 2020-02-14 | 连连银通电子支付有限公司 | Sql处理方法及装置 |
CN110795420A (zh) * | 2019-10-30 | 2020-02-14 | 浪潮云信息技术有限公司 | 一种基于Ansible的MySQL数据库自动化备份方法 |
CN111651431A (zh) * | 2020-06-09 | 2020-09-11 | 中国雄安集团数字城市科技有限公司 | 一种面向数据库服务的管理流程标准化方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1464434A (zh) * | 2002-06-26 | 2003-12-31 | 联想(北京)有限公司 | 嵌入式数据库***中结构化查询语言解释器的实现方法 |
CN103617176A (zh) * | 2013-11-04 | 2014-03-05 | 广东电子工业研究院有限公司 | 一种实现多源异构数据资源自动同步的方法 |
CN103631924A (zh) * | 2013-12-03 | 2014-03-12 | Tcl集团股份有限公司 | 一种分布式数据库平台的应用方法和*** |
CN103678532A (zh) * | 2013-12-02 | 2014-03-26 | ***(深圳)有限公司 | 变更语句逆向分析方法、数据库变更回退方法及*** |
CN104333512A (zh) * | 2014-10-30 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种分布式内存数据库访问***及方法 |
CN104391995A (zh) * | 2014-12-15 | 2015-03-04 | 北京趣拿软件科技有限公司 | 一种sql语句审核的方法、数据库运维的方法及*** |
CN104951524A (zh) * | 2015-06-11 | 2015-09-30 | 上海新炬网络信息技术有限公司 | 一种用于数据库运维的移动平台及其使用方法 |
CN105302697A (zh) * | 2015-11-13 | 2016-02-03 | 中国建设银行股份有限公司 | 一种密集数据模型数据库的运行状态监控方法及*** |
CN105631602A (zh) * | 2016-01-11 | 2016-06-01 | ***通信集团广东有限公司 | 一种基于DevOps的业务级运维平台 |
US20170169059A1 (en) * | 2015-12-15 | 2017-06-15 | Mongodb, Inc. | Systems and methods for automating management of distributed databases |
-
2017
- 2017-09-28 CN CN201710901776.4A patent/CN110019118A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1464434A (zh) * | 2002-06-26 | 2003-12-31 | 联想(北京)有限公司 | 嵌入式数据库***中结构化查询语言解释器的实现方法 |
CN103617176A (zh) * | 2013-11-04 | 2014-03-05 | 广东电子工业研究院有限公司 | 一种实现多源异构数据资源自动同步的方法 |
CN103678532A (zh) * | 2013-12-02 | 2014-03-26 | ***(深圳)有限公司 | 变更语句逆向分析方法、数据库变更回退方法及*** |
CN103631924A (zh) * | 2013-12-03 | 2014-03-12 | Tcl集团股份有限公司 | 一种分布式数据库平台的应用方法和*** |
CN104333512A (zh) * | 2014-10-30 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种分布式内存数据库访问***及方法 |
CN104391995A (zh) * | 2014-12-15 | 2015-03-04 | 北京趣拿软件科技有限公司 | 一种sql语句审核的方法、数据库运维的方法及*** |
CN104951524A (zh) * | 2015-06-11 | 2015-09-30 | 上海新炬网络信息技术有限公司 | 一种用于数据库运维的移动平台及其使用方法 |
CN105302697A (zh) * | 2015-11-13 | 2016-02-03 | 中国建设银行股份有限公司 | 一种密集数据模型数据库的运行状态监控方法及*** |
US20170169059A1 (en) * | 2015-12-15 | 2017-06-15 | Mongodb, Inc. | Systems and methods for automating management of distributed databases |
CN105631602A (zh) * | 2016-01-11 | 2016-06-01 | ***通信集团广东有限公司 | 一种基于DevOps的业务级运维平台 |
Non-Patent Citations (2)
Title |
---|
邹筱菁等: ""基于DevOps的软件开发管理"", 《数字技术与应用》 * |
陈咏秋等: ""面向云服务的DevOps知识获取与应用"", 《计算机***应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110795450A (zh) * | 2019-09-12 | 2020-02-14 | 连连银通电子支付有限公司 | Sql处理方法及装置 |
CN110795420A (zh) * | 2019-10-30 | 2020-02-14 | 浪潮云信息技术有限公司 | 一种基于Ansible的MySQL数据库自动化备份方法 |
CN111651431A (zh) * | 2020-06-09 | 2020-09-11 | 中国雄安集团数字城市科技有限公司 | 一种面向数据库服务的管理流程标准化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220253298A1 (en) | Systems and methods for transformation of reporting schema | |
Mens et al. | Evolving software architecture descriptions of critical systems | |
US7580946B2 (en) | Smart integration engine and metadata-oriented architecture for automatic EII and business integration | |
US9411575B2 (en) | Systems and methods for quality assurance automation | |
CN102789415A (zh) | 用于下一代生成测试***的模块化脚本设计器 | |
CN102375731A (zh) | 一种免编码集成应用软件平台*** | |
CN111651431A (zh) | 一种面向数据库服务的管理流程标准化方法 | |
CN112527774A (zh) | 数据中台搭建方法、***及存储介质 | |
CN110942155A (zh) | 一种机器学习引擎的研究方法 | |
CN115374102A (zh) | 数据处理方法及*** | |
CN110019118A (zh) | 基于DevOps提升数据库运维效率的***及其方法 | |
CN112395317B (zh) | 一种数据模型协同设计及成果管理的方法 | |
CN103412745A (zh) | 一种开发及应用平台 | |
CN108876283A (zh) | 一种自动审核***及方法 | |
CN115169011A (zh) | 一种飞机装配大纲的编辑***及应用*** | |
Berenbach et al. | Metrics for model driven requirements development | |
Rabbi et al. | YAWL2DVE: An automated translator for workflow verification | |
CN108287897A (zh) | 一种可视化的分布式数据修复工具及其方法 | |
CN112130823A (zh) | 一种平台开发方法、装置、计算机设备及存储介质 | |
CN112130849B (zh) | 代码自动生成方法及装置 | |
ElGamal et al. | An Architecture-Oriented Data Warehouse Testing Approach. | |
CN112308508A (zh) | 一种信息统一管理*** | |
Ma et al. | Microservice Migration Using Strangler Fig Pattern and Domain-Driven Design. | |
CN108647018A (zh) | 可实时预览的代码生成*** | |
CN102841842A (zh) | 用于下一代测试***的自动化控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190716 |