一种数据库的路由方法、装置及数据库系统制造方法及图纸

技术编号:15572017 阅读:67 留言:0更新日期:2017-06-10 10:11
本申请实施例提供一种数据库的路由方法,应用在数据库中,该数据库包括多个数据库节点,该方法引入数据库路由装置提供数据库的路由调度,包括:数据库路由装置接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;所述数据库路由装置根据所述数据类型,确定所述数据类型对应的数据库节点;所述数据库路由装置向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。该数据库的路由方法通过引入数据库路由装置进行数据库的路由调度,使得关系型数据库可以进行分布式扩展,从而在数据大量增长的情况,保证了数据库的读写性能。

Routing method, device and database system of database

The embodiment of the application provides a routing method for the application of the database, in the database, the database includes a plurality of database nodes, this method introduces database routing device provides a routing database, including: database application routing device receives data sent by the routing information query, the data routing information query request contains the data type; the database routing device according to the type of data, determine the database node corresponding to the type of the data; the database routing device to the application to send data routing information query response, the data routing information query response contains the identification information of the database node. Routing routing method of the database database database by introducing the routing device, the relational database can be distributed, thus a substantial increase in the data, the database read and write performance.

【技术实现步骤摘要】

本申请涉及数据库系统,尤其涉及一种数据库路由方法、装置及数据库系统。
技术介绍
关系型数据库,是指采用了关系模型来组织数据的数据库。关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为数据库架构的主流模型。简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。当前主流的关系型数据库有Oracle、DB2、MySQL、浪潮K-DB等。随着业务的发展以及数据量的增加,当一个应用系统的用户量和访问量与日俱增的时候,传统的关系型数据库却没有办法像页面服务器(WebServer)那样简单地通过添加更多的硬件和服务节点来扩展性能和负载能力。关系型数据库自身不支持分布式扩展,而单台数据库节点的最大处理能力有限,当关系数据库达到一定规模时,非常容易发生死锁等并发问题,导致其读写性能下降非常严重。
技术实现思路
有鉴于此,实有必要提供一种数据库的路由方法、装置及数据库,使得关系型数据库能够支持分布式扩展,提升数据库的性能。一方面,提供一种数据库的路由方法,应用在数据库中,该数据库包括多个数据库节点,该方法引入数据库路由装置提供数据库的路由调度,包括:数据库路由装置接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;所述数据库路由装置根据所述数据类型,确定所述数据类型对应的数据库节点;所述数据库路由装置向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。该数据库的路由方法通过引入数据库路由装置进行数据库的路由调度,使得关系型数据库可以进行分布式扩展,从而在数据大量爆发的情况,保证了数据库的读写性能。一种可选的实施方式中,所述路由信息查询请求还包括:数据操作类型,所述路由方法还包括:确定所述数据操作类型,用以确定调用哪个接口进行数据查询。一种可选的实施方式中,若确定所述数据操作类型为数据新增操作,则获取数据库分库策略,根据所述数据类型以及所述数据库分库策略,确定所述数据类型对应的数据库节点。可选的,若根据数据库分库策略存在多个可选的数据库,可进一步根据数据库负载情况选择一个负载较轻的数据库。一种可选的实施方式中,若确定所述数据操作类型为数据删除或者修改操作,则读取数据库路由信息,根据所述数据类型以及所述数据库路由信息,确定所述数据类型对应的数据库节点。可选的,若路由信息查询请求包含路由字段值,则可根据数据类型、路由字段值以及数据库路由信息确定该数据对应的数据库节点。一种可选的实施方式中,所述数据库分库策略包括数据类型和数据库节点之间的映射关系,可选的数据库分库策略可以通过二维图表的形式描述。一种可选的实施方式中,所述数据库路由信息包括数据类型、路由字段值和数据库节点之间的映射关系,可选的数据库路由信息可以通过二维图表的形式描述。可选的,各个数据库的路由信息可以分别以独立的二维图表描述,方便进行数据库路由信息的更新校正。可选的,多个数据库的路由信息也可在一个二维图表中合并描述,降低管理的复杂度。一种可选的实施方式中,所述路由方法还包括:获取数据库节点信息和数据库路由信息数据结构,根据所述数据库节点信息从应用系统各个数据库节点读取数据,按照所述数据库路由信息数据结构加载所述数据库路由信息,将所述数据库路由信息存储到本地内存中,其中所述数据库节点信息包括数据类型、数据库节点、数据库表和路由字段之间的映射关系。可选的数据库节点信息可通过二维图表的形式描述。一种可选的实施方式中,所述路由方法还包括:定时从应用系统各个数据库节点加载数据库路由信息,将本地存储的数据库路由信息与新加载的数据库路由信息进行校对,更新本地存储的数据库路由信息。保证数据库路由信息的准确性。第二方面,提供一种数据库路由装置,该数据库路由装置包括:路由模块,用于接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;根据所述数据类型,确定所述数据类型对应的数据库节点;向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。本数据库路由路由可适用于视频、电信、IT、互联网等领域的业务应用系统,使得本身不支持分布式的业务数据库可以进行分布式部署,提升了数据库整体性能,且不需对业务系统原有业务数据结构进行任何变化。一种可选的实施方式中,所述路由信息查询请求还包括:数据操作类型,所述路由模块还用于:确定所述数据操作类型。一种可选的实施方式中,该数据库路由装置还包括:存储模块,用于存储数据库分库策略,所述路由模块具体用于若确定所述数据操作类型为数据新增操作,则从存储模块获取数据库分库策略,根据所述数据类型以及所述数据库分库策略,确定所述数据类型对应的数据库节点。一种可选的实施方式中,所述存储模块,还用于存储数据库路由信息,所述路由模块还具体用于:若确定所述数据操作类型为数据删除或者修改操作,则读取数据库路由信息,根据所述数据类型以及所述数据库路由信息,确定所述数据类型对应的数据库节点。一种可选的实施方式中,该数据库路由装置还包括:策略配置模块,用于配置数据库分库策略,所述数据库分库策略包括数据类型和数据库节点之间的映射关系。一种可选的实施方式中,所述策略配置模块,还用于配置数据库路由信息数据结构,所述数据库路由信息数据结构包括:数据类型、路由字段和数据库节点。一种可选的实施方式中,所述路由模块还用于:从策略配置模块获取数据库节点信息和数据库路由信息数据结构,根据所述数据库节点信息从应用系统各个数据库节点读取数据,按照所述数据库路由信息数据结构加载所述数据库路由信息,将所述数据库路由信息存储到存储模块中,其中所述数据库节点信息包括数据类型、数据库节点、数据库表和路由字段之间的映射关系。一种可选的实施方式中,所述路由模块还用于:定时从应用系统各个数据库节点加载数据库路由信息,将存储模块存储的数据库路由信息与新加载的数据库路由信息进行校对,更存储模块存储的数据库路由信息。第三方面,提供一种数据库路由服务器,包括:包括存储器,用于存储计算机可执行程序代码,以及处理器用于执行存储器中可执行的程序代码;其中所述程序代码包括指令,当所述处理器执行所述指令时,所述指令使所述数据库路由服务器执行以下操作:接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;根据所述数据类型,确定所述数据类型对应的数据库节点;向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。第四方面,提供一种计算机程序产品,包括可执行程序代码,其中所述程序代码包括指令,当所述处理器执行所述指令时,所述指令使所述数据库路由服务器执行以下操作:接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;根据所述数据类型,确定所述数据类型对应的数据库节点;向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。第五方面,本申请实施例提供了一种计算机存储介质,用于储存为上述数据库路由装置所用的计算机软件指令,其包含用于执行上述方面所设计的程序。第六方面,提供一种数据库系统,包括如上所本文档来自技高网...
一种<a href="http://www.xjishu.com/zhuanli/55/201611238215.html" title="一种数据库的路由方法、装置及数据库系统原文来自X技术">数据库的路由方法、装置及数据库系统</a>

