更新聚合对象的方法及装置制造方法及图纸

技术编号:15437475 阅读:209 留言:0更新日期:2017-05-26 03:32
本发明专利技术涉及文件存储领域,公开了一种更新聚合对象的方法及装置,克服了现有技术中,大量的小文件操作会带来严重的系统问题。该发明专利技术判断符合条件的源文件,将符合条件的源文件写入一个大文件形成聚合对象,再将聚合对象存入磁盘,并预定义源文件聚合所要求的源文件阈值、聚合对象阈值和时间阈值。统一更新同一聚合对象中元数据信息,减轻集群的写压力,减少客户端与交互次数,提高小文件写入效率,避免了对小文件操作频繁,一次写入,多次读取,提高磁盘空间使用率;提高顺序读性能,读取多个小文件不用频繁调用读接口,分析元数据、读数据耗时短。

Method and apparatus for updating aggregated objects

The invention relates to the field of file storage, and discloses a method and an apparatus for updating a polymeric object, which overcomes the serious system problems caused by a large number of small file operations in the prior art. The invention of judgment in accordance with the terms of the source file, write to comply with the conditions of the source file of a large file form polymerization object, then polymerization objects in the disk, and a predefined threshold, the source file aggregation source files required by the object polymerization threshold and time threshold. Unified update aggregate object metadata information at the same time, reduce the write pressure of the cluster, and reduce client interaction times, improve the efficiency of writing small files, to avoid the frequent operation of small files, write once, read many times, to improve the utilization of disk space; in order to improve reading can read multiple small files without frequent calls to read analysis of interface, metadata, data read short time.

