一种Lustre文件管理的方法、装置及系统与流程

文档序号:11177360阅读:405来源:国知局
一种Lustre文件管理的方法、装置及系统与流程

本发明实施例涉及高性能计算技术领域,特别是涉及一种lustre文件管理的方法、装置及系统。



背景技术:

随着科技的发展,大数据已经成为未来发展的一种趋势,对存储设备中的大量数据进行管理的文件系统的应用也越来越广泛。lustre是一个开源的分布式并行文件系统,由于lustre文件系统的体系结构具有极好的可扩展性,使其在在科学计算、石油天然气、制造业、金融等领域得到广泛部署。lustre是一个面向对象的文件系统,它由三个部件组成,包括元数据服务器(metadataservers,mdss)、对象存储服务器(objectstorageservers,osss)和客户端。

现有技术中,lustre中的文件地址信息存储在mds服务器中,而文件内容则是存储在oss服务器中,也就是当客户端需要访问lustre中相应的文件时,首先需要向mds服务器发送文件打开请求,然后mds服务器依据文件打开请求找到该文件的具体地址inode,并将其发送给客户端,然后客户端根据该地址在前往oss服务进行数据读写。也就是,现有技术中当客户端想要对文件进行写操作时,需要通过两个服务器(mds服务器和oss服务器)才能完成相应的操作,从而导致现有技术中的方法效率较低,耗时较长。

因此,如何提供一种解决上述技术问题的lustre文件管理的方法、装置及系统成为本领域的技术人员需要解决的问题。



技术实现要素:

本发明实施例的目的是提供一种lustre文件管理的方法、装置及系统,在使用过程中避免了客户端在对相应的文件进行写操作时需要通过两个服务器来完成相应的工作,从而提高了工作效率,降低了时耗。

为解决上述技术问题,本发明实施例提供了一种lustre文件管理的方法,包括:

接收客户端发送的写请求消息;

依据所述写请求消息判断所要写入的第一文件是否满足预设条件,如果是,则将所述客户端写入的所述第一文件存储至mdt存储器上。

可选的,所述预设条件为所述文件的大小不超过预设阈值。

可选的,所述方法还包括:

接收客户端发送的读请求消息;

依据所述读请求消息到所述mdt存储器中找到与所述读请求消息对应的第二文件;

将所述第二文件的文件信息返回至所述客户端,所述文件信息包括文件内容。

可选的,所述读请求消息包括文件名称。

可选的,所述文件信息还包括文件属性、文件大小或文件类型中的一种或多种的组合。

可选的,所述方法还包括:

在所述客户端写入所述第一文件时,将所述第一文件锁定,以便所述第一文件只允许所述客户端进行写操作。

可选的,如上述所述的lustre文件管理的方法,所述第一文件存储至mdt存储器上的过程具体为:

所述第一文件按照单一条带的形式存储至mdt存储器上,所述单一条带包括数据区和地址描述区。

为解决上述技术问题,本发明实施例提供了一种lustre文件管理的装置,包括:

接收模块,用于接收客户端发送的写请求消息;

判断模块,用于依据所述写请求消息判断所要写入的第一文件是否满足预设条件,如果是,则触发存储模块;

所述存储模块,用于将所述客户端写入的所述第一文件存储至mdt存储器上。

可选的,所述接收模块,还用于接收客户端发送的读请求消息;

所述装置还包括查找模块和返回模块,其中:

所述查找模块,用于依据所述读请求消息到所述mdt存储器中找到与所述读请求消息对应的第二文件;

所述返回模块,用于获取所述第二文件的文件信息,并将所述文件信息返回至所述客户端,所述文件信息包括文件内容。

为解决上述技术问题,本发明实施例提供了一种lustre文件管理的系统,包括所述客户端以及如上述所述的lustre文件管理的装置。

本发明实施例提供了一种lustre文件管理的方法、装置及系统,包括:接收客户端发送的写请求消息;依据所述写请求消息判断所要写入的第一文件是否满足预设条件,如果是,则将所述客户端写入的所述第一文件存储至mdt存储器上。

可见,本发明实施例中的mdc服务器通过客户端发送的写请求消息可以判断出客户端所要写入的第一文件是否符合预设条件,并且将符合预设条件的文件存储至mdt存储器中,即通过该mdc服务器可以直接将相应的文件存储至相应的mdt中,从而避免了客户端在对相应的文件进行写操作时需要通过两个服务器来完成相应的工作。本发明实施例在使用过程中提高了工作效率,降低了时耗。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种lustre文件管理的方法的流程示意图;

图2为本发明实施例提供的一种lustre文件管理的装置的结构示意图。

具体实施方式

本发明实施例提供了一种lustre文件管理的方法、装置及系统,在使用过程中避免了客户端在对相应的文件进行写操作时需要通过两个服务器来完成相应的工作,从而提高了工作效率,降低了时耗。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参照图1,图1为本发明实施例提供的一种lustre文件管理的方法的流程示意图。该方法包括:

