[发明专利]一种用于优化数据存储的方法和装置有效
申请号: | 202010054235.4 | 申请日: | 2020-01-17 |
公开(公告)号: | CN111274245B | 公开(公告)日: | 2022-07-12 |
发明(设计)人: | 王伟亮 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F11/10 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 白天明;解婷婷 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 优化 数据 存储 方法 装置 | ||
本发明实施例公开了一种用于优化数据存储的方法。该方法包括:将待写入非关系型数据库Redis的键值对中的键数据拆分为第一子键数据和第二子键数据;其中,第二子键数据是键数据末尾的第一数量的位的数据,第一子键数据是键数据除了第二子键数据以外的其他位的数据;采用哈希算法根据包括第一子键数据在内的一部分或者全部的所述键数据对键数据进行分桶;将第一子键数据作为已更新的键数据存储到Redis之中,将第二子键数据以及键值对中的值数据组成已更新的键值对,写入到散列表的哈希桶中。还公开了用于优化数据存储的装置。上述方案能够优化Redis数据库的存储性能以及对数据的处理能力。
技术领域
本发明涉及数据管理领域,尤指一种用于优化数据存储的方法和装置。
背景技术
在互联网领域,Redis(Remote dictionary server,远程字典服务器)作为一款基于内存的非常高效的非关系型数据库,因其提供非常高效的数据读写操作,并且支持string、list、set、hash等复杂的数据结构,在业界得到广泛应用。正是因为Redis具有以上的优异性能,因此Redis的一个典型的应用是作为缓存服务器存储海量数据的内存数据库,因此有限的存储空间很难存储海量的数据,限制了在使用Redis作为内存数据库时对数据的存储以及对数据的处理。
发明内容
为了解决上述技术问题,本发明提供了一种用于优化数据存储的方法和装置,其能够优化Redis数据库的存储性能以及对数据的处理能力。
为了达到本发明目的,本发明实施例提供了一种用于优化数据存储的方法,该方法包括:
将待写入非关系型数据库Redis的键值对中的键数据拆分为第一子键数据和第二子键数据;其中,第二子键数据是键数据末尾的第一数量的位的数据,第一子键数据是键数据除了第二子键数据以外的其他位的数据;
采用哈希算法根据包括第一子键数据在内的一部分或者全部的键数据对键数据进行分桶;
将第一子键数据作为已更新的键数据存储到Redis之中,将第二子键数据以及键值对中的值数据组成已更新的键值对,写入到散列表的哈希桶中。
在一个可选的实施例中,在将待写入非关系型数据库Redis的键值对中的键数据拆分为第一子键数据和第二子键数据的步骤之前,该方法还包括:
将待写入Redis的键值对的最大数据量设置为小于等于第二数值;
将待写入非关系型数据库Redis的键值对中的键数据拆分为第一子键数据和第二子键数据的步骤包括:
监测Redis中的未经压缩的键值对的数量;
当Redis中的未经压缩的键值对的数量大于第二数值的时候,将待写入Redis的键值对中的键数据拆分为第一子键数据和第二子键数据。
在一个可选的实施例中,哈希算法是:MD5算法、安全散列算法或者循环冗余校验算法。
在一个可选的实施例中,第二子键数据是采用哈希算法进行变换的;将第一子键数据作为已更新的键数据存储到Redis之中,将第二子键数据以及键值对中的值数据组成已更新的键值对,写入到散列表的哈希桶中的步骤包括:
将经变换的第二子键数据以及键值对中的值数据组成已更新的键值对,写入到散列表的哈希桶中。
为了达到上述目的,本发明实施例提供了一种用于优化数据存储的装置,该装置包括存储器和处理器;
存储器用于存储计算机可读指令;
处理器用于读取计算机可读指令,以执行如下操作:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010054235.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置