本发明专利技术提供了一种磁盘坏块隔离方法及系统,包括:数据服务器读取一个底层的对象文件时如果发现其对应的磁盘扇区损坏,则将该对象文件移动到一个特定的坏块目录中,然后由元数据服务器主导,借助分布式文件系统中的冗余数据,在该分布式文件系统的其他位置重建该对象文件。由于数据服务器将包含坏块的对象文件移动到坏块目录,而不是直接删除,于是该坏块不会被再次使用,从而避免了磁盘控制器将坏块重映射到磁盘保留区,避免了坏块对磁盘性能和整个分布式文件系统性能的影响。
【技术实现步骤摘要】
本专利技术涉及磁盘存储
,尤其涉及磁盘坏块隔离方法及系统。
技术介绍
图1示出了分布式文件系统的结构示意图,从中可见,分布式文件系统一般包含客户端,元数据服务器和数据服务器,客户端负责文件数据访问接口的制定,元数据服务器处理文件的布局及属性,数据服务器存储文件的数据内容。对于分布式文件系统,可以存储海量数据是其最主要的特征,于是分布式文件系统通常配置了较多的数据服务器,数据服务器上通常配置了大量的磁盘,于是磁盘中出现坏块的概率也相应的提尚。磁盘的实际扇区数通常比磁盘的容量要大,磁盘控制器将磁盘内道的一些扇区保留下来作为磁盘保留区。当读操作访问一个磁盘扇区时,如果发现该扇区损坏,则该读操作失败,磁盘控制器将该扇区置为pending sector(等待重映射的扇区),后续如果有写操作访问该扇区,则磁盘磁盘控制器将该扇区映射到磁盘保留区。磁盘控制器的这种重映射操作可以降低写操作失败的概率,但是却破坏了数据在磁盘物理位置上的连续性,增加了磁盘寻道的开销,降低了磁盘和分布式文件系统的性能。此外,由于磁盘保留区位于访问速度较低的内道,于是对磁盘和分布式文件系统的影响又被进一步放大。
技术实现思路
本专利技术实施例提出了解决分布式文件系统中磁盘重映射操作会导致磁盘性能降低的问题的技术方案。在一个方面,本专利技术实施例提供了一种磁盘坏块隔离方法,用于包括数据服务器和元数据服务器的分布式文件系统中,包括:数据服务器读取底层对象文件时若发现存储所述对象文件的磁盘扇区已损坏,则将所述对象文件移动到特定的坏块目录中;所述元数据服务器利用所述对象文件对应的冗余数据,在所述分布式文件系统的其他位置重建所述对象文件。在另一个方面,本专利技术实施例提供了一种磁盘坏块隔离系统,用于包括数据服务器和元数据服务器的分布式文件系统中,包括:对象文件读取模块,设置在所述数据服务器中,用于在读取底层对象文件时若发现存储所述对象文件的磁盘扇区已损坏,则将所述对象文件移动到特定的坏块目录中;对象文件重建模块,设置在所述元数据服务器中,用于利用所述对象文件对应的冗余数据,在所述分布式文件系统的其他位置重建所述对象文件。有益效果如下:当前分布式文件系统中磁盘重映射操作会导致磁盘性能降低的问题,由于本专利技术实施例中,数据服务器读取一个底层的对象文件时如果发现其对应的磁盘扇区损坏,则将该对象文件移动到一个特定的坏块目录中,然后由元数据服务器主导,借助分布式文件系统中的冗余数据,在该分布式文件系统的其他位置重建该对象文件。由于数据服务器将包含坏块的对象文件移动到坏块目录,而不是直接删除,于是该坏块不会被再次使用,从而避免了磁盘控制器将坏块重映射到磁盘保留区,避免了坏块对磁盘性能和整个分布式文件系统性能的影响。【附图说明】下面将参照附图描述本专利技术的具体实施例,其中:图1示出了分布式文件系统的结构示意图;图2示出了本专利技术实施例中磁盘坏块隔离方法的流程示意图;图3示出了本专利技术实施例中磁盘坏块隔离系统的结构示意图。【具体实施方式】为了使本专利技术的技术方案及优点更加清楚明白,以下结合附图对本专利技术的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本专利技术的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。专利技术人在专利技术过程中注意到:分布式文件系统中,磁盘的实际扇区数通常比磁盘的容量要大,磁盘控制器将磁盘内道的一些扇区保留下来作为磁盘保留区。当读操作访问一个磁盘扇区时,如果发现该扇区损坏,则该读操作失败,磁盘控制器将该扇区置为pending sector(等待重映射的扇区),后续如果有写操作访问该扇区,则磁盘磁盘控制器将该扇区映射到磁盘保留区。磁盘控制器的这种重映射操作可以降低写操作失败的概率,但是却破坏了数据在磁盘物理位置上的连续性,增加了磁盘寻道的开销,降低了磁盘和分布式文件系统的性能。此外,由于磁盘保留区位于访问速度较低的内道,于是对磁盘和分布式文件系统的影响又被进一步放大。针对上述不足,本专利技术实施例提出了一种磁盘坏块隔离方法,用于包括数据服务器和元数据服务器的分布式文件系统中,下面进行说明。图2示出了本专利技术实施例中磁盘坏块隔离方法的流程示意图,如图所示,包括:步骤201、客户端向数据服务器发送读操作请求。步骤202、数据服务器解析客户端的请求,读取底层对象文件,若在读取底层对象文件时若发现存储该对象文件的磁盘扇区已损坏(例如:返回ΕΙ0,但是磁盘状态正常),则将该对象文件移动到数据服务器下的一个特定的坏块目录中;数据服务器将对象文件移动到特定的坏块目录后,不再对所述已损坏的磁盘扇区进行修改操作,从而避免了磁盘控制器将已损坏的磁盘扇区重新映射到磁盘保留区。步骤203、数据服务器向元数据服务器登记存储该对象文件的磁盘扇区已损坏。步骤204、元数据服务器向存储该对象文件对应的冗余数据的数据服务器发送数据获取请求,利用该对象文件对应的冗余数据,如副本形式的冗余数据或纠删码(Erasurecode)形式的冗余数据,在分布式文件系统的其他位置重建该对象文件。本步骤中,若该对象文件对应的冗余数据为副本形式的冗余数据,则通过将副本拷贝到分布式系统的其他位置重建该对象文件;若该对象文件对应的冗余数据为纠删码形式的冗余数据,则通过所述对象文件的冗余数据重建已损坏的部分数据。相对于传统的做法,本专利技术中,数据服务器读取一个底层的对象文件时如果发现其对应的磁盘扇区损坏,则将该对象文件移动到一个特定的坏块目录中,并向元数据服务器报送坏块对象信息,然后由元数据服务器主导,借助分布式文件系统中的冗余数据,在该分布式文件系统的其他位置重建该对象文件。由于数据当前第1页1 2 本文档来自技高网...
【技术保护点】
一种磁盘坏块隔离方法,用于包括数据服务器和元数据服务器的分布式文件系统中,其特征在于,包括:数据服务器读取底层对象文件时若发现存储所述对象文件的磁盘扇区已损坏,则将所述对象文件移动到特定的坏块目录中;所述元数据服务器利用所述对象文件对应的冗余数据,在所述分布式文件系统的其他位置重建所述对象文件。
【技术特征摘要】
【专利技术属性】
技术研发人员:杨鹏,康撼宇,姜国梁,季旻,郭照斌,
申请(专利权)人:曙光信息产业北京有限公司,曙光信息产业股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。