一种数据库访问方法及其系统技术方案

技术编号:20221712 阅读:21 留言:0更新日期:2019-01-28 20:14
本申请实施例公开一种数据库访问方法及系统,其中,所述方法包括:获取业务请求;判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。通过本技术方案,可以保证各数据库访问量的均衡,提高了用户访问的效率,有效避免了高并发情况下由于某一数据库访问量的暴增导致数据访问速率低及网络拥堵等技术问题。

【技术实现步骤摘要】
一种数据库访问方法及其系统
本申请涉及数据存储及数据库访问
,尤其涉及一种数据库访问方法及其系统。
技术介绍
随着互联网技术的不断发展,越来越多的电商平台融入人们的生活。在访问电商平台的用户越来越多的情况下,将用户的个人数据及商品的数据信息存储于一个服务器已经无法满足电商平台高并发情况下的需求。所以需要更多的数据库服务器分散存储用户的个人数据及商品的数据信息,然后基于请求的数据访问相应的数据库,以此来满足越来越多的访问量。在目前的电商平台中,有许多关于数据库访问的实现方法,然而并不存在一种基于客户端路由来实现数据库访问的实现方法,通过从客户端出发进行数据库拆分及访问,可以灵活的处理电商平台中各种情况下的数据路由,来满足电商平台复杂的业务场景。综上分析,现有技术方案中,缺少一种基于客户端路由来实现数据库访问的方法及系统。
技术实现思路
本申请实施例提供一种数据库访问方法及其系统,以解决现有技术中缺少一种基于客户端路由来实现数据库的访问的方法及系统的技术问题。根据本申请实施例提供的一种数据库访问方法,包括:获取业务请求;判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。在一个实施例中,将所述业务请求转发给相应的分库主节点,具体包括:提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;根据确定的分库主节点的编号,转发所述业务请求。在一个实施例中,所述将所述业务请求转发给相应的主库主节点,包括:提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。在一个实施例中,所述判断所述业务请求的类型,具体包括:判断所述业务请求所请求的数据为是否为公共数据;若是,则所述业务请求的类型为与公共数据相关的业务;否则,所述业务请求的类型为与个人数据相关的业务。在一个实施例中,在获取业务请求之前,包括:将公共数据存储于主库主节点,将个人数据存储于分库主节点。在一个实施例中,所述方法还包括:在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。根据本申请实施例提供的一种数据库访问系统,包括:业务获取模块,用于获取业务请求;判断模块,用于判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;转发模块,若所述业务请求的类型为与公共数据相关的业务,则将所述业务转发给相应的主库主节点,若所述业务请求的类型为与个人数据相关的业务,则将所述业务转发给相应的分库主节点。在一个实施例中,所述转发模块,具体包括:第一提取单元,用于提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;个数获取单元,根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;计算单元,所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;第一转发单元,根据确定的分库主节点的编号,转发所述业务请求。在一个实施例中,在一个实施例中,所述转发模块,具体包括:第二提取单元,提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;第二转发单元,根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。在一个实施例中,所述系统还包括:存储模块,用于将公共数据存储于主库主节点,将个人数据存储于分库主节点;构建模块,用于在特定区域内,构建数量相同的主库主节点及数量相同的分库主节点。本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本申请提供的数据库访问方法,当获取的所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;当获取的述业务请求为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点,通过本技术方案,可以保证各数据库访问量的均衡,提高了用户访问的效率,有效避免了高并发情况下由于某一数据库访问量的暴增导致数据访问速率低及网络拥堵等技术问题。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施例一种数据库访问方法的流程图;图2为本申请实施例中另外一种数据库访问方法的流程图;图3为本申请实施例一种数据库访问系统的模块示意图;图4为本申请实施例另外一种数据库访问系统的模块示意图;图5为本申请实施例数据库访问系统的应用场景图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。以下结合附图,详细说明本申请各实施例提供的技术方案。实施例1参见图1所示,本申请实施例提供一种数据库访问方法,具体包括如下步骤:步骤S102、获取业务请求;所述业务请求通过客户端发送,所述业务请求,用于请求访问数据库。步骤S104、判断所述业务请求的类型;其中,所述业务请求的类型包括:与公共数据相关的业务和与个人数据相关的业务;在本申请实施例中,依据获取的业务请求所请求的数据对业务进行分类,如果获取的业务请求的目的是请求访问公共数据或者上传公共数据等与公共数据相关的操作,则该业务请求的类型为与公共数据相关的业务;而当业务请求所请求的数据为个人数据时,如发生业务请求的目的为查看或者变更个人资料或者通讯方式等操作,或者个人订单的查询及取消等操作,则该业务请求的类型为与个人数据相关的业务。在本申请实施例中,业务请求的类型可以但不仅限于包括:与公共数据相关的业务及与个人数据相关的业务。步骤S106、若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;在本申请实施例中,将公共数据存储于客户端所在区域的主库主节点,因此,当获取的业务请求的类型为与个人数据相关的业务时,可将所述业务请求转发给相应的主库主节点。步骤S108、若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。在本申请实施例中,将个人数据存储于分库主节点,当业务请求的类型为与个人信息相关的业务时,将所述业务请求转发给相应的分库主节点。在本申请实施例中,在一个特定区域内,可以设置多个分库主节点。如此设置,是基于一般情况下,个人数据的数据量较大,因此,设置多个分库主节点,并将个人数据存储于分库主节点。本申请实施例公开的数据库访问方法,当获取到业务请求后,判断业务请求的类型,根据业务请求的不同类型,将业务请求转发给相应的主节点。本申请实施例所述的数据库访问方法,是基于客户端来本文档来自技高网...

【技术保护点】
1.一种数据库访问方法,其特征在于,包括:获取业务请求;判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。

【技术特征摘要】
1.一种数据库访问方法,其特征在于,包括:获取业务请求;判断所述业务请求的类型;其中,所述类型包括与公共数据相关的业务和与个人数据相关的业务;若所述业务请求的类型为与公共数据相关的业务,则将所述业务请求转发给相应的主库主节点;若所述业务请求的类型为与个人数据相关的业务,则将所述业务请求转发给相应的分库主节点。2.根据权利要求1所述的方法,其特征在于,将所述业务请求转发给相应的分库主节点,具体包括:提取所述业务请求的路由因子;其中,所述路由因子包括发送所述业务请求的客户端的区域标识及编号;根据所述区域标识,获取所述客户端所在区域内的分库主节点的个数;所述客户端的编号对所述分库主节点的个数取模计算,确定将所述业务请求转发给的分库主节点的编号;根据确定的分库主节点的编号,转发所述业务请求。3.根据权利要求1所述的方法,其特征在于,所述将所述业务请求转发给相应的主库主节点,包括:提取客户端的路由因子;其中,所述路由因子包括所述客户端的区域标识及编号;根据所述区域标识,将所述业务请求转发给所述区域内的主库主节点。4.根据权利要求1所述的方法,其特征在于,所述判断所述业务请求的类型,具体包括:判断所述业务请求所请求的数据为是否为公共数据;若是,则所述业务请求的类型为与公共数据相关的业务;否则,所述业务请求的类型为与个人数据相关的业务。5.根据权利要求1所述的方法,其特征在于,在获取业务请求之前,包括:将公共数据存储于主库主节点,将个人数据存储于分库主节点。6.根据权利要求5所...

【专利技术属性】
技术研发人员:张甫李志伟董浩
申请(专利权)人:上海艾融软件股份有限公司
类型:发明
国别省市:上海,31

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

1