[发明专利]一种数据数组的大容量存储方法及装置有效
| 申请号: | 201710175297.9 | 申请日: | 2017-03-22 |
| 公开(公告)号: | CN107122170B | 公开(公告)日: | 2020-08-04 |
| 发明(设计)人: | 龚宁;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
| 主分类号: | G06F8/30 | 分类号: | G06F8/30 |
| 代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 汤财宝 |
| 地址: | 430000 湖北省武汉市武汉东湖*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据 数组 容量 存储 方法 装置 | ||
本发明提供一种数据数组的大容量存储方法及装置。所述方法包括:S1,当进行数据添加时,获取当前存储数组,所述当前存储数组的长度为固定长度;检测所述当前存储数组的存储空间是否已满;S2,当所述当前存储数组的存储空间未满时,向所述当前存储数组写入待存储数据;或者当所述当前存储数组的存储空间已满时,创建新存储数组为当前存储数组,向所述当前存储数组写入待存储数据,并将所述新存储数组添加到数据存储总数组中。本发明通过当前存储数组和数据存储总数组实现了嵌套数组,从而降低了所述数据存储总数组的容量增长速度,降低了数组动态扩展时的性能消耗,可以快速的添加数据。
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种数据数组的大容量存储方法及装置。
背景技术
计算机程序开发中经常会用到数据集合,数据可能很大,需要数据以线性存储,能够快速的插入数据,并能根据索引快速获取数据,不要删除。例如性能统计中需要不停的记录采样得到的数据,数据不停的存储,同时需要根据索引顺序快速获取对应的数据。
目前,各种开发包提供的数组集合是一种动态数组,以数组实现,长度不够时,会自动扩展数组长度形成一个新的长度更大的数组,然后拷贝当前存储数组数据到该新的长度更大的数组。当数据量很大时,添加或删除数据频繁时,数组的自动扩展会非常耗时,会导致系统性能下降,效率很低。链表集合是以链表结构实现,当数据量很大时,增删较快,但获取较慢。
因此,现有的程序开发包中的数组或链表都不能很好的满足实际要求。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的数据数组的大容量存储方法及装置。
根据本发明的一个方面,提供一种数据数组的大容量存储方法,包括:
S1,当进行数据添加时,获取当前存储数组,所述当前存储数组的长度为固定长度;检测所述当前存储数组的存储空间是否已满;
S2,当所述当前存储数组的存储空间未满时,向所述当前存储数组写入待存储数据;或者
当所述当前存储数组的存储空间已满时,创建新存储数组为当前存储数组,向所述当前存储数组写入待存储数据,并将所述新存储数组添加到数据存储总数组中。
根据本发明的一个方面,还提供一种数据数组的大容量存储装置,包括:
存储空间检测模块,用于当进行数据添加时,获取当前存储数组,所述当前存储数组的长度为固定长度;检测所述当前存储数组的存储空间是否已满;
数据存储模块,用于当所述当前存储数组的存储空间未满时,向所述当前存储数组写入待存储数据;或者
当所述当前存储数组的存储空间已满时,创建新存储数组为当前存储数组,向所述当前存储数组写入待存储数据,并将所述新存储数组添加到数据存储总数组中。
本发明提出一种数据数组的大容量存储方法及装置,通过当前存储数组和数据存储总数组实现了嵌套数组,所述当前存储数组为固定长度的数组,不需要进行动态扩展;因而在所述数据存储总数组的一个元素中即可存储大量数据,从而降低了所述数据存储总数组的容量增长速度,降低了数组动态扩展时的性能消耗;增加大量数据进行存储时只会增加存储数组,每个存储数组依然可以快速的添加数据,并不会因为数组集合过大导致效率降低。
附图说明
图1为本发明实施例一种数据数组的大容量存储方法流程图;
图2为本发明实施例一种数据数组的大容量存储方法的设备的结构框图示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710175297.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





