数据访问方法及其装置、存储介质、程序产品制造方法及图纸

技术编号:39243678 阅读:9 留言:0更新日期:2023-10-30 11:56
本发明专利技术公开了一种数据访问方法及其装置、存储介质、程序产品,当接收到客户端发起的针对目标数据的访问请求,先对访问请求进行解析得到待访问库表名称信息和待访问数据信息,然后根据待访问库表名称信息在访问映射表中进行库表匹配,得到目标库表名称,并根据目标库表名称确定待访问的目标库表和目标库表所归属的目标数据库集群,接着确定目标数据库集群的访问接口,通过访问接口建立与目标数据库集群的访问连接,并根据待访问数据信息从目标数据库集群的目标库表中获取目标数据,然后将目标数据发送给客户端。本发明专利技术实施例能够在数据库集群发生变更时降低对客户端的正常运行的影响。本发明专利技术实施例可应用于例如数据查询等的数据处理技术中。数据处理技术中。数据处理技术中。

【技术实现步骤摘要】
数据访问方法及其装置、存储介质、程序产品


[0001]本专利技术涉及数据处理
,尤其涉及一种数据访问方法及其装置、存储介质、程序产品。

技术介绍

[0002]在数据存储领域中,为了方便对数据的存储与调用,一般是将实时数据和历史数据分开存储,例如在相关技术中,一般是将实时数据存储在MySQL数据库,将历史数据存储在HBase数据库。由于历史数据是需要永久保存的,为了提高对历史数据的存储效率以及访问便利性,一般会采用多个数据库集群的方式存储历史数据,因此,当执行业务操作时,业务客户端可以根据预先配置的各个数据库集群的集群信息从这些数据库集群中获取相关的历史数据。但是,由于需要在业务客户端内部配置各个数据库集群的集群信息,因此当这些数据库集群发生变更时,需要先断开业务客户端的业务连接,然后对业务客户端内部的配置信息进行更新,在完成对配置信息的更新后,再重启业务客户端与各个数据库集群之间连接,这个过程需要断开业务客户端的业务连接,从而影响了业务客户端的正常运行。

技术实现思路

