[发明专利]一种多进程访问内存数据库系统在审
申请号: | 201510701355.8 | 申请日: | 2015-10-26 |
公开(公告)号: | CN105205178A | 公开(公告)日: | 2015-12-30 |
发明(设计)人: | 周盛宽 | 申请(专利权)人: | 北京美数信息科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100124 北京市朝阳区百子湾西*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 进程 访问 内存 数据库 系统 | ||
1.一种多进程访问内存数据库系统,其特征在于:包括应用程序进行访问操作的统一访问接口(101)、扩展数据库存储引擎的存储结构单元(102),所述存储结构单元(102)中的内存分配使用共享内存(103)分配管理,所述系统在统一访问接口(101)中对数据预先进行分片处理;
所述分片处理包括如下步骤:获得键(210),并对键计算哈希数(202),将所得哈希数对分片数量取余(203),结果即为键的分片序号,之后系统根据所述分片序号获取分片(204)。
2.根据权利要求1所述的系统,其特征在于:所述统一访问接口(101)包括插入接口(1011)、删除接口(1012)、更新接口(1013)。
3.根据权利要求1所述的系统,其特征在于:所述存储结构单元(102)至少包括固定大小的哈希(1021)、带有键描述的哈希(1022)、同一位置排序的哈希(1023)、带有过期时间的哈希(1024)。
4.根据权利要求2所述的系统,其特征在于:所述系统在执行涉及插入、删除、更新的操作时,分别通过模拟锁服务进行。
5.根据权利要求4所述的系统,其特征在于:所述系统在哈希结构的每个哈希位置通过原子操作模拟锁服务。
6.根据权利要求5所述的系统,其特征在于:所述通过原子操作模拟锁服务至少包括如下步骤:所述系统首先获取哈希位置的互斥锁,并且在获取锁服务的时候,所述系统依据原子操作函数将每个哈希位置包含的整数进行置位;
之后原子操作函数先返回数值,然后进行或运算;
若返回数值为0,则获得锁成功;若返回数值为1,则放弃时间片,并重复之前的操作,直到获得锁。
7.一种多进程访问内存数据库的方法,其特征在于:所述方法包括如下步骤:应用程序通过统一访问接口(101)进行访问操作,并在统一访问接口(101)中对数据预先进行分片处理;
所述分片处理包括如下步骤:获得键(210),并对键计算哈希数(202),将所得哈希数对分片数量取余(203),结果即为键的分片序号,之后根据所述分片序号获取分片(204);
之后通过扩展数据库存储引擎的存储结构单元(102)进行数据管理,并且所述存储结构单元(102)中的内存分配使用共享内存(103)分配管理。
8.根据权利要求7所述的方法,其特征在于:所述统一访问接口(101)包括插入接口(1011)、删除接口(1012)、更新接口(1013);所述存储结构单元(102)至少包括固定大小的哈希(1021)、带有键描述的哈希(1022)、同一位置排序的哈希(1023)、带有过期时间的哈希(1024)。
9.根据权利要求8所述的方法,其特征在于:所述存储结构单元(102)在执行涉及插入、删除、更新的操作时,分别通过模拟锁服务进行,并且在哈希结构的每个哈希位置通过原子操作模拟锁服务。
10.根据权利要求9所述的方法,其特征在于:所述通过原子操作模拟锁服务至少包括如下步骤:首先获取哈希位置的互斥锁,并且在获取锁服务的时候,依据原子操作函数将每个哈希位置包含的整数进行置位;
之后原子操作函数先返回数值,然后进行或运算;
若返回数值为0,则获得锁成功;若返回数值为1,则放弃时间片,并重复之前的操作,直到获得锁。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京美数信息科技有限公司,未经北京美数信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510701355.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种气动直通式隔膜阀
- 下一篇:HBase二级索引存储和查询系统及其查询方法