一种文件系统中管理数据的方法和装置制造方法及图纸

技术编号:18165151 阅读:20 留言:0更新日期:2018-06-09 11:12
本发明专利技术公开了一种文件系统中管理数据的方法和装置,属于数据存储技术领域。所述方法包括:格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I‑node表单;将待存储的元数据存入所述I‑node表单,并将待存储的文件数据存入所述低IOPS存储介质。采用本发明专利技术,可以提高文件系统的服务性能。

A method and device for managing data in a file system

The invention discloses a method and device for managing data in a file system, belonging to the field of data storage technology. The methods include: formatting the original file system, setting up a new file system based on the pre allocated high IOPS storage medium partition and low IOPS storage medium, setting the I node form in the high IOPS storage medium partition, storing the metadata to be stored in the I node form, and storing the file data to be stored in the low I. OPS storage medium. The service performance of the file system can be improved by adopting the invention.

【技术实现步骤摘要】
一种文件系统中管理数据的方法和装置
本专利技术涉及数据存储
,特别涉及一种文件系统中管理数据的方法和装置。
技术介绍
CDN(ContentDeliveryNetwork,内容分发网络)服务器中一般存储有大量的文件,并建立有用于管理这些文件的文件系统。文件系统中的数据可以分为文件数据和元数据,文件数据是指文件的具体内容数据,元数据是指用来描述文件属性的系统数据,诸如访问权限、文件拥有者、存储区域的分布信息以及文件系统的描述信息(如文件系统的可用空间)等。CDN服务器对于数据存储的容量需求很大,一般选用存储量大、成本低的机械硬盘来存储文件系统中的数据,具体可以基于机械硬盘建立用于管理文件的文件系统,CDN服务器存储文件时,可以将文件的元数据以及文件数据存入机械硬盘,并通过文件系统对文件进行管理操作。当接收到外界对于某个文件的文件访问请求时,CDN服务器可以通过文件系统对机械硬盘进行I/O(Input/Output,读/写)操作,从机械硬盘中获取该文件的元数据,然后通过元数据定位到文件数据的存储位置,进而可以向外界反馈机械硬盘中存储的文件数据。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题:CDN服务器往往需要并发处理大量的文件访问请求,对存储介质的IOPS(Input/OutputOperationsPerSecond,每秒读/写次数)需求越来越大,而机械硬盘的IOPS能力较差,无法实现对于文件访问请求的快速反馈,因此文件系统的服务性能较差。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种文件系统中管理数据的方法和装置。所述技术方案如下:第一方面,提供了一种文件系统中管理数据的方法,所述方法包括:格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I-node表单;将待存储的元数据存入所述I-node表单,并将待存储的文件数据存入所述低IOPS存储介质。可选的,所述方法还包括:如果所述高IOPS存储介质分区存在剩余存储空间,则将待存储的目录文件和间接块数据存入所述剩余存储空间;当所述剩余存储空间不足时,将所述待存储的目录文件和间接块数据继续存入所述低IOPS存储介质。可选的,所述方法还包括:预估所有待存储文件的平均文件大小,基于所述低IOPS存储介质的容量和所述平均文件大小,估算I-node个数;根据所述I-node个数、I-node单位容量和所述低IOPS存储介质的单位存储量,确定所述高IOPS存储介质分区的存储容量。可选的,所述将待存储的文件数据存入所述低IOPS存储介质,包括:根据文件系统的进程读写的最大并行数量,将所述低IOPS存储介质划分为大小统一的连续的多个存储区域;对于一个待存储文件,采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据。可选的,所述采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据,包括:如果所述待存储文件的文件大小大于预设数值,则采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据;如果所述待存储文件的文件大小不大于所述预设数值,则从位置游标指向的空闲存储单元开始写入所述待存储文件的文件数据,并更新位置游标指向的空闲存储单元,其中,所述位置游标指向的空闲存储单元始终为所述多个存储区域内的首个空闲存储单元。可选的,所述高IOPS存储介质为固态硬盘,所述低IOPS存储介质为机械硬盘。第二方面,提供了一种文件系统中管理数据的装置,所述装置包括:建立模块,用于格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I-node表单;存储模块,用于将待存储的元数据存入所述I-node表单,并将待存储的文件数据存入所述低IOPS存储介质。可选的,所述存储模块,还用于:如果所述高IOPS存储介质分区存在剩余存储空间,则将待存储的目录文件和间接块数据存入所述剩余存储空间;当所述剩余存储空间不足时,将所述待存储的目录文件和间接块数据继续存入所述低IOPS存储介质。可选的,所述装置还包括:估算模块,用于预估所有待存储文件的平均文件大小,基于所述低IOPS存储介质的容量和所述平均文件大小,估算I-node个数;确定模块,用于根据所述I-node个数、I-node单位容量和所述低IOPS存储介质的单位存储量,确定所述高IOPS存储介质分区的存储容量。可选的,所述存储模块,具体用于:根据文件系统的进程读写的最大并行数量,将所述低IOPS存储介质划分为大小统一的连续的多个存储区域;对于一个待存储文件,采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据。可选的,所述存储模块,具体用于:如果所述待存储文件的文件大小大于预设数值,则采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据;如果所述待存储文件的文件大小不大于所述预设数值,则从位置游标指向的空闲存储单元开始写入所述待存储文件的文件数据,并更新位置游标指向的空闲存储单元,其中,所述位置游标指向的空闲存储单元始终为所述多个存储区域内的首个空闲存储单元。可选的,所述高IOPS存储介质为固态硬盘,所述低IOPS存储介质为机械硬盘。第三方面,提供了一种文件存储设备,所述文件存储设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至6任一所述的文件系统中管理数据的方法。第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至6任一所述的文件系统中管理数据的方法。本专利技术实施例提供的技术方案带来的有益效果是:本专利技术实施例中,格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I-node表单,将待存储的元数据存入I-node表单,并将待存储的文件数据存入低IOPS存储介质。这样,利用固态硬盘等快速反馈能力强的高IOPS存储介质存储元数据,分担了文件系统中元数据访问处理给机械硬盘等低IOPS存储介质带来的IOPS压力,从而可以提高文件系统的服务性能。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种文件系统的数据存储示意图;图2是本专利技术实施例提供的一种文件系统中管理数据的本文档来自技高网...
一种文件系统中管理数据的方法和装置

