买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于RPC的数据库调用方法、装置、设备及存储介质_深圳市飞泉云数据服务有限公司_202410119782.4 

申请/专利权人:深圳市飞泉云数据服务有限公司

申请日:2024-01-29

公开(公告)日:2024-04-09

公开(公告)号:CN117648212B

主分类号:G06F9/54

分类号:G06F9/54;G06F16/25;G06F16/242;G06F16/27

优先权:

专利状态码:有效-授权

法律状态:2024.04.09#授权;2024.03.22#实质审查的生效;2024.03.05#公开

摘要:本申请实施例公开了一种基于RPC的数据库调用方法、装置、设备及存储介质。方法应用于数据库管理系统中的数据库代理设备,方法包括:接收调用终端发送的RPC请求;对RPC请求进行解析,提取RPC请求中的目标请求数据;根据预设的RPC接口与调用规则的对应关系,从预设的多个调用规则中确定与目标RPC接口对应的目标调用规则;根据目标调用规则以及目标请求数据生成RPC请求对应的SQL请求;基于SQL请求调用目标数据库;获取目标数据库基于SQL请求返回的响应数据,并将响应数据发送至调用终端。通过本申请实施例,数据库代理设备可以将调用者的RPC请求自动转换成SQL请求,降低了调用者调用数据库的复杂度。

主权项:1.一种基于RPC的数据库调用方法,其特征在于,所述方法应用于数据库管理系统中的数据库代理设备,所述方法包括:接收调用终端发送的RPC请求,所述RPC请求为调用者通过调用终端调用所述数据库代理设备中的目标RPC接口时生成的请求;通过反序列化处理对所述RPC请求进行解析,提取所述RPC请求中的目标请求数据;根据预设的RPC接口与调用规则的对应关系,从预设的多个调用规则中确定与所述目标RPC接口对应的目标调用规则;根据所述目标调用规则以及所述目标请求数据生成所述RPC请求对应的SQL请求,生成的SQL请求包括SELECT、INSERT、UPDATE或DELETE请求;基于所述SQL请求调用目标数据库;获取所述目标数据库基于所述SQL请求返回的响应数据,并将所述响应数据发送至所述调用终端;所述目标调用规则包括分库分表规则、数据库缓存一致性规则、连表查询规则、聚合查询规则、事务提交规则、二阶段事务提交规则、三阶段事务提交规则、分布式事务提交规则、审计规则、限流规则以及告警规则中的至少一种规则;所述接收调用终端发送的RPC请求之后,所述方法还包括:检测所述数据库代理设备对所述目标数据库的操作状态;若所述操作状态为异常状态,则将所述RPC请求存入消息队列;当所述操作状态从所述异常状态转变为正常状态时,从所述消息队列中提取所述RPC请求,并基于所述RPC请求调用所述目标数据库;所述对所述RPC请求进行解析,提取所述RPC请求中的目标请求数据,包括:若所述操作状态为正常状态,则对所述RPC请求进行解析,提取所述目标请求数据;所述目标数据库包括多个子数据库;所述基于所述SQL请求调用目标数据库,包括:分别向各所述子数据库的依赖服务发送所述SQL请求的执行请求,所述依赖服务用于对对应的子数据库进行读写操作;若接收到各所述依赖服务分别返回的同意响应,则分别向各所述依赖服务发送所述SQL请求的提交请求,以使得各所述依赖服务基于所述SQL请求的提交请求完成对应子数据库的调用;所述获取所述目标数据库基于所述SQL请求返回的响应数据之后,且在所述将所述响应数据发送至所述调用终端之前,所述方法还包括:根据预设的RPC接口与数据处理规则的对应关系,从预设的多个数据处理规则中确定与所述目标RPC接口对应的目标数据处理规则;根据所述目标数据处理规则对所述响应数据进行处理,得到处理后数据,并将所述处理后数据作为所述响应数据;所述接收调用终端发送的RPC请求之前,所述方法还包括:获取所述目标数据库的数据库配置信息;根据预设的代码生成器以及所述数据库配置信息生成多个调用代码;对各所述调用代码分别进行编译处理,得到多个所述调用规则;创建各所述调用规则分别对应的RPC接口,并构建所述RPC接口与调用规则的对应关系;所述目标请求数据包括调用者标识以及目标请求参数;所述对所述RPC请求进行解析,提取所述RPC请求中的目标请求数据之后,所述方法还包括:根据所述调用者标识以及预设的调用者标识与数据库权限的对应关系,从多个数据库中确定所述目标数据库,所述目标数据库的数据类型为关系型数据库或KV键值数据库;所述数据库代理设备中还包括多个数据库代理,所述RPC请求通过两个数据库代理完成,两个数据库代理之间通过消息队列进行连接,一个数据库代理完成所述RPC请求对应流程的一部分,另一个数据库代理完成所述RPC请求对应流程的另一部分,所述数据库代理设备通过消息队列完成分布式一致性数据库同步,以及数据库请求异常时的补偿操作,实现调用者与数据库操作完全分离。

全文数据:

权利要求:

百度查询: 深圳市飞泉云数据服务有限公司 基于RPC的数据库调用方法、装置、设备及存储介质

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。