[发明专利]一种分布式数据库异步读取并处理批量数据的方法在审

专利信息
申请号: 202011246356.5 申请日: 2020-11-10
公开(公告)号: CN112269835A 公开(公告)日: 2021-01-26
发明(设计)人: 贾德星;周恒;孙思清 申请(专利权)人: 浪潮云信息技术股份公司
主分类号: G06F16/27 分类号: G06F16/27;G06F16/242;G06F16/2457
代理公司: 济南信达专利事务所有限公司 37100 代理人: 冯春连
地址: 250100 山东省济南市高*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 分布式 数据库 异步 读取 处理 批量 数据 方法
【说明书】:

发明公开一种分布式数据库异步读取并处理批量数据的方法,涉及分布式数据库技术领域。针对分布式数据库中大批量数据查询时,SQL模块与存储模块程序无法并行执行的缺陷,采用技术方案:基于GO层的SQL模块和C层的存储模块,在GO层的SQL模块创建共享内存队列;通过共享内存队列进行SQL模块和存储模块之间的数据交互:当SQL模块接收到客户端的查询请求时,通过CGO调用通知存储模块,存储模块的线程从RocksDB异步读取批量数据并写入共享内存队列,同时,通过CGO调用通知SQL模块的读取线程,SQL模块的线程异步读取共享内存队列的数据并处理,随后返回处理结果给客户端。本发明SQL模块的线程和存储模块的线程异步并发执行,可以实现RocksDB数据的异步读取和批量处理。

技术领域

本发明涉及分布式数据库技术领域,具体的说是一种分布式数据库异步读取并处理批量数据的方法。

背景技术

CockroachDB(CRDB)是一个基于Google Spanner思想构建的开源分布式数据库系统,具有NoSQL对海量数据的存储管理能力,又保持了传统数据库支持的ACID和SQL等特性。

CockroachDB采用Go语言编写程序,内部集成的RocksDB存储引擎采用的是C++语言开发,两者通过CGO框架进行混合编程,CGO是Go语言和C语言相互调用的机制,由于存在不同语言调用栈的切换,CGO的调用会带来额外的性能损耗。

CockroachDB中数据查询处理的流程如附图1所示:SQL层数据读取是通过CGO调用RocksDB查询数据,并将数据从存储引擎的C语言层全部内存复制到Go语言SQL层进行解析运算。但是,在大批量数据查询时,需要逐批读取数据并同步进行处理,而SQL模块与存储模块程序无法并行执行,另外,频繁的CGO调用也严重影响数据读取效率。

发明内容

本发明针对目前技术发展的需求和不足之处,提供一种分布式数据库异步读取并处理批量数据的方法,通过共享内存队列进行SQL模块和存储模块之间的数据交互,实现RocksDB数据的异步读取和批量处理。

本发明的一种分布式数据库异步读取并处理批量数据的方法,解决上述技术问题采用的技术方案如下:

一种分布式数据库异步读取并处理批量数据的方法,其实现内容包括:

基于GO层的SQL模块和C层的存储模块,在GO层的SQL模块创建共享内存队列;

通过共享内存队列进行SQL模块和存储模块之间的数据交互:当SQL模块接收到客户端的查询请求时,通过CGO调用通知存储模块,存储模块的线程从RocksDB异步读取批量数据并写入共享内存队列,同时,通过CGO调用通知SQL模块的读取线程,SQL模块的线程异步读取共享内存队列的数据并处理,随后返回处理结果给客户端;

交互过程中,SQL模块的线程和存储模块的线程异步并发执行,实现RocksDB数据的异步读取和批量处理。

优选的,实现RocksDB数据的异步读取和批量处理过程中,通过CGO调用,SQL模块通知存储模块开始读取数据,存储模块通知SQL模块开始处理已读取的数据。

进一步的,异步读取并处理批量数据的具体实现流程为:

(1)在SQL模块创建一个共享内存队列;

(2)在SQL模块接收到客户端的查询请求时,通过CGO调用通知存储模块读取数据,通过CGO调用将共享内存队列的地址传送给存储模块,同时启动SQL模块的线程,异步等待读取共享内存队列的数据;

(3)存储模块接收到查询请求,随后启动存储模块的线程,异步从RocksDB批量数据读取;

(4)存储模块的线程每从RocksDB读取一批数据,即写入共享内存队列;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011246356.5/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top