CN105631028B - 一种数据库集群功能实现方法和系统 - Google Patents
一种数据库集群功能实现方法和系统 Download PDFInfo
- Publication number
- CN105631028B CN105631028B CN201511021586.0A CN201511021586A CN105631028B CN 105631028 B CN105631028 B CN 105631028B CN 201511021586 A CN201511021586 A CN 201511021586A CN 105631028 B CN105631028 B CN 105631028B
- Authority
- CN
- China
- Prior art keywords
- database
- type data
- database node
- service request
- target
- 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.)
- Active
Links
Images
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开一种数据库集群功能实现方法和系统,所述方法和系统将现有仅包括单一数据库节点的数据库系统扩展为包括多个数据库节点的数据库集群,并在所述数据库集群的各个节点中分别存放互不相同的第一类型数据,在此基础上,当接收到发送方的第一类型数据业务请求时,基于所述请求中包括的业务要素,来为该请求指定一个相匹配的目标数据库节点,之后将该请求分配至所指定的目标数据库节点进行处理。由此可见,本申请通过在数据库集群的不同节点存放不同数据,并通过有效的业务路由实现了一种数据库集群功能,基于该功能可有效实现数据库扩展,从而解决了单一数据库带来的性能瓶颈问题。
Description
技术领域
本发明属于数据库管理和应用技术领域,尤其涉及一种数据库集群功能实现方法和系统。
背景技术
当今时代是一个信息化的时代,人们的生活、工作和学习都离不开信息系统。而信息系统对数据的处理及存储需以数据库系统为支撑,基于此,数据库系统在当今的信息化时代变得尤为重要。
目前的数据库系统多为仅采用单一数据库节点的单数据库系统,随着各行各业数据量的快速增长,数据库系统在正确记录数据结果的同时,还面临着单一数据库带来的性能瓶颈问题,以银行系统为例,每天都有大量客户到银行系统办理各种业务,笔数峰值每天可能达到一亿笔以上,而银行系统对并发量、可用性以及可扩展性都有着很高的要求,一旦银行系统瘫痪将带来巨大的经济损失和社会影响,从而,对于有着大并发量、高实时性和高扩展性要求的银行系统来讲,如何较好地解决单一数据库带来的性能瓶颈问题成为当前亟需解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种数据库集群功能实现方法和系统,旨在通过实现一种数据库集群功能来有效扩展数据库,进而解决单一数据库带来的性能瓶颈问题。
为此,本发明公开如下技术方案:
一种数据库集群功能实现方法,所述数据库集群包括多个数据库节点,所述多个数据库节点分别存放有互不相同的第一类型数据,所述方法包括:
接收发送方的第一类型数据业务请求,所述第一类型数据业务请求包括第一业务要素及第一类型数据操作任务;
基于所述第一业务要素,确定目标数据库节点;
将所述第一类型数据业务请求分配至所述目标数据库节点,以使所述目标数据库节点对所述第一类型数据操作任务进行处理。
上述方法,优选的,所述基于所述第一业务要素,确定目标数据库节点,包括:
基于预先配置的业务要素与数据库节点间的对应关系,确定出与所述第一业务要素相对应的目标数据库节点。
上述方法,优选的,将所述第一类型数据业务请求分配至所述目标数据库节点包括:
建立与所述目标数据库节点间的数据库连接;
生成与所述第一类型数据业务请求相对应的结构化查询语言SQL语句;
利用所述数据库连接,将所述SQL语句提交至所述目标数据库节点。
上述方法,优选的,还包括:
将所述目标数据库节点产生的返回结果数据反馈至所述发送方。
上述方法,优选的,当所述目标数据库节点的个数为多个时,所述将所述目标数据库节点产生的返回结果数据反馈至所述发送方包括:
整合多个所述目标数据库节点产生的多份返回结果数据,并将整合结果反馈至所述发送方。
上述方法,优选的,还包括:
当所述目标数据库节点发生故障时,将所述第一类型数据业务请求分配至所述目标数据库节点对应的目标备份数据库节点,所述目标备份数据库节点用于对所述目标数据库节点中的第一类型数据进行备份。
上述方法,优选的,所述多个数据库节点还分别存放有相同的第二类型数据,则所述方法还包括:
在接收到发送方的第二类型数据业务请求时,获取所述第二类型数据业务请求包含的操作类型;
如果所述操作类型为需要更新数据库的类型,则将所述第二类型数据业务请求分配至所述数据库集群包括的各个数据库节点进行同步处理;
如果所述操作类型为无需更新数据库的类型,则将所述第二类型数据业务请求分配至所述数据库集群中的任意一数据库节点进行处理。
一种数据库集群功能实现系统,所述数据库集群包括多个数据库节点,所述多个数据库节点分别存放有互不相同的第一类型数据,所述系统包括:
接收模块,用于接收发送方的第一类型数据业务请求,所述第一类型数据业务请求包括第一业务要素及第一类型数据操作任务;
确定模块,用于基于所述第一业务要素,确定目标数据库节点;
第一分配模块,用于将所述第一类型数据业务请求分配至所述目标数据库节点,以使所述目标数据库节点对所述第一类型数据操作任务进行处理。
上述系统,优选的,所述确定模块包括:
确定单元,用于基于预先配置的业务要素与数据库节点间的对应关系,确定出与所述第一业务要素相对应的目标数据库节点。
上述系统,优选的,所述第一分配模块包括:
连接建立单元,用于建立与所述目标数据库节点间的数据库连接;
生成单元,用于生成与所述第一类型数据业务请求相对应的SQL语句;
提交单元,用于利用所述数据库连接,将所述SQL语句提交至所述目标数据库节点。
上述系统,优选的,还包括:
结果反馈模块,用于将所述目标数据库节点产生的返回结果数据反馈至所述发送方。
上述系统,优选的,当所述目标数据库节点的个数为多个时,所述结果反馈模块具体用于整合多个所述目标数据库节点产生的多份返回结果数据,并将整合结果反馈至所述发送方。
上述系统,优选的,还包括:
节点故障处理模块,用于在所述目标数据库节点发生故障时,将所述第一类型数据业务请求分配至所述目标数据库节点对应的目标备份数据库节点;所述目标备份数据库节点用于对所述目标数据库节点中的第一类型数据进行备份。
上述系统,优选的,所述多个数据库节点还分别存放有相同的第二类型数据,则所述系统还包括:
获取模块,用于在接收到发送方的第二类型数据业务请求时,获取所述第二类型数据业务请求包含的操作类型;
第二分配模块,用于在所述操作类型为需要更新数据库的类型时,将所述第二类型数据业务请求分配至所述数据库集群包括的各个数据库节点进行同步处理;
第三分配模块,用于在所述操作类型为无需更新数据库的类型时,将所述第二类型数据业务请求分配至所述数据库集群中的任意一数据库节点进行处理。
由以上方案可知,本申请公开的数据库集群功能实现方法和系统,将现有仅包括单一数据库节点的数据库系统扩展为包括多个数据库节点的数据库集群,并在所述数据库集群的各个节点中分别存放互不相同的第一类型数据,在此基础上,当接收到发送方的第一类型数据业务请求时,基于所述请求中包括的业务要素,来为该请求指定一个相匹配的目标数据库节点,之后将该请求分配至所指定的目标数据库节点进行处理。由此可见,本申请通过在数据库集群的不同节点存放不同数据,并通过有效的业务路由实现了一种数据库集群功能,基于该功能可有效实现数据库扩展,从而解决了单一数据库带来的性能瓶颈问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明实施例一提供的数据库集群功能实现方法流程图;
图2是本发明实施例一提供的本申请方法的应用实例图;
图3是本发明实施例二提供的数据库集群功能实现方法流程图;
图4是本发明实施例三提供的数据库集群功能实现方法流程图;
图5是本发明实施例四提供的数据库集群功能实现方法流程图;
图6-图9是本发明实施例五提供的数据库集群功能实现系统的结构示意图。
具体实施方式
为了引用和清楚起见,下文中使用的技术名词、简写或缩写总结解释如下:
数据库节点:是指后台的某一台关系型数据库,也就是说,一个数据库节点即指后台的一个单数据库。
数据库集群:指利用高速计算机网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库,数据库集群可包括多个数据库节点。
拦截器:是在面向切面编程的机制中在用户需要执行的类之前或者之后调用某一个方法的机制。
SQL映射器:是将应用端发起的数据操作转换成数据库识别的SQL语句。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例一公开一种数据库集群功能实现方法,其中,所述数据库集群包括多个数据库节点,所述多个数据库节点分别存放有互不相同的第一类型数据,参考图1,所述方法可以包括以下步骤:
S101:接收发送方的第一类型数据业务请求,所述第一类型数据业务请求包括第一业务要素及第一类型数据操作任务。
本申请通过将现有技术中仅包括单一数据库节点的数据库系统扩展为包括多个数据库节点的数据库集群,并实现一种有效的数据库集群功能来解决单一数据库节点带来的性能瓶颈问题。
其中,所述发送方可以是普通用户,可以是相应的应用系统。
本实施例以银行系统为例对本申请方法进行说明,具体地,以银行的各前端应用系统,如各个分行的前端应用系统对银行的后台数据库系统(数据库集群形式)进行业务请求为例,对本申请的处理逻辑进行详细阐述。
其中,所述第一类型数据为交易型数据,例如银行系统产生的各种交易流水信息等;所述第一类型数据操作任务为交易型数据的增、删、改或查任务;所述第一业务要素包括银行机构代码,实际应用场景中,所述银行机构代码具体可通过总行或分行所在省市的省市代码来表征。
在银行后台数据库系统的数据库集群中,所述交易型数据按照某种业务要素进行划分,如具体可按照所述机构代码进行划分,不同的交易型数据基于不同的机构类型分别存储在不同的数据库节点中,具体地,例如数据库节点1存放分行1(各分行基于机构代码区分)、分行2、分行3的交易型数据,数据库节点2存放分行4、分行5的交易型数据等等。
参考图2,本实施例具体使用一拦截器,来拦截银行的各前端应用系统向后台数据库系统发出的交易型数据业务请求,并提取其中的银行机构代码等业务要素,以实现为相对应数据库节点的确定提供支持。
S102:基于所述第一业务要素,确定目标数据库节点。
所述拦截器中维护有一个能够反映业务要素(如省市代码)与数据库节点间映射关系的配置文件,具体地,拦截器采用Spring依赖注入方式,将不同业务要素(比如省市代码)对应的数据库连接配置在配置文件中。
在此基础上,当拦截器拦截到前端应用系统发出的交易型数据业务请求,并提取其中的省市代码等业务要素后,可基于所述配置文件中的配置信息,确定出与所提取的业务要素相对应的目标数据库节点。
S103:将所述第一类型数据业务请求分配至所述目标数据库节点,以使所述目标数据库节点对所述第一类型数据操作任务进行处理。
在依据所拦截请求中的业务要素,以及拦截器中的配置信息确定出目标数据库节点后,可为前端应用系统指定相应的数据库连接,并基于所述连接将拦截的请求分配至所述数据库节点,之后,所拦截请求对应的所有数据操作都将基于该数据库连接完成。
参考图3,本实施例具体采用一SQL(Structured Query Language,结构化查询语言)映射器将请求中包含的数据操作任务映射成数据库系统能够识别的SQL语句,
当前端应用系统发出的交易型数据业务请求经过拦截器后,拦截器将所述请求传输至SQL映射器,并向SQL映射器指定相应的数据库连接,SQL映射器基于拦截器指定的数据库连接情况,建立与目标数据库节点之间的数据库连接,从而实现了在前端应用系统与目标数据库节点之间,建立起一条以拦截器和SQL映射器为数据桥梁的数据连接。从而,当SQL映射器将来自拦截器的业务请求映射成相应的SQL语句后,可通过建立的所述连接将SQL语句提交至目标数据库节点,之后,该请求所包含的数据操作任务将在该节点中执行、完成。
具体地,本实施例中,所述SQL映射器维护有一个能够反映“业务要素(如省市代码)-数据库-数据库中的数据表”映射关系的配置文件,SQL拦截器依据所处理请求中的业务要素,从所述配置文件中获取所述请求需操作的数据表,并将待提交SQL语句中的数据表(可能为空值,也可能为上次递交SQL时的遗留值)替换成本次请求所需的数据表,进而生成最终可提交至数据库的SQL语句。
需要说明的是,如果拦截器依据业务要素及配置信息确定出多个目标数据库节点,SQL映射器会同时与拦截器指定的多个目标数据库节点建立数据库连接,并为各个目标数据库节点生成、提交相应的SQL语句,各个目标数据库节点基于接收的SQL语句完成相应的数据操作。
当有数据库扩展需求时,仅需在数据库集群中增添所需个数的数据库节点,并在拦截器、SQL映射器的配置文件中增添相对应的配置信息即可,本申请的数据库集群理论上可以支持无上限的业务请求,可以在不影响应用的前提下灵活方便地进行数据库扩展,从而本申请具有较好的扩展性能。
由以上方案可知,本申请公开的数据库集群功能实现方法,将现有仅包括单一数据库节点的数据库系统扩展为包括多个数据库节点的数据库集群,并在所述数据库集群的各个节点中分别存放互不相同的第一类型数据,在此基础上,当接收到发送方的第一类型数据业务请求时,基于所述请求中包括的业务要素,来为该请求指定一个相匹配的目标数据库节点,之后将该请求分配至所指定的目标数据库节点进行处理。由此可见,本申请通过在数据库集群的不同节点存放不同数据,并通过有效的业务路由实现了一种数据库集群功能,基于该功能可有效实现数据库扩展,从而解决了单一数据库带来的性能瓶颈问题。
实施例二
本实施例二中,参考图3,所述数据库集群功能实现方法还可以包括以下步骤:
S104:将所述目标数据库节点产生的返回结果数据反馈至所述发送方。
本实施例具体对实施例一的方案进行补充,其中,如果目标数据库节点在执行SQL映射器提交的SQL语句(如查询)后,生成相应的需返回给前端应用系统的结果数据,则可通过实施例一中所建立的数据连接,将返回数据经由SQL映射器和拦截器反馈至前端应用系统。
其中,如果目标数据库节点的个数为多个,则SQL映射器在接收到各个目标数据库节点返回的多份结果数据时,将各个目标数据库节点返回的数据整合为一个结果集返回给前端应用系统。
实施例三
本实施例三中,参考图4,所述数据库集群功能实现方法还可以包括以下步骤:
S105:当所述目标数据库节点发生故障时,将所述第一类型数据业务请求分配至所述目标数据库节点对应的目标备份数据库节点,所述目标备份数据库节点用于对所述目标数据库节点中的第一类型数据进行备份。
由于数据库集群中的各个数据库节点分别存放互不相同的第一类型数据,如交易型数据等,基于此,本实施例通过预先为数据库集群中每个数据库节点的第一类型数据进行备份,并通过预先在拦截器和SQL映射器的配置文集中添加数据库集群的相关备份信息,实现在目标数据库节点发生故障时,将拦截的第一类型数据业务请求路由至相应的备份数据库节点,从而保证了在数据库节点故障的情况下所述第一类型数据仍具可用性。
实施例四
本实施例四中,参考图5,所述数据库集群功能实现方法还可以包括以下步骤:
S106:在接收到发送方的第二类型数据业务请求时,获取所述第二类型数据业务请求包含的操作类型;
S107:如果所述操作类型为需要更新数据库的类型,则将所述第二类型数据业务请求分配至所述数据库集群包括的各个数据库节点进行同步处理;
S108:如果所述操作类型为无需更新数据库的类型,则将所述第二类型数据业务请求分配至所述数据库集群中的任意一数据库节点进行处理。
本实施例中,数据库集群的各数据库节点除了包含互不相同的第一类型数据之外,还可以同步包含相同的第二类型数据,从而各数据库点节中的第二类型数据互为备份。一般来说,所述第一类型数据为一些数据量较大、操作频繁的数据,如银行系统中的交易型数据等,而所述第二类型数据为一些数据量较少,不易发生变动的数据,如配置型数据等,即数据库集群中仅仅同步少量的配置型数据,以保证不会产生大数据量的数据冗余。
对于银行系统来说,所述配置型数据可以包括机构(总行/分行)信息、客户信息与参数信息(交易相关参数)间的对应关系,银行前端应用系统可基于实际的业务需求或管理需求对所述配置型数据进行操作,在操作配置型数据时,所产生的数据更新同步保存在集群的各个数据库节点中。
基于此,对于配置型数据的业务请求来说,需识别所述请求中的操作类型是否会对数据库产生数据更新,如果会产生数据更新(例如增、删、改),需将所述配置型数据业务请求分配至各个数据库节点进行同步处理,否则,如果不会产生数据更新(例如数据查询),则将所述请求分配至任意一个数据库节点进行处理即可。
实施例五
本实施例五公开一种数据库集群功能实现系统,所述系统与以上各实施例公开的方法相对应。
相应于实施例一,参考图6,所述数据库集群功能实现系统包括接收模块100、确定模块200和第一分配模块300。
接收模块100,用于接收发送方的第一类型数据业务请求,所述第一类型数据业务请求包括第一业务要素及第一类型数据操作任务。
确定模块200,用于基于所述第一业务要素,确定目标数据库节点。
其中,所述确定模块200包括确定单元,用于基于预先配置的业务要素与数据库节点间的对应关系,确定出与所述第一业务要素相对应的目标数据库节点。
第一分配模块300,用于将所述第一类型数据业务请求分配至所述目标数据库节点,以使所述目标数据库节点对所述第一类型数据操作任务进行处理。
所述第一分配模块300包括连接建立单元、生成单元和提交单元。
连接建立单元,用于建立与所述目标数据库节点间的数据库连接;
生成单元,用于生成与所述第一类型数据业务请求相对应的SQL语句;
提交单元,用于利用所述数据库连接,将所述SQL语句提交至所述目标数据库节点。
相应于实施例二,参考图7,所述系统还可以包括结果反馈模块400,用于将所述目标数据库节点产生的返回结果数据反馈至所述发送方。
其中,当所述目标数据库节点的个数为多个时,所述结果反馈模块400具体用于整合多个所述目标数据库节点产生的多份返回结果数据,并将整合结果反馈至所述发送方。
相应于实施例三,参考图8,所述系统还可以包括节点故障处理模块500,用于在所述目标数据库节点发生故障时,将所述第一类型数据业务请求分配至所述目标数据库节点对应的目标备份数据库节点;所述目标备份数据库节点用于对所述目标数据库节点中的第一类型数据进行备份。
相应于实施例四,参考图9,所述系统还可以包括获取模块600、第二分配模块700和第三分配模块800。
获取模块600,用于在接收到发送方的第二类型数据业务请求时,获取所述第二类型数据业务请求包含的操作类型;
第二分配模块700,用于在所述操作类型为需要更新数据库的类型时,将所述第二类型数据业务请求分配至所述数据库集群包括的各个数据库节点进行同步处理;
第三分配模块800,用于在所述操作类型为无需更新数据库的类型时,将所述第二类型数据业务请求分配至所述数据库集群中的任意一数据库节点进行处理。
对于本发明实施例五公开的数据库集群功能实现系统而言,由于其与实施例一至实施例四公开的数据库集群功能实现方法相对应,所以描述的比较简单,相关相似之处请参见实施例一至实施例四中数据库集群功能实现方法部分的说明即可,此处不再详述。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
为了描述的方便,描述以上系统或装置时以功能分为各种模块或单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
最后,还需要说明的是,在本文中,诸如第一、第二、第三和第四等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种数据库集群功能实现方法,其特征在于,所述数据库集群包括多个数据库节点,所述多个数据库节点分别存放有互不相同的第一类型数据,所述第一类型数据包括交易型数据,所述方法包括:
拦截器拦截到前端应用系统发出的交易型数据业务请求,所述交易型数据业务请求包括银行机构代码及交易型数据的增、删或改任务;
拦截器基于所述银行机构代码,确定目标数据库节点;
拦截器将所述交易型数据业务请求传输至SQL映射器,并向SQL映射器指定相应的数据库连接,SQL映射器基于拦截器指定的数据库连接情况,建立与目标数据库节点之间的数据库连接,当SQL映射器将来自拦截器的业务请求映射成相应的SQL语句后,通过建立的所述连接将SQL语句提交至目标数据库节点,以使所述目标数据库节点对所述交易型数据的增、删或改任务进行处理;
所述多个数据库节点还分别存放有相同的第二类型数据,则所述方法还包括:
在接收到发送方的第二类型数据业务请求时,获取所述第二类型数据业务请求包含的操作类型;
如果所述操作类型为需要更新数据库的类型,则将所述第二类型数据业务请求分配至所述数据库集群包括的各个数据库节点进行同步处理;
如果所述操作类型为无需更新数据库的类型,则将所述第二类型数据业务请求分配至所述数据库集群中的任意一数据库节点进行处理。
2.根据权利要求1所述的方法,其特征在于,所述拦截器基于所述银行机构代码,确定目标数据库节点,包括:
所述拦截器基于预先配置的银行机构代码与数据库节点间的对应关系,确定出与所述银行机构代码相对应的目标数据库节点。
3.根据权利要求1所述的方法,其特征在于,还包括:
将所述目标数据库节点产生的返回结果数据反馈至所述发送方。
4.根据权利要求3所述的方法,其特征在于,当所述目标数据库节点的个数为多个时,所述将所述目标数据库节点产生的返回结果数据反馈至所述发送方包括:
整合多个所述目标数据库节点产生的多份返回结果数据,并将整合结果反馈至所述发送方。
5.根据权利要求1所述的方法,其特征在于,还包括:
当所述目标数据库节点发生故障时,将所述交易型数据业务请求分配至所述目标数据库节点对应的目标备份数据库节点,所述目标备份数据库节点用于对所述目标数据库节点中的交易型数据进行备份。
6.一种数据库集群功能实现系统,其特征在于,所述数据库集群包括多个数据库节点,所述多个数据库节点分别存放有互不相同的第一类型数据,所述第一类型数据包括交易型数据,所述系统包括:
接收模块,用于通过拦截器拦截到前端应用系统发出的交易型数据业务请求,所述交易型数据业务请求包括银行机构代码及交易型数据的增、删或改任务;
确定模块,用于通过拦截器基于所述银行机构代码,确定目标数据库节点;
第一分配模块,用于通过拦截器将所述交易型数据业务请求传输至SQL映射器,并向SQL映射器指定相应的数据库连接,SQL映射器基于拦截器指定的数据库连接情况,建立与目标数据库节点之间的数据库连接,当SQL映射器将来自拦截器的业务请求映射成相应的SQL语句后,通过建立的所述连接将SQL语句提交至目标数据库节点,以使所述目标数据库节点对所述交易型数据的增、删或改任务进行处理;
所述多个数据库节点还分别存放有相同的第二类型数据,则所述系统还包括:
获取模块,用于在接收到发送方的第二类型数据业务请求时,获取所述第二类型数据业务请求包含的操作类型;
第二分配模块,用于在所述操作类型为需要更新数据库的类型时,将所述第二类型数据业务请求分配至所述数据库集群包括的各个数据库节点进行同步处理;
第三分配模块,用于在所述操作类型为无需更新数据库的类型时,将所述第二类型数据业务请求分配至所述数据库集群中的任意一数据库节点进行处理。
7.根据权利要求6所述的系统,其特征在于,所述确定模块包括:
确定单元,用于基于预先配置的银行机构代码与数据库节点间的对应关系,确定出与所述银行机构代码相对应的目标数据库节点。
8.根据权利要求6所述的系统,其特征在于,还包括:
结果反馈模块,用于将所述目标数据库节点产生的返回结果数据反馈至所述发送方。
9.根据权利要求8所述的系统,其特征在于,当所述目标数据库节点的个数为多个时,所述结果反馈模块具体用于整合多个所述目标数据库节点产生的多份返回结果数据,并将整合结果反馈至所述发送方。
10.根据权利要求6所述的系统,其特征在于,还包括:
节点故障处理模块,用于在所述目标数据库节点发生故障时,将所述交易型数据业务请求分配至所述目标数据库节点对应的目标备份数据库节点;所述目标备份数据库节点用于对所述目标数据库节点中的交易型数据进行备份。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511021586.0A CN105631028B (zh) | 2015-12-30 | 2015-12-30 | 一种数据库集群功能实现方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511021586.0A CN105631028B (zh) | 2015-12-30 | 2015-12-30 | 一种数据库集群功能实现方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105631028A CN105631028A (zh) | 2016-06-01 |
CN105631028B true CN105631028B (zh) | 2020-09-18 |
Family
ID=56045961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511021586.0A Active CN105631028B (zh) | 2015-12-30 | 2015-12-30 | 一种数据库集群功能实现方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105631028B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407244A (zh) * | 2016-06-21 | 2017-02-15 | 平安科技(深圳)有限公司 | 基于多数据库的数据查询方法、系统和装置 |
CN106302640A (zh) * | 2016-07-27 | 2017-01-04 | 乐视控股(北京)有限公司 | 数据请求处理方法及装置 |
CN106385437A (zh) * | 2016-08-31 | 2017-02-08 | 广州唯品会信息科技有限公司 | 集群选择方法及装置 |
CN106802932B (zh) * | 2016-12-28 | 2021-06-22 | 华为技术有限公司 | 一种数据库的路由方法、装置及数据库系统 |
CN107220310A (zh) * | 2017-05-11 | 2017-09-29 | 中国联合网络通信集团有限公司 | 一种数据库数据管理系统、方法及装置 |
CN110019131B (zh) * | 2017-12-08 | 2021-10-15 | 北京京东尚科信息技术有限公司 | 一种复盘业务的方法和装置 |
CN108282522B (zh) * | 2018-01-15 | 2021-01-08 | 吉浦斯信息咨询(深圳)有限公司 | 基于动态路由的数据存储访问方法及系统 |
CN108573030A (zh) * | 2018-03-21 | 2018-09-25 | 中国银行股份有限公司 | 数据库选择方法及系统 |
CN108595574B (zh) * | 2018-04-16 | 2021-11-02 | 上海达梦数据库有限公司 | 数据库集群的连接方法、装置、设备及存储介质 |
CN109271438B (zh) * | 2018-10-10 | 2022-01-04 | 上海艾融软件股份有限公司 | 一种数据库访问方法及其系统 |
CN109460300A (zh) * | 2018-11-19 | 2019-03-12 | 中国银行股份有限公司 | 一种银行外部请求的处理方法及系统 |
CN109766330B (zh) * | 2018-12-29 | 2020-02-14 | 北京三快在线科技有限公司 | 数据分片方法、装置、电子设备及存储介质 |
CN109981459B (zh) * | 2019-02-28 | 2021-02-19 | 联想(北京)有限公司 | 一种信息发送方法、客户端和计算机可读存储介质 |
CN110175201A (zh) * | 2019-04-10 | 2019-08-27 | 阿里巴巴集团控股有限公司 | 业务数据处理方法、系统、装置及电子设备 |
CN111597160A (zh) * | 2020-04-21 | 2020-08-28 | 中国人民财产保险股份有限公司 | 分布式数据库系统、分布式数据处理方法和装置 |
CN111858737B (zh) * | 2020-07-29 | 2024-01-09 | 中国工商银行股份有限公司 | 数据导入装置、方法以及银行系统搭建装置、方法及存储介质 |
CN111949402B (zh) * | 2020-08-05 | 2024-09-10 | 中国建设银行股份有限公司 | 数据库请求处理方法、装置、计算机设备及存储介质 |
US11645650B1 (en) | 2020-08-06 | 2023-05-09 | Citibank, N.A. | Systems and methods for blockchain-based transaction break prevention |
US12020241B1 (en) * | 2020-08-06 | 2024-06-25 | Citibank, N.A. | Systems and methods for multi-entity blockchain-based event break prevention |
CN114637592A (zh) * | 2020-12-15 | 2022-06-17 | 网联清算有限公司 | 一种数据清分方法、装置、系统、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102402616A (zh) * | 2011-12-22 | 2012-04-04 | 北京新媒传信科技有限公司 | 一种数据库集群的实现方法和系统 |
CN103136363A (zh) * | 2013-03-14 | 2013-06-05 | 曙光信息产业(北京)有限公司 | 查询处理方法和集群数据库系统 |
US20130185302A1 (en) * | 2007-09-26 | 2013-07-18 | International Business Machines Corporation | Inserting data into an in-memory distributed nodal database |
CN103678354A (zh) * | 2012-09-11 | 2014-03-26 | 中国移动通信集团公司 | 基于云计算平台的本地关系型数据库节点调度方法和装置 |
CN105159985A (zh) * | 2015-08-31 | 2015-12-16 | 努比亚技术有限公司 | 基于redis集群的数据查询装置及方法 |
-
2015
- 2015-12-30 CN CN201511021586.0A patent/CN105631028B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130185302A1 (en) * | 2007-09-26 | 2013-07-18 | International Business Machines Corporation | Inserting data into an in-memory distributed nodal database |
CN102402616A (zh) * | 2011-12-22 | 2012-04-04 | 北京新媒传信科技有限公司 | 一种数据库集群的实现方法和系统 |
CN103678354A (zh) * | 2012-09-11 | 2014-03-26 | 中国移动通信集团公司 | 基于云计算平台的本地关系型数据库节点调度方法和装置 |
CN103136363A (zh) * | 2013-03-14 | 2013-06-05 | 曙光信息产业(北京)有限公司 | 查询处理方法和集群数据库系统 |
CN105159985A (zh) * | 2015-08-31 | 2015-12-16 | 努比亚技术有限公司 | 基于redis集群的数据查询装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105631028A (zh) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105631028B (zh) | 一种数据库集群功能实现方法和系统 | |
CN106649378B (zh) | 一种数据同步方法及装置 | |
US9251163B2 (en) | File sharing system and file sharing method | |
US9507875B2 (en) | Symbolic hyper-graph database | |
CN107787490A (zh) | 分布式数据库网格中的直接连接功能 | |
US9336270B2 (en) | Techniques for accessing a parallel database system via external programs using vertical and/or horizontal partitioning | |
CN105608086A (zh) | 分布式数据库系统的事务处理方法及装置 | |
CN111881223B (zh) | 数据管理方法、设备、系统及存储介质 | |
CN103345502B (zh) | 分布式数据库的事务处理方法和系统 | |
CN107423390B (zh) | 一种基于oltp-olap混合关系型数据库系统内部的数据实时同步方法 | |
CN107247758B (zh) | 基于银行核心系统的数据处理方法 | |
CN104809202A (zh) | 一种数据库同步的方法和装置 | |
CN104809201A (zh) | 一种数据库同步的方法和装置 | |
CN101741911A (zh) | 基于多副本协同的写操作方法、系统及节点 | |
CN105468720A (zh) | 集成分布式数据处理系统的方法、相应系统及其数据处理方法 | |
CN111597160A (zh) | 分布式数据库系统、分布式数据处理方法和装置 | |
CN104809200A (zh) | 一种数据库同步的方法和装置 | |
CN105516284B (zh) | 一种集群数据库分布式存储的方法和装置 | |
CN107870982B (zh) | 数据处理方法、系统和计算机可读存储介质 | |
CN102033938A (zh) | 基于二级映射的集群动态扩展方法 | |
CN103034735A (zh) | 一种大数据分布式文件导出方法 | |
CN106934048A (zh) | 数据在线迁移方法、代理节点 | |
CN110895547B (zh) | 基于db2联邦特性的多源异构数据库数据同步系统及方法 | |
CN102262674A (zh) | 一种分布式内存数据库的数据同步方法及系统 | |
US20180189366A1 (en) | Data processing method, device and system of query server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221107 Address after: 100005 No. 69, inner main street, Dongcheng District, Beijing, Jianguomen Patentee after: AGRICULTURAL BANK OF CHINA Patentee after: Agricultural Bank of China Financial Technology Co.,Ltd. Address before: 100005 No. 69, inner main street, Dongcheng District, Beijing, Jianguomen Patentee before: AGRICULTURAL BANK OF CHINA |