数据库服务供应方法和装置与流程

文档序号:32745126发布日期:2022-12-30 21:43阅读:44来源:国知局
数据库服务供应方法和装置与流程

1.本发明涉及数据库技术领域,可用于金融领域,尤其涉及一种数据库服务供应方法和装置。


背景技术:

2.开源数据库由于其开放特性让用户可以非常方便的获取应用和拓展修改,获得了更大的应用场景,目前越来越多的企业尤其是一些大型互联网企业大量构建和部署基于开源软件的数据库服务系统,但是多数实施方案的侧重点是某个具体组件比如内核的功能的改进和提升,或者侧重于从技术角度对组件的组装。
3.侧重于某个具体组件比如内核的功能的改进和提升,或者侧重于从技术角度对组件进行组装的方案并不能顾及到应用系统的整体需求,或者不能够整体考虑和保证业务系统对数据库系统的安全性、稳定性和可靠性等需求,或者忽略甚至不考虑应用整体的成本以及业务状态,而且由技术角度来为用户组装数据库服务方案比较费时,实效性不高,用户体验不够好。


技术实现要素:

4.有鉴于此,本发明提供一种数据库服务供应方法和装置,以解决上述提及的至少一个问题。
5.为了实现上述目的,本发明采用以下方案:根据本发明的第一方面,提供一种数据库服务供应方法,所述方法包括:接收用户发出的数据库服务请求;根据所述数据库服务请求中的业务参数以及恢复点目标rpo和恢复时间目标rto来提取对应的业务模型,所述业务参数包括业务数据规模、业务并发量和业务吞吐量;根据提取的所述业务模型匹配相适应的数据库服务的高可用能力模型;根据所述高可用能力模型为所述用户部署所需的数据库服务环境。
6.根据本发明的第二方面,提供一种数据库服务供应装置,所述装置包括:请求接收单元,用于接收用户发出的数据库服务请求;业务模型提取单元,用于根据所述数据库服务请求中的业务参数以及恢复点目标rpo和恢复时间目标rto来提取对应的业务模型,所述业务参数包括业务数据规模、业务并发量和业务吞吐量;匹配单元,用于根据提取的所述业务模型匹配相适应的数据库服务的高可用能力模型;部署单元,用于根据所述高可用能力模型为所述用户部署所需的数据库服务环境。
7.根据本发明的第三方面,提供一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,处理器执行所述计算机程序时实现上述方法的步骤。
8.根据本发明的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
9.由上述技术方案可知,本技术提供的数据库服务供应方法和装置,能够由业务驱
动和发起数据库服务的交付,通过业务请求一站式部署和管理数据库服务,可以提高数据库服务的供应效率和实效性。
附图说明
10.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
11.图1是本技术实施例提供的一种数据库服务供应方法的流程示意图;
12.图2是本技术另一实施例提供的一种数据库服务供应方法的流程示意图;
13.图3是本技术另一实施例提供的一种算法仓库运行方法的流程示意图;
14.图4是本技术实施例提供的一种高可用能力模型的结构示意图;
15.图5是本技术实施例提供的另一种高可用能力模型的结构示意图;
16.图6是本技术实施例提供的另一种高可用能力模型的结构示意图;
17.图7是本技术实施例提供的另一种高可用能力模型的结构示意图;
18.图8是本技术实施例提供的电子设备的系统构成示意框图。
具体实施方式
19.本发明实施例提供的数据库服务供应方法和装置,可用于金融领域及其他领域,需要说明的是,本发明的数据库服务供应方法和装置可用于金融领域,也可用于除金融领域之外的任意领域,本发明对数据库服务供应方法和装置的应用领域不做限定。
20.本技术技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
21.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
22.如图1所示为本技术实施例提供的一种数据库服务供应方法的流程示意图,本实施例是从数据库服务管控平台侧对本技术进行的描述,该方法包括如下步骤:
23.步骤s101:接收用户发出的数据库服务请求。
24.用户可以通过专用客户端或者web页面发起数据库服务请求,为用户的业务应用向数据库服务管控平台申请相应的数据库服务。
25.步骤s102:根据所述数据库服务请求中的业务参数以及恢复点目标(recovery point objective,rpo)和恢复时间目标(recovery time objective,rto)来提取对应的业务模型,所述业务参数包括业务数据规模、业务并发量和业务吞吐量。
26.数据库服务管控平台侧在收到用户发出的数据库服务请求后,会提取该请求中所包含的业务参数字段,该业务参数可以报考应用业务的业务数据规模、业务并发量和业务吞吐量,以及该请求中所包含的rpo和rto要求。
27.步骤s103:根据提取的所述业务模型匹配相适应的数据库服务的高可用能力模型。
28.数据库服务管控平台侧预先存储有多种高可用能力模型,这些高可用能力模型可以为不同规格的数据库服务提供相应的方案,因此需要对这些高可用能力模型进行预先测试,然后根据测试结果改进模型中组件的配置和功能,接着优化测试并形成稳定的可以发布的数据库服务方案进行存储。这可以从入口处保证不会给客户提供不成熟或不可靠的数据库服务。
29.根据业务模型和高可能能力模型之间的映射关系,本步骤可以得到与业务模型相适应的高可用能力模型。该高可用能力模型包括了主从数据库的设置、数据同步模式、异常处理、路由更新等内容。
30.步骤s104:根据所述高可用能力模型为所述用户部署所需的数据库服务环境。
31.由上述技术方案可知,本技术提供的数据库服务供应方法,能够由业务驱动和发起数据库服务的交付,通过业务请求一站式部署和管理数据库服务,可以提高数据库服务的供应效率和实效性。
32.如图2所示为本技术另一实施例提供的一种数据库服务供应方法的流程示意图,本实施例也是从数据库服务管控平台侧对本技术进行的描述,该方法包括如下步骤:
33.步骤s201:接收用户发出的数据库服务请求。
34.步骤s202:根据所述数据库服务请求中的业务参数以及恢复点目标rpo和恢复时间目标rto来提取对应的业务模型,所述业务参数包括业务数据规模、业务并发量和业务吞吐量。
35.步骤s203:根据提取的所述业务模型匹配相适应的数据库服务的高可用能力模型。
36.优选的,在本实施例中,该高可用能力模型可采用同城双可用区(availability zones,az)三部署单元(deployment unit,du)的高可用模型。其可以满足大部分应用业务数据库服务的高可用性。
37.优选的,如图3所示,该同城双可用区三部署单元的高可用能力模型的可以包括:第一可用区(az1)、第二可用区(az2)、第一部署单元(du-a)、第二部署单元(du-b)和第三部署单元(du-c),其中du-a和du-c属于az1,du-b属于az2,du-a内部署有一个主数据库(m)、一个从数据库(s)和一个复制拓扑可视化组件orchestrator(orc),du-c内部署有一个从数据库(s)和一个复制拓扑可视化组件orchestrator(orc),du-b内部署有两个从数据库(s)和一个复制拓扑可视化组件orchestrator(orc),用户可通过复制拓扑可视化组件orchestrator进行主从数据库切换的管理,以及获取到最新集群拓扑信息,当数据库集群发生拓扑变化或者故障时,引用端可以通过orchestrator感知并自行调节路由,应用的访问是通过在主数据库节点上绑定虚拟ip(virtual ip address)地址,通过vip来进行访问。本高可用模型采用的是主从的半同步模式。
38.应用可以通过vip直接连接主数据库,数据库集群采用一主多从的半同步复制方式的高可用配置,当系统出现故障时通过orchestrator进行故障转移切换,切换后在新的主库配置vip。
39.优选的,如图4所示,该同城双可用区三部署单元的高可用能力模型的还可以包括:第一可用区(az1)、第二可用区(az2)、第一部署单元(du-a)、第二部署单元(du-b)和第三部署单元(du-c),其中du-a和du-c属于az1,du-b属于az2,du-a内部署有一个负载均衡组
件(haproxy)、一个主数据库(m)、一个从数据库(s)和一个拓扑组件及配置中心(orch/consul),du-c)内部署有一个从数据库(m)、一个负载均衡组件(haproxy)和一个拓扑组件及配置中心(orch/consul),du-b内部署有一个负载均衡组件(haproxy)、两个从数据库(m)和一个拓扑组件及配置中心(orch/consul),应用通过负载均衡组件(haproxy)访问主数据库,当主从切换时,通过配置中心(orch/consul)完成配置变更,具体来说可以通过orch更新consul server配置,再同步到位于haproxy的consul client,完成配置变更。
40.应用通过haproxy组件来访问数据库,数据库集群采用一主多从的半同步复制方式的高可用配置,当系统出现故障时通过拓扑组件进行故障转移切换,配置中心实现主库的信息注册并且来配置du和az的切换优先级。优选的,如图5所示,该同城双可用区三部署单元的高可用能力模型的还可以包括:第一可用区(az1)、第二可用区(az2)、第一部署单元(du-a)、第二部署单元(du-b)和第三部署单元(du-c),其中du-a和du-c属于az1,du-b属于az2,du-a内部署有一个主数据库(m)和一个配置中心(consul),du-c内部署有一个主数据库(m)和一个配置中心(consul),du-b内部署有一个主数据库(m)和一个配置中心(consul),由du-a、du-b和du-c的主数据库组成复制组mgr,应用通过全局dns访问主数据库,若mgr异常,则由配置中心(consul)更新访问路由。
41.应用通过dns(全局dns+consul负责)访问数据库,全局dns负责解析用户请求,分发数据库子域名地址由consul负责解析,数据库集群采用mgr模式,如出现mgr异常,则conful负责更新访问路由。可满足故障一台mysql情境下服务可用,能满足部署单元内mysql故障时数据强一致以及满足部署单元内consul故障时不影响切换。优选的,如图6所示,该同城双可用区三部署单元的高可用能力模型的还可以包括:第一可用区(az1)、第二可用区(az2)、第一部署单元(du-a)、第二部署单元(du-b)和第三部署单元(du-c),其中du-a和du-c属于az1,du-b属于az2,du-a内部署有一个主数据库(m)和一个应用及mysql router组件,du-c内部署有一个主数据库和一个应用及mysql router组件,du-b内部署有一个主数据库和一个一个应用及mysql router组件,由du-a、du-b和du-c的主数据库组成复制组mgr,在应用的连接上写入多个地址,由mysql router负责感知mgr拓扑,路由至主数据库。
42.应用与mysql router一起部署,在连接上写入多个地址,由mysql router负责感知mysql mgr拓扑,路由到正确节点,数据库集群采用mgr模式,可满足故障一台mysql情况下服务可用以及可满足故障n-1台mysql router情况下服务可用。步骤s204:根据所述高可用能力模型为所述用户部署所需的数据库服务环境。
43.步骤s205:根据用户指令对部署好的数据库服务环境进行管理和监控。
44.在本实施例中,对数据库服务环境的监控可以由监控代理模块和监控模块共同完成,其中监控代理模块用于采集服务器层面性能指标数据和mysql数据库层面性能指标数据,并提供应用程序编程接口(application programming interface,api)供prometheus抓取。而监控模块则用于手机、存储监控代理模块所采集的实时监控数据,为prometheus提供展示数据源,并根据监控系统内置的阈值规则,来提供报警信息发送服务。而本实施例中对数据库服务环境的管理则主要包括数据管理和治理、数据开发、接入管理、资源管理、安全管理和测试管理等各种数据库的基本管理和应用功能。
45.由上述技术方案可知,本技术提供的数据库服务供应方法,能够由业务驱动和发
起数据库服务的交付,通过业务请求一站式部署和管理数据库服务,可以提高数据库服务的供应效率和实效性。且提供的数据库服务可以匹配用户需求的同时,保证高可用的实现。
46.如图7所示为本技术实施例提供的一种数据库服务供应装置的结构示意图,该装置包括:请求接收单元710、业务模型提取单元720、匹配单元730和部署单元740,他们之间依次相连,其中:
47.请求接收单元710用于接收用户发出的数据库服务请求。
48.业务模型提取单元720用于根据所述数据库服务请求中的业务参数以及恢复点目标rpo和恢复时间目标rto来提取对应的业务模型,所述业务参数包括业务数据规模、业务并发量和业务吞吐量。
49.匹配单元730用于根据提取的所述业务模型匹配相适应的数据库服务的高可用能力模型。
50.部署单元740用于根据所述高可用能力模型为所述用户部署所需的数据库服务环境。
51.优选的,本实施例的装置还可以包括一监控管理单元,用于根据用户指令对部署好的数据库服务环境进行管理和监控。
52.优选的,上述匹配单元730所匹配到的高可用能力模型可以为同城双可用区三部署单元的高可用模型。
53.优选的,上述同城双可用区三部署单元的高可用模型可以包括:第一可用区、第二可用区、第一部署单元、第二部署单元和第三部署单元,所述第一部署单元和第三部署单元属于所述第一可用区,所述第二部署单元属于所述第二可用区,所述第一部署单元内部署有一个主数据库、一个从数据库和一个复制拓扑可视化组件,所述第三部署单元内部署有一个从数据库和一个复制拓扑可视化组件,所述第二部署单元内部署有两个从数据库和一个复制拓扑可视化组件,所述用户可通过复制拓扑可视化组件进行主从数据库切换的管理,以及获取最新集群拓扑信息。
54.优选的,上述同城双可用区三部署单元的高可用模型还可以包括:第一可用区、第二可用区、第一部署单元、第二部署单元和第三部署单元,所述第一部署单元和第三部署单元属于所述第一可用区,所述第二部署单元属于所述第二可用区,所述第一部署单元内部署有一个负载均衡组件、一个主数据库、一个从数据库和一个配置中心,所述第三部署单元内部署有一个从数据库、一个配置中心和一个负载均衡组件,所述第二部署单元内部署有一个负载均衡组件、两个从数据库和一个配置中心,应用通过负载均衡组件访问主数据库,当主从切换时,通过配置中心完成配置变更。
55.优选的,上述同城双可用区三部署单元的高可用模型还可以包括:第一可用区、第二可用区、第一部署单元、第二部署单元和第三部署单元,所述第一部署单元和第三部署单元属于所述第一可用区,所述第二部署单元属于所述第二可用区,所述第一部署单元内部署有一个主数据库和一个配置中心,所述第三部署单元内部署有一个主数据库和一个配置中心,所述第二部署单元内部署有一个主数据库和一个配置中心,由所述第一部署单元、第二部署单元和第三部署单元的主数据库组成复制组mgr,应用通过全局dns访问主数据库,若mgr异常,则由配置中心更新访问路由。
56.优选的,上述同城双可用区三部署单元的高可用模型还可以包括:第一可用区、第
二可用区、第一部署单元、第二部署单元和第三部署单元,所述第一部署单元和第三部署单元属于所述第一可用区,所述第二部署单元属于所述第二可用区,所述第一部署单元内部署有一个主数据库和一个应用及mysql router组件,所述第三部署单元内部署有一个主数据库和一个应用及mysql router组件,所述第二部署单元内部署有一个主数据库和一个一个应用及mysql router组件,由所属第一部署单元、第二部署单元和第三部署单元的主数据库组成复制组mgr,在应用的连接上写入多个地址,由mysql router负责感知mgr拓扑,路由至主数据库。
57.上述各个单元的详细描述可以参见前述方法实施例的描述,在此不再进行赘述。
58.由上述技术方案可知,本技术提供的数据库服务供应装置,能够由业务驱动和发起数据库服务的交付,通过业务请求一站式部署和管理数据库服务,可以提高数据库服务的供应效率和实效性。且提供的数据库服务可以匹配用户需求的同时,保证高可用的实现。
59.本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时实现上述方法。
60.本发明实施例还提供一种计算机程序产品,包括计算机程序/指令,计算机程序/指令被处理器执行时实现上述方法的步骤。
61.如图8所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理器130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图8中所示的所有部件;此外,电子设备600还可以包括图8中没有示出的部件,可以参考现有技术。
62.如图8所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部件的操作。
63.其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
64.输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为lcd显示器,但并不限于此。
65.该存储器140可以是固态存储器,例如,只读存储器(rom)、随机存取存储器(ram)、sim卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为erpom等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
66.存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
67.通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块
(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
68.基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
69.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
70.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
71.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
72.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
73.本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1