[发明专利]一种数据更新方法及装置有效
申请号: | 201310536126.6 | 申请日: | 2013-11-01 |
公开(公告)号: | CN104615594B | 公开(公告)日: | 2018-04-03 |
发明(设计)人: | 阳振坤;黄贵;李勇 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京博思佳知识产权代理有限公司11415 | 代理人: | 林祥 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 更新 方法 装置 | ||
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据更新方法及装置。
背景技术
目前,大多数存储系统(如数据库等)都会因其保存的数据被操作(如增加新数据、更改数据、删除数据等)而需要更新数据。
在现有技术中,存储系统一般采用归并合并的方法进行数据更新,具体如图1所示。
图1为现有技术中采用归并合并的方法进行数据更新的过程,具体包括以下步骤:
S101:预先将存储系统的磁盘中保存的所有数据按一定规则划分为各数据集合。
例如,按照数据标识进行划分,将磁盘中保存的数据标识1~10对应的数据划分为一个数据集合,数据标识11~20对应的数据划分为一个数据集合。
S102:针对划分的每个数据集合,在存储系统的内存中设置该数据集合对应的数据存储空间。
继续沿用上例,对于数据标识1~10这个数据集合,预先在内存中设置该数据集合对应的数据存储空间。
S103:如果该数据集合中的数据被操作,则将操作后的数据作为增量数据写入到该数据集合在内存中对应的数据存储空间。
继续沿用上例,当数据标识为1~10对应的数据中的任意一个或几个被操作时,并不修改磁盘中保存的相应数据,而是将修改后的数据作为增量数据写入到该数据集合在内存中对应的数据存储空间中。
S104:每隔一段时间或者当该数据集合对应的该数据存储空间中写入的数据的数据量达到一定阈值时,将该数据存储空间中写入的增量数据作为该数据集合对应的增量集合并写入到磁盘中。
由于该数据集合对应的数据存储空间是有限的,因此,当数据存储空间中写入的增量数据的数据量达到一定阈值时,就将该数据存储空间中写入的所有增量数据作为该数据集合对应的一个增量集合写入到磁盘中,并删除该数据存储空间中的数据,继续将该数据集合中被操作的数据作为增量数据写入到该存储空间中。这样,随着时间的推移,该数据集合对应的增量集合的数量会越来越多。
S105:当该数据集合对应的增量集合的数量达到一定数量时,将该数据集合以及该数据集合对应的所有增量集合中的数据读取到内存中进行合并。
假设上述一定数量设定为3,则当该数据集合对应的增量集合已经达到3个时,将该数据集合中的数据以及该数据集合对应的3个增量集合中的增量数据从磁盘中读取到内存中,并合并。在合并时,对于同一个数据标识对应的数据,以最后一次操作的该数据标识对应的数据为准。
S106:将合并后的数据集合重新写入到磁盘中。
然而,在实际应用场景中,对于一个数据集合中的数据来说,在一段时间内,该数据集合中实际被操作的数据可能很少,一般一个数据集合中只有3%的数据会被操作,而现有技术中采用归并合并进行数据更新时,无论一个数据集合中有多少数据需要更新,都要在步骤S105中把该数据集合中所有的数据从磁盘中读取到内存中进行合并,再在步骤S106中将合并后的数据重新写入磁盘中,这就会降低存储系统的磁盘读写性能。
发明内容
本申请实施例提供一种数据更新方法及装置,用以解决现有技术中的数据更新方法会降低存储系统的磁盘读写性能的问题。
本申请实施例提供的一种数据更新方法,包括:
将数据集合中的数据划分为至少两个数据块;
针对每个数据块,判断增量数据的数据标识中是否存在该数据块包含的数据的数据标识;
若是,则将该数据块包含的数据,以及数据标识与该数据块包含的数据的数据标识相同的增量数据从外部存储器中读取到内部存储器中进行合并,并将合并后的数据重新作为数据块写入外部存储器中;
否则不从外部存储器中读取该数据块包含的数据;
其中,所述外部存储器包括磁盘,所述内部存储器包括内存。
本申请实施例提供的一种数据更新装置,包括:
划分模块,用于将数据集合中的数据划分为至少两个数据块;
判断模块,用于针对所述划分模块划分的每个数据块,判断增量数据的数据标识中是否存在该数据块包含的数据的数据标识;
读取合并模块,用于在所述判断模块的判断结果为是时,将该数据块包含的数据,以及数据标识与该数据块包含的数据的数据标识相同的增量数据从外部存储器中读取到内部存储器中进行合并,并将合并后的数据重新作为数据块写入外部存储器中;在所述判断模块的判断结果为否时,不从外部存储器中读取该数据块包含的数据;其中,所述外部存储器包括磁盘,所述内部存储器包括内存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310536126.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于网页的记录系统及其方法
- 下一篇:微博热点话题自动检测方法及装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置