[发明专利]文件存储方法和装置有效
申请号: | 201110067421.2 | 申请日: | 2011-03-21 |
公开(公告)号: | CN102096722A | 公开(公告)日: | 2011-06-15 |
发明(设计)人: | 魏明昌;张巍 | 申请(专利权)人: | 成都市华为赛门铁克科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 611731 四川省成都市高新区西部园区*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 文件 存储 方法 装置 | ||
技术领域
本发明涉及存储技术领域,尤其涉及一种文件存储方法和装置。
背景技术
操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。从系统角度来看,文件系统是对文件存储器空间(例如硬盘、磁盘或分区等)进行组织和分配,负责文件的存储并对存入的文件进行保护和检索的系统。具体地说,文件系统负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。
一个磁盘或分区在能够作为文件系统使用之前,需要初始化,并将记录数据结构写到磁盘上。这个过程称为建立文件系统。文件系统建立完成后,会将磁盘或分区的存储空间以一定的大小划分为很多个文件系统块(即磁盘空间的分块)以用于存储文件。
目前,文件系统在写入文件时,为每个文件都单独分配文件系统块,进行存储。如图1所示,大文件(即大小较大的文件)分配较多的文件系统块进行存储,而小文件(即大小较小的文件)则分配少量的文件系统块进行存储。在写入大量大小不同的文件时,分别向各自分配的文件系统块位置写入。而且,为各个文件分配的文件系统块的位置是随机的,因此,各个文件的写入位置也是没有规律的。
在一些场景,如云存储系统中,文件系统需要存储海量的大小不同的文件,文件系统在处理这些海量的大小不同的文件,尤其是海量的小文件的存储时,由于这些海量的大小不同文件的写入位置是没有规律的,因此,文件系统在写入这些海量的大小不同文件时,磁头会不断地从一个位置转移到另一个位置,磁头位置转移需要较长的时间,从而严重影响了文件系统的写入速度,使得文件系统的写入性能较差。
发明内容
本发明实施例提供一种文件存储方法和装置,可至少解决现有技术的文件系统在写入海量的大小不同的文件时,写入性能较差的问题。
一方面,提供了一种文件存储方法,包括:将多个文件中的每个文件拆分成一个或多个大小不同的文件块对象;将这多个文件拆分得到的多个文件块对象写入对应的对象存储大文件,其中,存储装置中预先创建有预定数量的对象存储大文件,这预定数量的对象存储大文件在该存储装置中占用的存储空间是连续的。
另一方面,提供了一种文件存储装置,包括:存储模块,用于存储文件,存储模块中预先创建有预定数量的对象存储大文件,这预定数量的对象存储大文件在存储模块中占用的存储空间是连续的;拆分模块,用于将多个文件中的每个文件拆分成一个或多个大小不同的文件块对象;写入模块,用于将这多个文件经拆分模块拆分得到的多个文件块对象写入对应的对象存储大文件。
本发明实施例采用拆分聚合的方式,首先将海量的大小不同的文件中的每个文件拆分成一个或多个文件块对象,然后将拆分得到的海量的文件块对象写入到预先创建在磁盘等存储装置中的对应的对象存储大文件中,且存储装置中的对象存储大文件的数量是固定的、存储空间是连续的,从而将海量的大小不同的文件聚合(合并)到这些固定数量的对象存储大文件中。由于存储装置中的对象存储大文件的数量是固定的、存储空间是连续的,从而使得海量的大小不同的文件最终可以按照相对顺序的方式写入到固定数量的对象存储大文件的存储空间中,进而提高了存储海量的大小不同的文件时文件系统的写入性能。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明一部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据现有技术的文件的存储示意图;
图2是根据本发明实施例一的文件存储方法的流程图;
图3是根据本发明实施例二的文件存储方法的具体处理流程图;
图4是根据本发明实施例三的文件块对象的写入过程的示意图;
图5是根据本发明实施例一的文件存储装置的结构示意图;
图6是根据本发明实施例二的文件存储装置的结构示意图;
图7是根据本发明实施例三的文件存储装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用于解释本发明,并不用于限定本发明。
实施例一
图2是根据本发明实施例一的文件存储方法的流程图,包括以下步骤:
步骤S202,将多个(海量的)文件(也可称为用户文件)中的每个文件拆分成一个或多个(即至少一个)大小不同的文件块对象;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都市华为赛门铁克科技有限公司,未经成都市华为赛门铁克科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110067421.2/2.html,转载请声明来源钻瓜专利网。