【技术实现步骤摘要】
数据库访问方法、设备、系统及存储介质
[0001]本申请涉及数据库
,尤其涉及一种数据库访问方法、设备、系统及存储介质。
技术介绍
[0002]随着信息化技术的发展,数据爆发式增长,各种模式的数据库不断被开发和利用。但数据库种类繁多给软件用户带来了不便,软件开发人员需要对每个数据库开发对应的客户端软件来与数据库服务端通信,实现对数据库的访问,以适应不同模式的数据库,学习成本较高,造成开发效率低。因此,如何提高数据库的客户端兼容性,使得用户可以利用已有数据库的客户端,访问其它数据库,成为本领域亟待解决的技术问题。
技术实现思路
[0003]本申请的多个方面提供一种数据库访问方法、设备、系统及存储介质,用以提高数据库对客户端的兼容性,提高开发效率。
[0004]本申请实施例提供一种数据库系统,包括:第一数据库的服务端和第二数据库的客户端;所述第一数据库和所述第二数据库支持的客户端协议不同;所述第一数据库的服务端包括:协议代理节点;所述协议代理节点,用于模拟所述第二数据库的服务端;以及,利用模拟出的所述第二数据库的服务端,对所述第二数据库的客户端提供的遵循所述第二数据库支持的客户端协议的第一操作请求进行协议转换,以得到遵循所述第一数据库支持的客户端协议的第二操作请求;基于所述第二操作请求对所述第一数据库进行操作,以得到所述第二操作请求对应的操作结果;并将所述操作结果提供给所述第二数据库的客户端。
[0005]本申请实施例还提供一种数据库访问方法,包括:利用第一数据库的服务端中的协议代理 ...
【技术保护点】
【技术特征摘要】
1.一种数据库访问方法,其特征在于,包括:利用第一数据库的服务端中的协议代理节点模拟第二数据库的服务端;所述第一数据库和所述第二数据库支持的客户端协议不同;利用模拟出的所述第二数据库的服务端对所述第二数据库的客户端提供的遵循所述第二数据库支持的客户端协议的第一操作请求进行协议转换,以得到遵循所述第一数据库支持的客户端协议的第二操作请求;基于所述第二操作请求对所述第一数据库进行操作,以得到所述第二操作请求对应的操作结果;将所述操作结果提供给所述第二数据库的客户端。2.根据权利要求1所述的方法,其特征在于,所述利用第一数据库的服务端中协议代理节点模拟第二数据库的服务端,包括:利用所述协议代理节点根据所述第一操作请求的待访问数据表的分区的元数据信息和所述第二数据库的客户端协议,模拟所述第二数据库的分区,以得到数据结构满足所述第二数据库支持的客户端协议的虚拟分区;利用所述协议代理节点模拟所述第二数据库的分布式协调服务节点,以管理所述第一数据库的元数据分区的地址。3.根据权利要求2所述的方法,其特征在于,所述协议代理节点为多个;所述第一操作请求包括:读操作请求和/或写操作请求;所述读操作请求和/或所述写操作请求包括:分区标识;所述利用模拟出的所述第二数据库的服务端对所述第二数据库的客户端提供的遵循所述第二数据库支持的客户端协议的第一操作请求进行协议转换,包括:利用多个协议代理节点中的第一协议代理节点获取所述第二数据库的客户端提供的读操作请求和/或写操作请求;所述第一协议代理节点为所述分区标识对应的目标虚拟分区的地址;根据所述第一数据库支持的客户端协议,对所述读操作请求和/或所述写操作请求进行协议转换,以得到满足所述第一数据库支持的客户端协议的目标操作请求,作为所述第二操作请求;所述基于所述第二操作请求对所述第一数据库进行操作,包括:利用所述第一协议代理节点基于所述目标操作请求,对所述分区标识对应的目标分区进行读和/或写操作。4.根据权利要求3所述的方法,其特征在于,所述第一数据库的分区服务节点,用于管理所述第一数据库的元数据分区;所述元数据分区是对所述第一数据库的数据表的元数据表划分得到的;所述方法还包括:利用所述多个协议代理节点中的第二协议代理节点获取所述第二数据库的客户端发起的元数据查询请求;所述元数据查询请求包括:所述读操作请求和/或所述写操作请求携带的分区标识;基于所述分区标识及所述第一数据库的分区的元数据信息,从所述多个协议代理节点中,确定所述目标虚拟分区所在的第一协议代理节点;将所述第一协议代理节点的地址作为所述目标虚拟分区的地址返回给所述第二数据
库的客户端,以供所述第二数据库的客户端将所述第一协议代理节点的地址作为所述目标虚拟分区的地址。5.根据权利要求4所述的方法,其特征在于,还包括:利用所述协议代理节点获取所述第二数据库的客户端发起的元数据分区的地址查询请求;响应于所述元数据分区的地址查询请求,确定所述第一数据库的服务端中的负载均衡节点的地址为元数据分区的地址;并将所述负载均衡节点的地址返回给所述第二数据库的客户端,以供所述第二数据库的客户端基于所述负载均衡节点的地址,向所述负载均衡节点发起所述元数据查询请求;所述方法还包括:利用所述负载均衡节点从所述多个协议代理节点中随机选择一个协议代理节点,作为所述第二协议代理节点;将所述元数据查询请求转发给所述第二协议代理节点。6.根据权利要求2所述的方法,其特征在于,还包括:利用所述协议代理节点获取所述第二数据库的客户端发起的DDL请求;所述利用模拟出的所述第二数据库的服务端,对所述第二数据库的客户端提供的遵循所述第二数据库支持的客户端协议的第一操作请求进行协议转换,包括:根据所述第一数据库支持的客户端协议,将所述DDL请求转换为满足所述第一数据库支持的客户端协议的目标DDL请求,作为所述第二操作请求;所述基于所述第二操作请求对所述第一数据库进行操作,以得到所述第二操作请求对应的操作结果,包括:利用所述协议代理节点模拟所述第二数据库的管控节点;并基于所述目标DDL请求,对所述第一数据库进行DDL操作,以得到所述DDL请求对应的操作结果。7.根据权利要求6所述的方法,其特征在于,还包括:获取所述第二数据库的客户端提供的管控节点地...
【专利技术属性】
技术研发人员:赵百强,岑苏君,汪翔,沈春辉,张为,李飞飞,
申请(专利权)人:阿里云计算有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。