【技术保护点】
一种文件系统中管理数据的方法,其特征在于,所述方法包括:格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I‑node表单;将待存储的元数据存入所述I‑node表单,并将待存储的文件数据存入所述低IOPS存储介质。

【技术特征摘要】
1.一种文件系统中管理数据的方法,其特征在于,所述方法包括:格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I-node表单;将待存储的元数据存入所述I-node表单,并将待存储的文件数据存入所述低IOPS存储介质。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果所述高IOPS存储介质分区存在剩余存储空间,则将待存储的目录文件和间接块数据存入所述剩余存储空间;当所述剩余存储空间不足时,将所述待存储的目录文件和间接块数据继续存入所述低IOPS存储介质。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:预估所有待存储文件的平均文件大小,基于所述低IOPS存储介质的容量和所述平均文件大小,估算I-node个数;根据所述I-node个数、I-node单位容量和所述低IOPS存储介质的单位存储量,确定所述高IOPS存储介质分区的存储容量。4.根据权利要求1所述的方法,其特征在于,所述将待存储的文件数据存入所述低IOPS存储介质,包括:根据文件系统的进程读写的最大并行数量,将所述低IOPS存储介质划分为大小统一的连续的多个存储区域;对于一个待存储文件,采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据。5.根据权利要求4所述的方法,其特征在于,所述采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据,包括:如果所述待存储文件的文件大小大于预设数值,则采用预设随机算法在所述多个存储区域中选择目标存储区域,并从所述目标存储区域的第一个可用存储单元开始写入所述待存储文件的文件数据;如果所述待存储文件的文件大小不大于所述预设数值,则从位置游标指向的空闲存储单元开始写入所述待存储文件的文件数据,并更新位置游标指向的空闲存储单元,其中,所述位置游标指向的空闲存储单元始终为所述多个存储区域内的首个空闲存储单元。6.根据权利要求1-5任一项所述的方法,其特征在于,所述高IOPS存储介质为固态硬盘,所述低IOPS存储介质为机械硬盘。7.一种文件系统中管理数据的装置,其特征在于,所述装置包括:建立模块,用于格式化原始文件系统,基于预先分配的高IOPS存储介质分区和低IOPS存储介质建立新文件系统,在所述高IOPS存储介质分区设置I-node表单...

【专利技术属性】
技术研发人员:林烽陈文生
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海,31

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

1