s11:接收客户端发送的写请求消息;

s12:依据写请求消息判断所要写入的第一文件是否满足预设条件,如果是,则将客户端写入的第一文件存储至mdt存储器上。

可以理解的是,客户端相应写入某个文件的时候会向mds服务器发送写请求消息,则mds服务器接收到客户端发送的写请求消息后,会依据该写请求消息获得与该写请求消息对应的第一文件的相关信息,并且这些相关信息判断该第一文件是否符合相应的预设条件,当判断该第一文件符合相应的预设条件时,则可以将该第一文件的存储位置指定在mds服务器中的mdt存储器上,并且进一步将客户端写入的第一文件存储至mdt存储器中。

需要说明的是,对于不满足预设条件的文件,可以按照现有技术中的方式将该文件的文件内容存储至oss服务器中,相应的地址信息存储在mds服务器中。当然,也可以按照其他的方式进行存储,具体的本发明实施例对此不做特殊的限定,能实现本发明实施例的目的即可。

本发明实施例提供了一种lustre文件管理的方法,包括:接收客户端发送的写请求消息;依据写请求消息判断所要写入的第一文件是否满足预设条件,如果是,则将客户端写入的第一文件存储至mdt存储器上。

可见,本发明实施例中的mdc服务器通过客户端发送的写请求消息可以判断出客户端所要写入的第一文件是否符合预设条件,并且将符合预设条件的文件存储至mdt存储器中,即通过该mdc服务器可以直接将相应的文件存储至相应的mdt中,从而避免了客户端在对相应的文件进行写操作时需要通过两个服务器来完成相应的工作。本发明实施例在使用过程中提高了工作效率,降低了时耗。

本发明实施例公开了一种lustre文件管理的方法,相对于上一实施例,本实施例对技术方案做了进一步的说明和优化,具体的:

在上一实施例的s12中,预设条件可以为文件的大小不超过预设阈值。

具体的,由于现有技术中在对大量下文件进行读写操作时,需要多次从mds服务器中获取相应的文件的地址信息,每次均需要依据相应的地址信息到另一个服务器(oss服务器)中对相应的文件进行读写操作,小文件的数量越多,需要重复操作的次数就越多,在一定程度上加大了工作量,进一步使工作效率降低。因此,本发明实施例中可以优选的将文件大小不超过预设阈值的文件存储至mds服务器中的mdt存储器上,进一步提高工作效率,同时也避免在mdt存储器存储的文件过大而造成的内存不足的问题。

需要说明的是,预设阈值的大小可以为1mb,也即将文件大小不超过1mb的文件存储至mdt存储器中。当然,预设阈值的具体数值可以根据实际情况而定,本发明实施例对此不做特殊的限定,能实现本发明实施例的目的即可。

另外,本发明实施例中的预设条件不仅限于文件的大小不超过预设阈值,也可以是其他的判断条件,具体的可以根据实际情况而定,本发明实施例对此不做特殊的限定,能实现本发明实施例的目的即可。

在上述实施例的基础上,该方法还可以包括以下s13-s15:

s13:接收客户端发送的读请求消息;

s14:依据读请求消息到mdt存储器中找到与读请求消息对应的第二文件;

s15:将第二文件的文件信息返回至客户端,文件信息包括文件内容。

可以理解的是,当客户端想要对某个文件进行读操作时,则还可以向mds服务器发送相应文件的读请求消息,mds服务器可以根据该读请求消息到mdt存储器中查找与该读请求消息相对应的第二文件,获取该第二文件的文件信息,并将该第二文件的文件信息返回至客户端,当然该文件信息中包括第二文件的文件内容,以实现客户端对相应的第二文件的读操作。

当然,mds服务器接收到客户端发送的读请求消息时,可以依据该读操作请求判断相应的第二文件是否存储在mdt存储器中,如果是,则直接到mdt存储器中查找该第二文件,获取并返回第二文件的文件内容;否则,该文件可能存储在oss服务器中,此时即可按照现有技术中的方法使客户端对相应的文件进行读操作。

需要说明的是,该客户端所要读取的第二文件可以是上述已写入的第一文件,也可以不是上述第一文件(即可以为已存储至mdt存储器中的其他文件),具体可以根据实际情况而定,本发明实施例对此不做特殊的限定,能实现本发明实施例的目的即可。

还需要说明的是,客户端可以通过使用fid发送ost_read请求至mds服务器,以获得所要读取的文件(即第二文件)的文件信息及其地址信息。当然,不仅限于通过使用fid发送相应的请求,具体采用哪种形式发送请求本发明实施例对此不做特殊的限定,能实现本发明实施例的目的即可。

进一步,读请求消息包括文件名称。