[0003]以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
[0004]本专利技术实施例提供了一种数据访问方法及其装置、存储介质、程序产品,能够在数据库集群发生变更时降低对客户端的正常运行的影响。
[0005]一方面,本专利技术实施例提供了一种数据访问方法,包括以下步骤:
[0006]当接收到客户端发起的针对目标数据的访问请求,对所述访问请求进行解析,得到所述访问请求中携带的待访问库表名称信息和待访问数据信息;
[0007]根据所述待访问库表名称信息在预先得到的访问映射表中进行库表匹配,得到与所述待访问库表名称信息相匹配的目标库表名称;
[0008]根据所述目标库表名称确定待访问的目标库表和所述目标库表所归属的目标数据库集群;
[0009]确定所述目标数据库集群的访问接口,通过所述访问接口建立与所述目标数据库集群的访问连接;
[0010]根据所述待访问数据信息从所述目标数据库集群的所述目标库表中获取所述目标数据;
[0011]将所述目标数据发送给所述客户端。
[0012]另一方面,本专利技术实施例还提供了一种数据访问装置,包括:
[0013]信息解析模块,用于当接收到客户端发起的针对目标数据的访问请求,对所述访问请求进行解析,得到所述访问请求中携带的待访问库表名称信息和待访问数据信息;
[0014]名称匹配模块,用于根据所述待访问库表名称信息在预先得到的访问映射表中进
行库表匹配,得到与所述待访问库表名称信息相匹配的目标库表名称;
[0015]目标确定模块,用于根据所述目标库表名称确定待访问的目标库表和所述目标库表所归属的目标数据库集群;
[0016]访问连接模块,用于确定所述目标数据库集群的访问接口,通过所述访问接口建立与所述目标数据库集群的访问连接;
[0017]第一获取模块,用于根据所述待访问数据信息从所述目标数据库集群的所述目标库表中获取所述目标数据;
[0018]数据发送模块,用于将所述目标数据发送给所述客户端。
[0019]可选地,所述名称匹配模块还用于:
[0020]获取访问映射表,其中,所述访问映射表包括多个候选访问库表名称;
[0021]遍历所述访问映射表中的所有所述候选访问库表名称,将所述候选访问库表名称与所述待访问库表名称信息进行库表匹配,将与所述待访问库表名称信息相匹配的候选访问库表名称确定为目标库表名称。
[0022]可选地,所述数据访问装置还包括:
[0023]第一建立模块,用于建立与所有候选数据库集群的第一连接通道,其中,所述候选数据库集群存储有第一数据库表;
[0024]第二获取模块,用于通过所述第一连接通道获取各个所述候选数据库集群的所述第一数据库表的第一库表名称;
[0025]第一处理模块,用于对于各个所述候选数据库集群,将所述第一库表名称与所述候选数据库集群的集群名称进行名称连接,得到各个所述候选数据库集群的访问库表名称;
[0026]第二处理模块,用于构建内存映射表,将所有所述访问库表名称存储于所述内存映射表中,得到所述访问映射表。
[0027]可选地,所述第一建立模块还用于:
[0028]通过预先配置的配置文件获取所有所述候选数据库集群的第一集群信息;
[0029]根据各个所述候选数据库集群的所述第一集群信息建立与各个所述候选数据库集群的第一连接通道。
[0030]可选地,每个所述候选数据库集群均存储有多个所述第一数据库表;所述第一处理模块还用于:
[0031]获取各个所述候选数据库集群的集群名称;
[0032]对于各个所述候选数据库集群,将所述集群名称与各个所述第一数据库表的所述第一库表名称进行名称连接,得到各个所述候选数据库集群的多个访问库表名称。
[0033]可选地,所述数据访问装置还包括:
[0034]第二建立模块,用于当检测到第一数据库集群被拆分为至少两个数据库子集群,建立与所有所述数据库子集群的第二连接通道,其中,所述数据库子集群存储有第二数据库表;
[0035]第三获取模块,用于通过所述第二连接通道获取各个所述数据库子集群的所述第二数据库表的第二库表名称;
[0036]第三处理模块,用于对于各个所述数据库子集群,将所述第二库表名称与所述数
据库子集群的集群名称进行名称连接,得到各个所述数据库子集群的访问库表名称;
[0037]第一更新模块,用于根据各个所述数据库子集群的访问库表名称对所述访问映射表进行更新。
[0038]可选地,所述数据访问装置还包括:
[0039]第四获取模块,用于获取所有所述数据库子集群的第二集群信息;
[0040]第二更新模块,用于根据所有所述第二集群信息更新预先配置的配置文件,其中,所述配置文件用于保存所有数据库集群的集群信息。
[0041]可选地,每个所述数据库子集群均存储有多个所述第二数据库表;所述第三处理模块还用于:
[0042]获取各个所述数据库子集群的集群名称;
[0043]将各个所述数据库子集群的集群名称与各个所述数据库子集群中各个所述第二数据库表的所述第二库表名称进行名称连接,得到各个所述数据库子集群的多个访问库表名称。
[0044]可选地,所述数据访问装置还包括:
[0045]第三建立模块,用于当检测到新增了第二数据库集群,建立与所述第二数据库集群的第三连接通道,其中,所述第二数据库集群存储有第三数据库表;
[0046]第五获取模块,用于通过所述第三连接通道获取所述第三数据库表的第三库表名称;
[0047]第四处理模块,用于将所述第三库表名称与所述第二数据库集群的集群名称进行名称连接,得到所述第二数据库集群的访问库表名称;
[0048]第三更新模块,用于根据所述第二数据库集群的访问库表名本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据访问方法,其特征在于,包括以下步骤:当接收到客户端发起的针对目标数据的访问请求,对所述访问请求进行解析,得到所述访问请求中携带的待访问库表名称信息和待访问数据信息;根据所述待访问库表名称信息在预先得到的访问映射表中进行库表匹配,得到与所述待访问库表名称信息相匹配的目标库表名称;根据所述目标库表名称确定待访问的目标库表和所述目标库表所归属的目标数据库集群;确定所述目标数据库集群的访问接口,通过所述访问接口建立与所述目标数据库集群的访问连接;根据所述待访问数据信息从所述目标数据库集群的所述目标库表中获取所述目标数据;将所述目标数据发送给所述客户端。2.根据权利要求1所述的数据访问方法,其特征在于,所述根据所述待访问库表名称信息在预先得到的访问映射表中进行库表匹配,得到与所述待访问库表名称信息相匹配的目标库表名称,包括:获取访问映射表,其中,所述访问映射表包括多个候选访问库表名称;遍历所述访问映射表中的所有所述候选访问库表名称,将所述候选访问库表名称与所述待访问库表名称信息进行库表匹配,将与所述待访问库表名称信息相匹配的候选访问库表名称确定为目标库表名称。3.根据权利要求1所述的数据访问方法,其特征在于,所述访问映射表根据以下步骤得到:建立与所有候选数据库集群的第一连接通道,其中,所述候选数据库集群存储有第一数据库表;通过所述第一连接通道获取各个所述候选数据库集群的所述第一数据库表的第一库表名称;对于各个所述候选数据库集群,将所述第一库表名称与所述候选数据库集群的集群名称进行名称连接,得到各个所述候选数据库集群的访问库表名称;构建内存映射表,将所有所述访问库表名称存储于所述内存映射表中,得到所述访问映射表。4.根据权利要求3所述的数据访问方法,其特征在于,所述建立与所有候选数据库集群的第一连接通道,包括:通过预先配置的配置文件获取所有所述候选数据库集群的第一集群信息;根据各个所述候选数据库集群的所述第一集群信息建立与各个所述候选数据库集群的第一连接通道。5.根据权利要求3所述的数据访问方法,其特征在于,每个所述候选数据库集群均存储有多个所述第一数据库表;所述对于各个所述候选数据库集群,将所述第一库表名称与所述候选数据库集群的集群名称进行名称连接,得到各个所述候选数据库集群的访问库表名称,包括:获取各个所述候选数据库集群的集群名称;
对于各个所述候选数据库集群,将所述集群名称与各个所述第一数据库表的所述第一库表名称进行名称连接,得到各个所述候选数据库集群的多个访问库表名称。6.根据权利要求1所述的数据访问方法,其特征在于,所述数据访问方法还包括:当检测到第一数据库集群被拆分为至少两个数据库子集群,建立与所有所述数据库子集群的第二连接通道,其中,所述数据库子集群存储有第二数据库表;通过所述第二连接通道获取各个所述数据库子集群的所述第二数据库表的第二库表名称;对于各个所述数据库子集群,将所述第二库表名称与所述数据库子集群的集群名称进行名称连接,得到各个所述数据库子集群的访问库表名称;根据各个所述数据库子集群的访问库表名称对所述访问映射表进行更新。7.根据权利要求6所述的数据访问方法,其特征在于,所述数据访问方法还包括:获取所有所述数据库子集群的第二集群信息;根据所有所述第二集群信息更新预先配置的配置文件,其中,所述配置文件用于保存所有数据...

【专利技术属性】
技术研发人员:程鑫
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1