CN109271438A - 一种数据库访问方法及其系统 - Google Patents
一种数据库访问方法及其系统 Download PDFInfo
- Publication number
- CN109271438A CN109271438A CN201811178965.4A CN201811178965A CN109271438A CN 109271438 A CN109271438 A CN 109271438A CN 201811178965 A CN201811178965 A CN 201811178965A CN 109271438 A CN109271438 A CN 109271438A
- Authority
- CN
- China
- Prior art keywords
- service request
- host node
- library host
- data
- client
- 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.)
- Granted
Links
Abstract
本申请实施例公开一种数据库访问方法及系统,其中,所述方法包括:获取业务请求;判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。通过本技术方案,可以保证各数据库访问量的均衡,提高了用户访问的效率,有效避免了高并发情况下由于某一数据库访问量的暴增导致数据访问速率低及网络拥堵等技术问题。
Description
技术领域
本申请涉及数据存储及数据库访问技术领域,尤其涉及一种数据库访问方法及其系统。
背景技术
随着互联网技术的不断发展,越来越多的电商平台融入人们的生活。在访问电商平台的用户越来越多的情况下,将用户的个人数据及商品的数据信息存储于一个服务器已经无法满足电商平台高并发情况下的需求。所以需要更多的数据库服务器分散存储用户的个人数据及商品的数据信息,然后基于请求的数据访问相应的数据库,以此来满足越来越多的访问量。
在目前的电商平台中,有许多关于数据库访问的实现方法,然而并不存在一种基于客户端路由来实现数据库访问的实现方法,通过从客户端出发进行数据库拆分及访问,可以灵活的处理电商平台中各种情况下的数据路由,来满足电商平台复杂的业务场景。
综上分析,现有技术方案中,缺少一种基于客户端路由来实现数据库访问的方法及系统。
发明内容
本申请实施例提供一种数据库访问方法及其系统,以解决现有技术中缺少一种基于客户端路由来实现数据库的访问的方法及系统的技术问题。
根据本申请实施例提供的一种数据库访问方法,包括:
获取业务请求;
判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;
若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;
若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。
在一个实施例中,将所述业务请求转发给相应的分库主节点,具体包括:
提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;
根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;
所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;
根据确定的分库主节点的编号,转发所述业务请求。
在一个实施例中,所述将所述业务请求转发给相应的主库主节点,包括:
提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;
根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。
在一个实施例中,所述判断所述业务请求的类型,具体包括:
判断所述业务请求所请求的数据为是否为公共数据;
若是,则所述业务请求的类型为与公共数据相关的业务;
否则,所述业务请求的类型为与个人数据相关的业务。
在一个实施例中,在获取业务请求之前,包括:
将公共数据存储于主库主节点,将个人数据存储于分库主节点。
在一个实施例中,所述方法还包括:
在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。
根据本申请实施例提供的一种数据库访问系统,包括:
业务获取模块,用于获取业务请求;
判断模块,用于判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;
转发模块,若所述业务请求的类型为与公共数据相关的业务,则将所述业务转发给相应的主库主节点,若所述业务请求的类型为与个人数据相关的业务,则将所述业务转发给相应的分库主节点。
在一个实施例中,所述转发模块,具体包括:
第一提取单元,用于提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;
个数获取单元,根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;
计算单元,所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;
第一转发单元,根据确定的分库主节点的编号,转发所述业务请求。
在一个实施例中,在一个实施例中,所述转发模块,具体包括:
第二提取单元,提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;
第二转发单元,根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。
在一个实施例中,所述系统还包括:
存储模块,用于将公共数据存储于主库主节点,将个人数据存储于分库主节点;
构建模块,用于在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本申请提供的数据库访问方法,当获取的所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;当获取的述业务请求为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点,通过本技术方案,可以保证各数据库访问量的均衡,提高了用户访问的效率,有效避免了高并发情况下由于某一数据库访问量的暴增导致数据访问速率低及网络拥堵等技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例一种数据库访问方法的流程图;
图2为本申请实施例中另外一种数据库访问方法的流程图;
图3为本申请实施例一种数据库访问系统的模块示意图;
图4为本申请实施例另外一种数据库访问系统的模块示意图;
图5为本申请实施例数据库访问系统的应用场景图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
参见图1所示,本申请实施例提供一种数据库访问方法,具体包括如下步骤:
步骤S102、获取业务请求;
所述业务请求通过客户端发送,所述业务请求,用于请求访问数据库。
步骤S104、判断所述业务请求的类型;其中,所述业务请求的类型包括:与公共数据相关的业务和与个人数据相关的业务;
在本申请实施例中,依据获取的业务请求所请求的数据对业务进行分类,如果获取的业务请求的目的是请求访问公共数据或者上传公共数据等与公共数据相关的操作,则该业务请求的类型为与公共数据相关的业务;而当业务请求所请求的数据为个人数据时,如发生业务请求的目的为查看或者变更个人资料或者通讯方式等操作,或者个人订单的查询及取消等操作,则该业务请求的类型为与个人数据相关的业务。
在本申请实施例中,业务请求的类型可以但不仅限于包括:与公共数据相关的业务及与个人数据相关的业务。
步骤S106、若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;
在本申请实施例中,将公共数据存储于客户端所在区域的主库主节点,因此,当获取的业务请求的类型为与个人数据相关的业务时,可将所述业务请求转发给相应的主库主节点。
步骤S108、若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。
在本申请实施例中,将个人数据存储于分库主节点,当业务请求的类型为与个人信息相关的业务时,将所述业务请求转发给相应的分库主节点。
在本申请实施例中,在一个特定区域内,可以设置多个分库主节点。如此设置,是基于一般情况下,个人数据的数据量较大,因此,设置多个分库主节点,并将个人数据存储于分库主节点。
本申请实施例公开的数据库访问方法,当获取到业务请求后,判断业务请求的类型,根据业务请求的不同类型,将业务请求转发给相应的主节点。本申请实施例所述的数据库访问方法,是基于客户端来控制器其访问的数据库,可以基本达到数据的平均分配,可以保证各数据库访问量的均衡,提高了用户访问的效率,有效避免了高并发情况下由于某一数据库访问量的暴增导致数据访问速率低及网络拥堵等技术问题。
实施例2
参见图2所示,本申请实施例提供一种数据库访问方法,主要包括如下步骤:
步骤S200、在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。
在本申请实施例中,可以以省、直辖市为单位,在每个省、直辖市区域内构建数量相同的主库主节点及数量相同的分库主节点。
如,在每个省、直辖市构建一个主库主节点和十个分库主节点,或者在每个省、直辖市构建一个主库主节点和20个分库主节点等。
在此指出,上述对主库主节点及分库主节点列举的具体数字仅为便于阐述,并非是对分库主节点及主库主节点的数量的具体限定。
步骤S201、将公共数据存储于主库主节点,将个人数据存储于分库主节点。
在本申请实施例中,数据可分为公共数据和个人数据,如在电商平台中,商品的数据为公共数据,而用户的个人信息或个人订单信息均为个人数据。
在本申请实施例中,将公共数据存储于主库主节点时,因公共数据为用户均可访问的数据,因此,本申请实施例中,将公共数据在每个主库主节点中均存储。
在本申请实施例中,将个人数据存储于分库主节点时,可以获取经常访问该个人数据的路由因子,同时,获取该特定区域内访问该个人数据频率较高的客户端的编号。采用客户端的编号对分库主节点的个数取模计算,得到的值为几便将该个人数据存储于几号分库主节点(分库主节点从0开始编号,编号分别为0、1、2、3…n)。
上述方法仅为将个人数据存储于分库主节点的一种方法,并非是对具体存储方法的限定。
步骤S202、获取业务请求;
所述业务请求可以通过客户端发送,客户端通过发送该业务请求,请求其需要访问的数据,可以为公共数据,也可以为个人数据。
步骤S204、判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务,该步骤具体包括:
判断判断所述业务请求所请求的数据为是否为公共数据;
若是,则所述业务请求的类型为与公共数据相关的业务;
否则,所述业务请求的类型为与个人数据相关的业务。
在电商平台中,可以将商品的信息作为公共数据,则与商品信息相关的业务为与公共数据相关的业务;而用户的个人订单信息及个人资料信息均为个人信息,则与用户的个人资料信息及个人订单信息相关的业务为与个人信息相关的业务。
步骤S206、若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点,该步骤可具体包括:
步骤S2062、提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;
在本申请实施例中,客户端的路由因子中可包括该客户端的区域标识和编号,其中,区域标识用于标识该客户端所述的地理位置信息,而编号用于标识所述客户端在其所属的路由器中的编号。
如,路由因子为XXXX11/A,“A”为客户端的区域标识,用于标识所述客户端所在的地理位置。
步骤S2064、根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。
在本申请实施例中,可以在每个省的省会所在城市布置一个主库主节点,在每个直辖市所在城市布置一个主库主节点,如经过判断,获取的业务请求的类型为与公共数据相关的业务,则将业务请求转发给所述客户端其所在区域内的主库主节点。如,经过判断,获取的业务请求的类型为公共数据相关的业务,而获取到的路由因子中的区域标识为A,则控制客户端与地区A的主库主节点连接,将该业务请求转发给直辖市A的主库主节点。
在本申请实施例中,所述与公共数据相关的业务可以为:访问公共数据、存储公共数据等业务。
如下,列举一个具体的实施例进行阐述:
将某电商平台的商品的信息分别存储于主库主节点;
当客户端的区域标识为A,表征客户端位于A地区,则将业务请求转发给A地区的主库主节点,而当客户端的区域标识为B,表征客户端位于B地区,则将业务请求转发给B地区的主库主节点。
步骤S208、若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。
在本申请实施例中,与个人数据相关的业务可以但不仅限为查看个人数据、修改个人数据及存储个人数据等业务。如,用户修改个人信息时,应该将该业务请求转发给相应的分库主节点,在完成修改时,应该将修改后的个人信息重新存储于该分库主节点;再如:用户查看订单信息时,同样应将该业务请求转发给相应的分库主节点。
在本申请实施例中,所述客户端访问其所在区域内的相应的分库主节点,具体方法为:
步骤S2082、提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;
在本申请实施例中,通过客户端发送的业务请求可携带所述客户端所在的路由器的路由因子,也可以单独提取发送业务请求的客户端的路由因子。路由因子中包括该客户端的区域标识和编号,其中,区域标识用于标识该客户端所属的地理位置信息,而编号用于标识所述客户端在其所属的路由器中的编号。
如,路由因子为XXXX11/A,“XXXX11”为客户端的编号,用于标识所述客户端在其所述的路由器中的编号,而A为客户端的区域标识,用于标识该客户端所属的地理位置信息。
步骤S2084、根据区域标识,获取所述客户端所在区域内的分库主节点的个数;
在本申请实施例中,可依据具体需求在每个区域设置若干个分库主节点,如5个,10个等。
进一步地,在本申请实施例中,可在每个区域内设置数量相同的分库主节点。
步骤S2086、所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;
为了确定客户端应该将所述业务请求转发给哪一个分库主节点,同时又能保证每个区域内的分库主节点的访问量能尽可能相同,采用采用客户端的编号对所述分库主节点的个数取模计算的方式确定所述客户端应该将所述业务请求转发给哪一个分库主节点,优选地,取模计算之后得到的值为几,便将所述业务请求转发给编号为几的分库主节点,如下,列举一个具体实施例进行阐述:
客户端的路由因子为XXXX11/A,即客户端的编号为XXXX11;
在区域A内设置有一个主库主节点和五个分库主节点,其中,分库主节点的编号为分别为A0、A1、A2、A3、A4;
采用XXXX11的最后两位“11”对5(分库主节点的个数)取模计算,得到的值为1。
步骤S2088、根据确定的分库主节点的编号,转发所述业务请求。
基于上述步骤,路由因子为XXXX11/A的客户端访问A地区的编号为“1”的分库主节点,则将业务请求转发给编号为“A1”的分库主节点。
可以看出,上述实施例仅采用客户端的编号的最后两位对分库主节点的个数进行取模计算,便可满足需求。在此指出,采用最后两位对分库主节点的个数进行取模计算,仅为一个实施例,并非是对取模计算采用的位数的具体限定,在此,应该依据具体的需求而进行设定,如:如果分库主节点的个数为2个,则取模计算时,仅采用客户端的编号的最后一位即可。而如果分库主节点的个数为10个,则仅采用客户端的编号的最后两位即可。
上述列举的分库主节点的个数,仅仅是为了便于说明,并非是对分库主节点的个数的限定。
本申请实施例的数据库访问方法,通过采用客户端的编号对分库主节点的个数进行取模计算来确定客户端具体访问哪个分库主节点,能在很大程度上保证各分库主节点的访问量均衡,有效避免了数据爆发式访问的情形,提高了数据访问速率。
实施例3
相应于上述公开的数据库访问方法,本申请实施例公开一中数据库访问系统,参见图3所示,主要包括:
业务获取模块32,用于获取业务请求;
判断模块34,用于判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;
转发模块36,若所述业务请求的类型为与公共数据相关的业务,则将所述业务转发给相应的主库主节点,若所述业务请求的类型为与个人数据相关的业务,则将所述业务转发给相应的分库主节点。
本申请实施例所述的数据库访问系统,可设置在客户端中,客户端在发送业务请求之前,可首先请求路由因子,然后再发送所述业务请求。
本申请实施例所述的数据库访问系统,可运用于电商平台,有效避免了商家在推出促销活动时,由于多个用户同时查看商品信息、订单信息等造成的信息拥堵甚至是服务器瘫痪等问题。
本申请实施例所述的数据库访问系统,有效保证了各主节点的访问量的均衡,有效保障了数据库的数据访问效率,避免了爆发式地访问某一数据库从而造成的网络拥堵现象的发生。
实施例4
参见图4所示,本申请实施例公开一种数据库访问系统,主要包括:
构建模块40,用于在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。
存储模块41,用于将公共数据存储于主库主节点,将个人数据存储于分库主节点;
业务获取模块42,用于获取业务请求;
判断模块44,用于判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;
转发模块46,若所述业务请求的类型为与公共数据相关的业务,则将所述业务转发给相应的主库主节点,若所述业务请求的类型为与个人数据相关的业务,则将所述业务转发给相应的分库主节点。
在本申请实施例中,所述转发模块36,具体包括:
第一提取单元461,用于提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;
个数获取单元463,根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;
计算单元465,所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;
第一转发单元467,根据确定的分库主节点的编号,转发所述业务请求。
在本申请实施例中,所述转发模块,可具体包括:
第二提取单元462,提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;
第二转发单元466,根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点.
在此指出,所述第一提取单元461与所述第二提取单元462可以为同一个提取单元,也可以在转发模块中设置两个不同的提取单元,在此对其不做具体限定。
同样,第一转发单元467与第二转发单元466可以为同一个转发单元,也可以在转发模块中设置两个不同的转发单元,在此对其不做具体限定。
参见图5所示的应用场景图,当用户通过客户端发送业务请求后,数据库访问系统中的判断模块判断业务请求的类型,如果所述业务请求的类型为与公共数据相关的业务,则可控制客户端与主库主节点连接,转发模块将所述业务请求转发给主库主节点,而当业务请求的类型为与个人数据相关的业务时,则可控制发送业务请求的客户端与相应的分库主节点连接,转发模块将所述业务请求发送至所述分库主节点。如此,可有效避免达到各主节点的访问量均衡。
本申请实施例的数据库访问系统,转发模块通过采用客户端的编号对分库主节点的个数进行取模计算来确定客户端具体访问哪个分库主节点,能在很大程度上保证各分库主节点的访问量均衡,有效避免了数据爆发式访问造成数据库拥堵的情形,提高了数据访问速率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种数据库访问方法,其特征在于,包括:
获取业务请求;
判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;
若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;
若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。
2.根据权利要求1所述的方法,其特征在于,将所述业务请求转发给相应的分库主节点,具体包括:
提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;
根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;
所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;
根据确定的分库主节点的编号,转发所述业务请求。
3.根据权利要求1所述的方法,其特征在于,所述将所述业务请求转发给相应的主库主节点,包括:
提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;
根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。
4.根据权利要求1所述的方法,其特征在于,所述判断所述业务请求的类型,具体包括:
判断所述业务请求所请求的数据为是否为公共数据;
若是,则所述业务请求的类型为与公共数据相关的业务;
否则,所述业务请求的类型为与个人数据相关的业务。
5.根据权利要求1所述的方法,其特征在于,在获取业务请求之前,包括:
将公共数据存储于主库主节点,将个人数据存储于分库主节点。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。
7.一种数据库访问系统,其特征在于,包括:
业务获取模块,用于获取业务请求;
判断模块,用于判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;
转发模块,若所述业务请求的类型为与公共数据相关的业务,则将所述业务转发给相应的主库主节点,若所述业务请求的类型为与个人数据相关的业务,则将所述业务转发给相应的分库主节点。
8.根据权利要求7所述的系统,其特征在于,所述转发模块,具体包括:
第一提取单元,用于提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;
个数获取单元,根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;
计算单元,所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;
第一转发单元,根据确定的分库主节点的编号,转发所述业务请求。
9.根据权利要求7所述的系统,其特征在于,所述转发模块,具体包括:
第二提取单元,提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;
第二转发单元,根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。
10.根据权利要求7所述的系统,其特征在于,还包括:
存储模块,用于将公共数据存储于主库主节点,将个人数据存储于分库主节点;
构建模块,用于在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811178965.4A CN109271438B (zh) | 2018-10-10 | 2018-10-10 | 一种数据库访问方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811178965.4A CN109271438B (zh) | 2018-10-10 | 2018-10-10 | 一种数据库访问方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109271438A true CN109271438A (zh) | 2019-01-25 |
CN109271438B CN109271438B (zh) | 2022-01-04 |
Family
ID=65196394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811178965.4A Active CN109271438B (zh) | 2018-10-10 | 2018-10-10 | 一种数据库访问方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109271438B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580938A (zh) * | 2020-03-27 | 2020-08-25 | 山东浪潮通软信息科技有限公司 | 一种工作单元的事务处理方法、装置、设备及介质 |
CN113177169A (zh) * | 2021-05-18 | 2021-07-27 | 北京天融信网络安全技术有限公司 | 网络地址的类别获取方法、装置、设备及存储介质 |
CN113793229A (zh) * | 2021-08-30 | 2021-12-14 | 东风柳州汽车有限公司 | 零部件分库方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243598A (zh) * | 2014-09-25 | 2014-12-24 | 海信集团有限公司 | 一种信息推荐方法及装置 |
CN105183735A (zh) * | 2014-06-18 | 2015-12-23 | 阿里巴巴集团控股有限公司 | 数据的查询方法及查询装置 |
CN105631028A (zh) * | 2015-12-30 | 2016-06-01 | 中国农业银行股份有限公司 | 一种数据库集群功能实现方法和系统 |
CN105677751A (zh) * | 2015-12-29 | 2016-06-15 | 北京奇艺世纪科技有限公司 | 关系型数据库的调度方法及系统 |
CN106951452A (zh) * | 2017-02-22 | 2017-07-14 | 中国建设银行股份有限公司 | 用于账务追溯的数据查询方法及装置 |
CN107066522A (zh) * | 2017-02-20 | 2017-08-18 | 北京数字联盟网络科技有限公司 | 数据库的访问方法和装置 |
-
2018
- 2018-10-10 CN CN201811178965.4A patent/CN109271438B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183735A (zh) * | 2014-06-18 | 2015-12-23 | 阿里巴巴集团控股有限公司 | 数据的查询方法及查询装置 |
CN104243598A (zh) * | 2014-09-25 | 2014-12-24 | 海信集团有限公司 | 一种信息推荐方法及装置 |
CN105677751A (zh) * | 2015-12-29 | 2016-06-15 | 北京奇艺世纪科技有限公司 | 关系型数据库的调度方法及系统 |
CN105631028A (zh) * | 2015-12-30 | 2016-06-01 | 中国农业银行股份有限公司 | 一种数据库集群功能实现方法和系统 |
CN107066522A (zh) * | 2017-02-20 | 2017-08-18 | 北京数字联盟网络科技有限公司 | 数据库的访问方法和装置 |
CN106951452A (zh) * | 2017-02-22 | 2017-07-14 | 中国建设银行股份有限公司 | 用于账务追溯的数据查询方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580938A (zh) * | 2020-03-27 | 2020-08-25 | 山东浪潮通软信息科技有限公司 | 一种工作单元的事务处理方法、装置、设备及介质 |
CN113177169A (zh) * | 2021-05-18 | 2021-07-27 | 北京天融信网络安全技术有限公司 | 网络地址的类别获取方法、装置、设备及存储介质 |
CN113793229A (zh) * | 2021-08-30 | 2021-12-14 | 东风柳州汽车有限公司 | 零部件分库方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109271438B (zh) | 2022-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109977690A (zh) | 一种数据处理方法、装置和介质 | |
JP6725155B2 (ja) | モバイルデバイス属性の経時的変化に基づいて一意のモバイルデバイスを識別するための方法及びシステム | |
JP6713238B2 (ja) | 電子装置、小売店舗評価モデルを構築する方法、システム及び記憶媒体 | |
KR20160065923A (ko) | 클러스터링에 기반한 매핑과 라우팅을 위한 시스템 및 방법 | |
US10044837B2 (en) | Generation and distribution of named, definable, serialized tokens | |
CN108572991A (zh) | 数据库处理方法、装置和存储介质 | |
CN109271438A (zh) | 一种数据库访问方法及其系统 | |
CN104346365A (zh) | 确定与特定业务相关的关联日志的方法和装置 | |
CN109145051A (zh) | 分布式数据库的数据汇总方法及装置和电子设备 | |
CN108289034A (zh) | 一种故障发现方法和装置 | |
CN107888717A (zh) | 一种域名确定方法、装置及电子设备 | |
CN106101055A (zh) | 一种多数据库的数据访问方法及其系统和代理服务器 | |
CN107818116B (zh) | 用于确定用户行为区域位置信息的方法与设备 | |
CN110020846A (zh) | 一种转账业务处理方法及系统 | |
CN109343962A (zh) | 数据处理方法、装置及分布式服务系统 | |
Guerrero et al. | Optimization policy for file replica placement in fog domains | |
CN104917800B (zh) | 建立用于虚拟机的冗余连接的方法及装置 | |
CN108566429A (zh) | 一种云端文件分享方法和装置 | |
JP6425247B2 (ja) | 仮想化基盤選択装置及び方法、並びに、プログラム | |
CN113194107B (zh) | 基于互联网的区域特性的寻址方法和装置 | |
CN106940725B (zh) | 一种征信数据存储调度方法及系统 | |
CN109245943A (zh) | 一种故障定位方法及装置 | |
US11348131B2 (en) | Data processing systems for processing land tract data | |
CN108804210A (zh) | 一种云平台的资源配置方法及装置 | |
US10510095B2 (en) | Searching based on a local density of entities |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |