[发明专利]一种基于共享内存的本地数据库查询方法在审

专利信息
申请号: 202210614921.1 申请日: 2022-06-01
公开(公告)号: CN115203251A 公开(公告)日: 2022-10-18
发明(设计)人: 梁波;贾德星;王永炎 申请(专利权)人: 浪潮软件集团有限公司
主分类号: G06F16/2455 分类号: G06F16/2455;G06F9/54
代理公司: 济南信达专利事务所有限公司 37100 代理人: 孙园园
地址: 250100 山东*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 共享 内存 本地 数据库 查询 方法
【权利要求书】:

1.一种基于共享内存的本地数据库查询方法,其特征在于,该方法是基于共享内存的进程间通信机制,将在本地数据库进程中创建的查询迭代器对象共享到客户端进程中使用,进而实现客户端向数据库进行数据查询;具体如下:

S1、客户端查询任一时间段内的数据时,调用数据库SDK的查询API接口;

S2、客户端中的数据库SDK通过gRPC机制调用到数据库进程的查询函数;

S3、数据库进程向共享内存管理模块申请迭代器对象所需要的空间,并在申请的共享内存空间上创建共享内存迭代器;

S4、根据查询的时间范围,寻找相应的内存块对象,将内存块对象的引用技术加一;

S5、将内存块对象指针存储于迭代器的ref数组中,并通过定位算法找到查询的第一条数据的位置;

S6、将迭代器的指针通过gRPC机制返回给客户端的数据库SDK;

S7、客户端的数据库SDK接收到指针地址后,通过强转指令,将指针指向的空间转换成客户端进程中的迭代器对象;

S8、客户端使用迭代器对象,访问数据库SDK中的数据;并调用value函数获取当前记录的数值,再调用next函数定位下一条记录的位置,同时通过valid函数判断是否查询结束;

S9、客户端查询完毕后,调用结束接口,客户端的数据库SDK通过gRPC机制调用数据库进程的结束查询的函数;

S10、数据库进程将迭代器的ref数组中的对象引用计数都减一,再删除迭代器对象;

S11、返回成功。

2.根据权利要求1所述的基于共享内存的本地数据库查询方法,其特征在于,客户端向数据库进行数据查询前,执行如下内容:

创建进程间共享内存:通过分配共享内存空间,将多个进程中共享内存设置成相同的起始地址,使得共享内存中的指针在进程间能够直接使用,为进程间共享对象创造基础;

数据库进程管理共享内存:数据库进程用于管理维护整个共享内存中的数据,客户端进程用于读取内存数据;数据库进程中设置共享内存管理模块,共享内存管理模块用于提供申请空间和释放空间的函数。

3.根据权利要求2所述的基于共享内存的本地数据库查询方法,其特征在于,创建进程间共享内存具体如下:

在数据库进程和客户端进程启动时,创建加载共享内存,并且设置相同的共享内存的起始地址;

将客户端进程的共享内存映射区的起始地址与数据库进程的共享内存映射区的起始地址配置成相同的起始地址;

设置完成后,在共享内存中创建指向共享内存中存储的任一变量的指针,该指针在不同进程中都能够正确解析并能读取出指针指向的变量。

4.根据权利要求1或2所述的基于共享内存的本地数据库查询方法,其特征在于,所述共享内存管理模块还用于管理共享内存分配出的一个整块连续空间,并提供共享内存连续区域中申请和释放任意内存大小空间的接口。

5.根据权利要求4所述的基于共享内存的本地数据库查询方法,其特征在于,所述共享内存管理模块的内存管理方式采用定长内存管理。

6.根据权利要求5所述的基于共享内存的本地数据库查询方法,其特征在于,所述共享内存管理模块还具有如下功能:

①、共享内存管理模块初始化:共享内存管理模块将整个共享内存空间按照大小划分成固定大小的内存块,将内存块首地址放入可使用队列中;

②、向共享内存管理模块申请空间:共享内存管理模块提供内存申请分配接口Allocate8K,调用接口Allocate8K,共享内存管理模块取出可使用队列头部内存块的首地址,返出去;

③、释放共享内存管理模块申请的空间:共享内存管理模块提供内存释放接口Release,共享内存管理模块将传入的内存块首地址放入可使用队列末尾。

7.根据权利要求6所述的基于共享内存的本地数据库查询方法,其特征在于,所述共享内存空间用于共享数据和共享对象;

数据库进程将查询需要的数据以及对象存储在共享内存空间中,共享内存空间按照正常内存的使用方式创建相互关联的类对象以及存储数据的数组空间。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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