【技术实现步骤摘要】
更新聚合对象的方法及装置
该专利技术涉及文件存储领域,特别是涉及一种更新聚合对象的方法及装置。
技术介绍
在一些应用场景中,比如社交购物网站、广电、网络视频等会产生文本、图片、音乐等,存在大量对小文件的操作。这些场景的特点是,产生的小文件数量多,大小一般在1M以下,小文件流动快,操作频繁,即一次写入,多次读取。给用户的体验小文件读写慢,磁盘空间消耗快。此外大量小文件的操作也会带来严重的系统问题,因为每个小文件存储都要调用一次Rados接口,执行一次全写流程,磁盘写数据压力大,每个小文件在磁盘存储中以固定大小,如4KB对齐,导致磁盘空间使用率低。读取多个小文件频繁调用读接口,存在分析元数据、读数据耗时长的现象。
技术实现思路
针对上述技术问题,本专利技术提供一种存储资源利用率高,运行效率较高的更新聚合对象的方法及装置。为解决以上技术问题,本专利技术采用以下技术解决方案,一种更新聚合对象的方法包括以下步骤:判断符合条件的源文件;将符合条件的源文件写入一个大文件形成聚合对象;将聚合对象存入磁盘。优选地,判断符合条件的源文件之前,还包括,预定义源文件聚合所要求的阈值。预定义源文件聚合所要求的阈值,包括预定义源文件阈值、聚合对象阈值、时间阈值。优选地,判断符合条件的源文件包括,对源文件大小的判断,如果源文件大小大于源文件阈值,则直接将其写入磁盘,如果源文件大小小于源文件阈值,则将源文件写入一个大文件形成聚合对象。优选地,将聚合对象存入磁盘之前,还包括,依据上次写盘时间,判断时间间隔是否达到时间阈值,如果达到,对聚合对象进行存储,如果未达到,再次等待所要存储的源文件。优选地,将聚合对象存入磁盘之前,还包括,对聚合对象大小的判断,如果聚合对象大小大于聚合对象阈值,则直接将其写入磁盘,如果聚合对象文件大小小于聚合对象阈值,继续向聚合对象里写入源文件。在聚合对象存入磁盘之前包括,在对象头中标记聚合对象缓存中所包含的源文件信息及位图信息,并将对象头放置在聚合对象的缓存首部。一种更新聚合对象的装置,包括以下模块:判断模块,用于判断符合条件的源文件;写入模块,用于将符合条件的源文件写入一个大文件形成聚合对象;存入模块,用于将聚合对象存入磁盘。优选地,还包括预定义模块,用于判断符合条件的源文件之前,预定义源文件聚合所要求的阈值。所述判断模块,用于对源文件大小的判断,如果源文件大小大于源文件阈值,则直接将其写入磁盘,如果源文件大小小于源文件阈值,则将源文件写入一个大文件形成聚合对象。优选地,还包括时间间隔判断模块,用于将聚合对象存入磁盘之前,依据上次写盘时间,判断时间间隔是否达到时间阈值,如果达到,对聚合对象进行存储,如果未达到,再次等待所要存储的源文件。优选地,还包括聚合对象大小判断模块,用于对聚合对象大小的判断,如果聚合对象大小大于聚合对象阈值,则直接将其写入磁盘,如果聚合对象文件大小小于聚合对象阈值,继续向聚合对象里写入源文件。写入模块,用于在聚合对象存入磁盘之前包括,在对象头中标记聚合对象缓存中所包含的源文件信息及位图信息,并将对象头放置在聚合对象的缓存首部。与现有技术相比,本专利技术一种更新聚合对象的方法及装置具有以下优点:1、通过对时间间隔是否达到时间阈值,来决定将其写入磁盘或等待所要存储的源文件,避免了聚合对象长时间不存盘,不能及时存盘而存在数据丢失的风险。2、通过对聚合对象大小的判断,来决定将其直接写入磁盘或继续向其写入源文件,避免了对小文件操作频繁,一次写入,多次读取。3、统一更新同一聚合对象中元数据信息,减轻集群的写压力,减少客户端与交互次数,提高小文件写入效率,提高磁盘空间使用率;提高顺序读性能,读取多个小文件不用频繁调用读接口,分析元数据、读数据耗时短。附图说明图1是本专利技术更新聚合对象的方法及装置中方法的流程示意图之一;图2是本专利技术更新聚合对象的方法及装置中方法的流程示意图之二;图3是本专利技术更新聚合对象的方法及装置中方法的流程示意图之三;图4是本专利技术更新聚合对象的方法及装置中方法的流程示意图之四;图5是本专利技术更新聚合对象的方法及装置中装置的模块示意图之一;图6是本专利技术更新聚合对象的方法及装置中装置的模块示意图之二;图7是本专利技术更新聚合对象的方法及装置中装置的模块示意图之三;图8是本专利技术更新聚合对象的方法及装置中装置的模块示意图之四。具体实施方式下面对本专利技术中涉及到的一些技术词语进行解释:缓存首部,英文为Cache-Control,是最重要的规则。这个字段用于指定所有缓存机制在整个请求/响应链中必须服从的指令。这些指令指定用于阻止缓存对请求或响应造成不利干扰的行为。这些指令通常覆盖默认缓存算法。缓存指令是单向的,即请求中存在一个指令并不意味着响应中将存在同一个指令。其包括a.缓存的类型,b.缓存的行为,c.客户端行为。下面结合附图和具体实施方式对本专利技术一种更新聚合对象的方法及装置作进一步说明:实施例1如图1所示,一种更新聚合对象的方法包括以下步骤:步骤S101:判断符合条件的源文件。步骤S102:将符合条件的源文件写入一个大文件形成聚合对象。步骤S103:将聚合对象存入磁盘。实施例2如图2所示,一种更新聚合对象的方法包括以下步骤:步骤S201:预定义源文件聚合所要求的阈值,包括预定义源文件阈值、聚合对象阈值。步骤S202:对聚合对象大小的判断,如果聚合对象大小大于聚合对象阈值,则进行步骤S206,直接将其写入磁盘,如果聚合对象文件大小小于聚合对象阈值,继续进行步骤S203,读取源文件,向聚合对象里写入源文件。步骤S204:判断符合条件的源文件;其包括,对源文件大小的判断,如果源文件大小大于源文件阈值,则进行步骤S206,直接将其写入磁盘,如果源文件大小小于源文件阈值,则进行步骤S205,将源文件放入聚合对象,再次进行步骤S202,依次向下循环执行。步骤S207:批量更新元数据。其中步骤S206,在聚合对象存入磁盘之前包括,在对象头中标记聚合对象缓存中所包含的源文件信息及位图信息,并将对象头放置在聚合对象的缓存首部。实施例3如图3所示,一种更新聚合对象的方法包括以下步骤:步骤S301:预定义源文件聚合所要求的阈值,包括预定义源文件阈值、时间阈值。步骤S302:读取源文件。步骤S303:判断源文件大小是否达到源文件阈值,如果源文件大小大于源文件阈值,则直接进行步骤S306,将其写入磁盘,如果源文件大小小于源文件阈值,则进行步骤S304,将符合条件的源文件写入一个大文件形成聚合对象。步骤S305:将聚合对象存入磁盘之前,还包括,依据上次写盘时间,判断时间间隔是否达到时间阈值,如果达到,进行步骤S306,对聚合对象写入磁盘进行存储,如果未达到,再次进行步骤S302,等待并读取所要存储的源文件,依次向下循环执行。步骤S307:批量更新元数据。步骤S308:更新最后写盘时间。其中步骤S306:在聚合对象存入磁盘之前包括,在对象头中标记聚合对象缓存中所包含的源文件信息及位图信息,并将对象头放置在聚合对象的缓存首部。实施例4如图4所示,一种更新聚合对象的方法包括以下步骤:步骤S401:预定义源文件聚合所要求的阈值,包括预定义源文件阈值、聚合对象阈值、时间阈值。步骤S402:依据上次写盘时间,判断时间间隔是否达到时间阈值,如果达到本文档来自技高网...
更新聚合对象的方法及装置

