[发明专利]一种跨平台高效键值存储方法在审

专利信息
申请号: 202010407639.7 申请日: 2020-05-14
公开(公告)号: CN111639076A 公开(公告)日: 2020-09-08
发明(设计)人: 张向胜;陆黎川;张力;徐瑞超;张冠军;范冲冲 申请(专利权)人: 民生科技有限责任公司
主分类号: G06F16/22 分类号: G06F16/22;G06F16/24;G06F9/52
代理公司: 北京金智普华知识产权代理有限公司 11401 代理人: 巴晓艳
地址: 101300 北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 平台 高效 键值 存储 方法
【说明书】:

发明提供了一种跨平台高效键值存储方法,涉及键值存储技术领域,能够既保证数据准确性,又对内存、空间占用以及读取效率方面进行优化,具有更好的性能;该方法所述方法采用紧凑型数据结构对数据进行存储,以避免数据冗余;存储数据时直接以二进制形式写入数据库文件中,以减少文件占用空间;内存对数据进行读取时采用键值哈希索引+偏移量的方式进行缓存,实现对内存的节省;采用文件锁的方式解决多进程数据并发安全问题。本发明提供的技术方案适用于键值存储和增删改查的过程中。

【技术领域】

本发明涉及键值存储技术领域,尤其涉及一种跨平台高效键值存储方法。

【背景技术】

在程序的开发过程中,无论什么平台,比较常见的一种需求就是持久化的存储键值对。以Android端为例,持久化存储时存在几个问题:

1.初始化消耗问题:SharedPreferences在初始化时会将文件中的所有数据都遍历一遍,并加载到hashmap中,当数据量较大时,这对性能的消耗和内存的占用都是非常巨大的;

2.增删改查效率问题:以Android端为例,可以使用SharedPreferences来进行键值对的存储;但SharedPreferences是以标准的XML格式来存储key-value的,为了文件的可读性,增加了一些冗余的字符。因此,其增删改查的效率相对较低;

3.并发操作数据一致性问题:在SharedPreferences非单例的情况下,其存储数据的时候并不是线程安全的,需要在调用函数时进行一些线程安全的操作,较为繁琐;

4.进程间同步问题(Android独有):当Android应用内开启了多个进程时,存储key-value的数据同步问题更为突出,原生并没有提供任何类似问题的完整解决方案。

因此,有必要研究一种跨平台高效键值存储方法来应对现有技术的不足,以解决或减轻上述一个或多个问题。

【发明内容】

有鉴于此,本发明提供了一种跨平台高效键值存储方法,既保证了数据准确性,又在空间和时间方面进行了优化,具有更好的性能。

一方面,本发明提供一种跨平台高效键值存储方法,其特征在于,所述方法采用紧凑型数据结构对数据进行存储,以避免数据冗余;存储数据时直接以二进制形式写入数据库文件中,以减少文件占用空间;内存对数据进行读取时采用键值哈希索引+偏移量的方式进行缓存,实现对内存的节省。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,紧凑型数据结构的格式具体为:

|value|key|valueLen|keyLen|keyHash|valueHash|valueType|,

其中,valueType代表数据类型和是否为有效数据,占用8bit,keyHash表示键值哈希值,占用32bit,也用作该数据在索引中的哈希值,valueHash表示value的哈希值,占用8bit,用于保证数据的完整性,keyLen表示键值长度,占用10bit,valueLen表示值的长度,另外keyLen和valueLen表示偏移量;

每条数据之间头尾相连,没有分隔符。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,keyLen代表的长度范围为0-1023。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,对数据库文件中的数据进行插入和更新操作时,在索引列表中遍历待操作数据的键值哈希值;

如果存在相同的键值哈希值,则判定为更新逻辑,将原有数据的数据类型标记为已删除,并在数据库文件的末尾增加新的数据,生成新的内存索引;

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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