【技术保护点】
一种数据库的路由方法,其特征在于,包括:数据库路由装置接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;所述数据库路由装置根据所述数据类型,确定所述数据类型对应的数据库节点;所述数据库路由装置向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。

【技术特征摘要】
1.一种数据库的路由方法,其特征在于,包括:数据库路由装置接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;所述数据库路由装置根据所述数据类型,确定所述数据类型对应的数据库节点;所述数据库路由装置向所述应用发送数据路由信息查询响应,所述数据路由信息查询响应包含所述数据库节点的标识信息。2.如权利要求1所述的路由方法,其特征在于,所述路由信息查询请求还包括:数据操作类型,所述路由方法还包括:确定所述数据操作类型。3.如权利要求2所述的路由方法,其特征在于,所述数据库路由装置根据所述数据类型,确定所述数据类型对应的数据库节点,包括:若确定所述数据操作类型为数据新增操作,则获取数据库分库策略,根据所述数据类型以及所述数据库分库策略,确定所述数据类型对应的数据库节点。4.如权利要求2所述的路由方法,其特征在于,所述数据库路由装置根据所述数据类型,确定所述数据类型对应的数据库节点,包括:若确定所述数据操作类型为数据删除或者修改操作,则读取数据库路由信息,根据所述数据类型以及所述数据库路由信息,确定所述数据类型对应的数据库节点。5.如权利要求3所述的路由方法,其特征在于,所述数据库分库策略包括数据类型和数据库节点之间的映射关系。6.如权利要求4所述的路由方法,其特征在于,所述数据库路由信息包括数据类型、路由字段值和数据库节点之间的映射关系。7.如权利要求1-6任一项所述的路由方法,其特征在于,所述路由方法还包括:获取数据库节点信息和数据库路由信息数据结构,根据所述数据库节点信息从应用系统各个数据库节点读取数据,按照所述数据库路由信息数据结构加载所述数据库路由信息,将所述数据库路由信息存储到本地内存中,其中所述数据库节点信息包括数据类型、数据库节点、数据库表和路由字段之间的映射关系。8.如权利要求1-6任一项所述的路由方法,其特征在于,所述路由方法还包括:定时从应用系统各个数据库节点加载数据库路由信息,将本地存储的数据库路由信息与新加载的数据库路由信息进行校对,更新本地存储的数据库路由信息。9.一种数据库路由装置,其特征在于,包括:路由模块,用于接收应用发送的数据路由信息查询请求,所述数据路由信息查询请求包含数据类型;根据所述数据类型,确定所述数...

【专利技术属性】
技术研发人员:张卫兵
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1