【技术保护点】
一种更新聚合对象的方法,其特征在于: 判断符合条件的源文件; 将符合条件的源文件写入一个大文件形成聚合对象; 将聚合对象存入磁盘。

【技术特征摘要】
1.一种更新聚合对象的方法,其特征在于:判断符合条件的源文件;将符合条件的源文件写入一个大文件形成聚合对象;将聚合对象存入磁盘。2.根据权利要求1所述的更新聚合对象的方法,其特征在于,判断符合条件的源文件之前,还包括,预定义源文件聚合所要求的阈值。3.根据权利要求2所述的更新聚合对象的方法,其特征在于,预定义源文件聚合所要求的阈值,包括预定义源文件阈值、聚合对象阈值、时间阈值。4.根据权利要求1所述的更新聚合对象的方法,其特征在于,判断符合条件的源文件包括,对源文件大小的判断,如果源文件大小大于源文件阈值,则直接将其写入磁盘,如果源文件大小小于源文件阈值,则将源文件写入一个大文件形成聚合对象。5.根据权利要求1所述的更新聚合对象的方法,其特征在于,将聚合对象存入磁盘之前,还包括,依据上次写盘时间,判断时间间隔是否达到时间阈值,如果达到,对聚合对象进行存储,如果未达到,继续等待所要存储的源文件。6.根据权利要求1所述的更新聚合对象的方法,其特征在于,将聚合对象存入磁盘之前,还包括,对聚合对象大小的判断,如果聚合对象大小大于聚合对象阈值,则直接将其写入磁盘,如果聚合对象文件大小小于聚合对象阈值,继续向聚合对象里写入源文件。7.根据权利要求1所述的更新聚合对象的方法,其特征在于,在聚合对象存入磁盘之前包括...

【专利技术属性】
技术研发人员:李旭东李长春李晓伟
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1