具体的,该读请求消息可以包括文件名称,也就是,mds服务器可以根据相应的文件名称到mdt存储器中查找相应的第二文件。当然,该读请求消息不仅限于包括文件名称,还可以包括其他的信息,例如与文件一一对应的标识码,以便于依据相应的标识码到mdt存储器中找到相应的文件。另外,对于读请求消息中具体包括哪种信息,本申请对此不做特殊的限定,能实现本发明实施例的目的即可。更具体的,文件信息还包括文件属性、文件大小或文件类型中的一种或多种的组合。

需要说明的是,文件信息不仅限于包括上述几种,还可以包括其他类型的信息,本申请对此不做特殊的限定,能实现本发明实施例的目的即可。

可选的,该方法还可以包括:

在客户端写入第一文件时,将第一文件锁定,以便第一文件只允许客户端进行写操作。

可以理解的是,mds服务器可以在客户端对第一文件进行写入时,依据其接收到的写请求消息将相应的第一文件进行锁定,此时只允许发送该写请求消息的客户端对第一文件进行写操作,以避免其他客户端的干扰。

具体的,在实际请用中对于某一个文件可能是由多个客户端对写入的,每个个客户端可以写入该文件的特定部分,从而完成对整个文件的写入。那么,当多个客户端均请求请求对同一个(例如该第一文件)进行写操作时,mds服务器可以根据最先接收到的写请求消息,将该写请求消息对应的第一文件进行锁定,此时只允许发送该写请求消息的客户端对第一文件进行写操作,也即可以使最先发送写请求消息的客户端对该第一文件进行写操作,并且在该客户端进行写操作的同时不允许其他的客户端对该第一文件进行写操作。另外,当该客户端对第一文件的写操作完成后,还可以将该第一文件进行解锁操作,以便于其他的客户端对该第一文件进行写操作,具体谁先对该第一文件进行写操作,可以根据接收到的写请求消息的顺序进行确定。

当然,mds服务器不仅可以根据最先接收到的写请求消息确定哪个客户端可以最先对相应的文件进行写操作,也可以根据其他的条件确定哪个客户端可以最先对相应的文件进行写操作,例如可以根据各个客户端所要写入的文件部分的优先级进行确定,具体的可以根据实际情况而定,本发明实施例对此不做特殊的限定,能实现本发明实施例的目的即可。

更进一步,如上述的lustre文件管理的方法,第一文件存储至mdt存储器上的过程,具体可以为:

第一文件按照单一条带的形式存储至mdt存储器上,单一条带包括数据区和地址描述区。

需要说明的是,存储在mdt存储器上的各个文件可以均可以按照单一条带的形式进行存储,并且每个单一条带均可以包括数据区和地址描述区两个部分,其中,数据区用于存储文件的文件信息,地址描述区用于存储文件中相应的地址信息。

另外,各个单一条带的空间大小可以预先进行设定,可以对单一条带的空间进行扩充,使每个单一条带的空间大小大于64kb,且每个单一条带的空间具体大小可以根据预设阈值进行设定,例如可以将每个单一条带的空间具体大小设定为1mb。当然,不仅限于1mb,具体大小可以根据实际情况进行设定,本申请对此不做特殊的限定,能实现本发明实施例的目的即可。

请参照图2,图2为本发明实施例提供的一种lustre文件管理的装置的结构示意图,在上述实施例的基础上:

该装置包括:

接收模块1,用于接收客户端发送的写请求消息;

判断模块2,用于依据写请求消息判断所要写入的第一文件是否满足预设条件,如果是,则触发存储模块;

存储模块3,用于将客户端写入的第一文件存储至mdt存储器上。

可选的,接收模块1,还用于接收客户端发送的读请求消息;

相应的,该装置还包括查找模块和返回模块,其中:

查找模块,用于依据读请求消息到mdt存储器中找到与读请求消息对应的第二文件;

返回模块,用于获取第二文件的文件信息,并将文件信息返回至客户端,文件信息包括文件内容。

需要说明的是,本发明实施例中的mdc服务器中的判断模块可以通过客户端发送的写请求消息判断出客户端所要写入的第一文件是否符合预设条件,并且存储模块将符合预设条件的文件存储至mdt存储器中。本发明实施例在使用避免了客户端在对相应的文件进行写操作时需要通过两个服务器来完成相应的工作,提高了工作效率,降低了时耗。

另外,对于本发明实施例中所涉及到的lustre文件管理的方法的具体介绍请参照上述方法实施例,本申请在此不再赘述。

在上述实施例的基础上,本发明实施例提供了一种lustre文件管理的系统,包括客户端以及如上述的lustre文件管理的装置。

需要说明的是,本发明实施例在使用避免了客户端在对相应的文件进行写操作时需要通过两个服务器来完成相应的工作,提高了工作效率,降低了时耗。

另外,对于本发明实施例中所涉及到的lustre文件管理的方法的具体介绍请参照上述方法实施例,本申请在此不再赘述。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1