文件存储系统和文件存储方法

文档序号:6552369阅读:136来源:国知局
文件存储系统和文件存储方法
【专利摘要】本发明提供了一种文件存储系统,包括:应用服务器,用于接收客户端发送的请求,并根据所述请求以及每个文件服务器的负载状态将所述请求发送至多个所述文件服务器中的一个文件服务器;多个所述文件服务器,根据来自所述应用服务器的所述请求,对与所述请求相对应的文件进行处理得到处理后文件,并将处理后文件发送至文件管理器;所述文件管理器,接收所述处理后文件,根据所述处理后文件的属性以及多个分布式存储系统的属性,选择一个分布式存储系统以对所述处理后文件进行存储;所述多个分布式存储系统。相应地,本发明还提出了一种文件存储方法。通过本发明的技术方案,可以实现请求和存储的负载均衡,满足大容量文件的高并发存储。
【专利说明】文件存储系统和文件存储方法

【技术领域】
[0001] 本发明涉及数据存储【技术领域】,具体而言,涉及一种文件存储系统和一种文件存 储方法。

【背景技术】
[0002] 目前,随着移动互联网和社区等的快速发展,大量的文件、数据随之而来。这些文 件多以文档或图片的形式存在,每个文件本身的大小并不大,但文件总体数量却十分庞大。 目前,这些大容量的文件一般只存储在本地磁盘,但是,简单的磁盘存储在存储容量、存储 效率、容灾等方面均有一定的限制,已经不能满足用户对文件的存储需求了。
[0003] 因此,如何合理地存储这些大容量的文件,成为目前亟待解决的问题。


【发明内容】

[0004] 本发明正是基于上述技术问题,提出了一种新的技术方案,可以实现请求和存储 的负载均衡,满足大容量文件的高并发存储。
[0005] 有鉴于此,本发明提出了一种文件存储系统,包括:应用服务器、多个文件服务器、 文件管理器以及多个分布式存储系统,其中所述应用服务器,用于接收客户端发送的请求, 并根据所述请求以及每个所述文件服务器的负载状态,将所述请求发送至多个所述文件服 务器中的一个文件服务器;多个所述文件服务器,分别接收来自所述应用服务器的请求,根 据所述请求,对与所述请求相对应的文件进行处理得到处理后文件,并将所述处理后文件 发送至所述文件管理器;所述文件管理器,接收来自多个所述文件服务器的所述处理后文 件,根据所述处理后文件的属性以及多个所述分布式存储系统的属性,为所述处理后文件 选择一个分布式存储系统以对所述处理后文件进行存储。
[0006] 在该技术方案中,应用服务器对客户端发送的请求进行负载均衡,根据当前各个 文件服务器的使用情况,选择出合适的文件服务器处理用户的请求对应的文件,比如,根据 当前各个可用的文件服务器的端口的使用情况,选择当前相对空闲的文件服务器,以处理 用户请求对应的文件。文件管理器用于调度文件的存储操作,其在接收到处理后的文件后, 会根据该处理后的文件的属性和各个分布式存储系统的属性选择最合适的分布式存储系 统对该处理后的文件进行存储,提升了系统的效率。另外,在上述技术方案中,可以依次处 理单一的请求,也可以同时处理多个请求,因此,既可以实现请求和存储的负载均衡,也能 满足大容量文件的高并发存储。
[0007] 在上述技术方案中,优选地,每个所述分布式存储系统具有多个存储服务器,每个 所述存储服务器之间相互备份。
[0008] 在该技术方案中,每个分布式存储系统中的多个存储服务器之间是相互备份的, 这大大提升了文件存储的安全性。
[0009] 在上述技术方案中,优选地,所述分布式存储系统的数量根据接收到的文件的大 小动态改变。
[0010] 在该技术方案中,当分布式存储系统的容量不足以存储接收到的文件时,可以动 态增加分布式存储系统的数量,以增加存储容量,实现动态容量扩充。
[0011] 在上述技术方案中,优选地,所述文件服务器对所述文件的处理包括:管理文件的 元数据信息、文件的存储格式,以及对所述文件进行压缩存储。
[0012] 在该技术方案中,文件服务器是本系统的核心模块,其主要对上传的文件进行处 理,其中,管理文件的元数据可以方便在存储后对文件进行检索,管理文件的存储格式可以 根据文件的存储格式为文件配置到合适的分布式存储系统,以实现负载均衡,压缩上传的 文件可以减小文件的大小,节省存储容量。
[0013] 在上述技术方案中,优选地,所述处理后文件的属性包括:所述处理后文件的大小 以及请求链接数;以及所述分布式存储系统的属性包括:剩余磁盘空间大小。
[0014] 在该技术方案中,文件管理器可以根据处理后文件的大小和/或请求链接数以及 多个分布式存储系统的剩余磁盘空间大小,为处理后文件选择最合适的分布式存储系统。 比如,当处理后的文件过大且其请求链接数较多时,选择剩余磁盘空间较大的分布式存储 系统存储该处理后的文件。这样,可以实现请求和存储的负载均衡,提升系统的存储效率。
[0015] 根据本发明的另一方面,还提供了一种文件存储方法,包括:应用服务器接收客户 端发送的请求,并根据所述请求以及多个文件服务器中每个所述文件服务器的负载状态, 将所述请求发送至多个文件服务器中的一个文件服务器;所述一个文件服务器接收到来自 所述应用服务器的请求之后,根据所述请求,对与所述请求相对应的文件进行处理得到处 理后文件,并将所述处理后文件发送至文件管理器;所述文件管理器接收到来自多个所述 文件服务器的所述处理后文件之后,根据所述处理后文件的属性以及多个分布式存储系统 的属性,为所述处理后文件选择一个分布式存储系统以对所述处理后文件进行存储。
[0016] 在该技术方案中,应用服务器对客户端发送的请求进行负载均衡,根据当前各个 文件服务器的使用情况,选择出合适的文件服务器处理用户的请求对应的文件,比如,根据 当前各个可用的文件服务器的端口的使用情况,选择当前相对空闲的文件服务器,以处理 用户请求对应的文件。文件管理器用于调度文件的存储操作,其在接收到处理后的文件后, 会根据该处理后的文件的属性和各个分布式存储系统的属性选择最合适的分布式存储系 统对该处理后的文件进行存储,提升了系统的效率。另外,在上述技术方案中,可以依次处 理单一的请求,也可以同时处理多个请求,因此,既可以实现请求和存储的负载均衡,也能 满足大容量文件的高并发存储。
[0017] 在上述技术方案中,优选地,位于每个所述分布式存储系统上的多个存储服务器 中的每个所述存储服务器相互备份。
[0018] 在该技术方案中,每个分布式存储系统中的多个存储服务器之间是相互备份的, 这大大提升了文件存储的安全性。
[0019] 在上述技术方案中,优选地,根据接收到的文件的大小动态改变所述分布式存储 系统的数量。
[0020] 在该技术方案中,当分布式存储系统的容量不足以存储接收到的文件时,可以动 态增加分布式存储系统的数量,以增加存储容量,实现动态容量扩充。
[0021] 在上述技术方案中,优选地,所述文件服务器管理所述文件的元数据信息、文件的 存储格式,以及对所述文件进行压缩存储。
[0022] 在该技术方案中,文件服务器是本系统的核心模块,其主要对上传的文件进行管 理,其中,管理文件的元数据可以方便在存储后对文件进行检索,管理文件的存储格式可以 根据文件的存储格式为文件配置到合适的分布式存储系统,以实现负载均衡,压缩上传的 文件可以减小文件的大小,节省存储容量。
[0023] 在上述技术方案中,优选地,所述处理后文件的属性包括:所述处理后文件的大小 以及请求链接数;以及所述分布式存储系统的属性包括:剩余磁盘空间大小。
[0024] 在该技术方案中,文件管理器可以根据处理后文件的大小和/或请求链接数以及 多个分布式存储系统的剩余磁盘空间大小,为处理后文件选择最合适的分布式存储系统。 比如,当处理后的文件过大且其请求链接数较多时,选择剩余磁盘空间较大的分布式存储 系统存储该处理后的文件。这样,可以实现请求和存储的负载均衡,提升系统的存储效率。
[0025] 通过以上技术方案,可以实现请求和存储的负载均衡,提升系统存储的效率和安 全性,满足大容量文件的高并发存储。

【专利附图】

【附图说明】
[0026] 图1示出了根据本发明的实施例的文件存储系统的框图;
[0027] 图2示出了根据本发明的实施例的文件存储方法的流程图;
[0028] 图3示出了根据本发明的一个实施例的文件存储系统的示意框图。

【具体实施方式】
[0029] 为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实 施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施 例及实施例中的特征可以相互组合。
[0030] 在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可 以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开 的具体实施例的限制。
[0031] 图1示出了根据本发明的实施例的文件存储系统的框图。
[0032] 如图1所示,根据本发明的实施例的文件存储系统100,包括:应用服务器102, 用于接收客户端发送的请求,并根据请求以及每个文件服务器的负载状态,将请求发送至 多个文件服务器中的一个文件服务器;多个文件服务器:文件服务器1042、文件服务器 1044、…、文件服务器104N,分别接收来自应用服务器的请求,根据请求,对与请求相对应的 文件进行处理得到处理后文件,并将处理后文件发送至文件管理器106 ;文件管理器106, 接收来自多个文件服务器的处理后文件,根据处理后文件的属性以及多个分布式存储系统 的属性,为处理后文件选择一个分布式存储系统以对处理后文件进行存储;以及多个分布 式存储系统:分布式存储系统1082、分布式存储系统1084、…、分布式存储系统108N。
[0033] 在该技术方案中,应用服务器102对客户端发送的请求进行负载均衡,根据当前 各个文件服务器的使用情况,选择出合适的文件服务器处理用户的请求对应的文件,比如, 根据当前各个可用的文件服务器的端口的使用情况,选择当前相对空闲的文件服务器,以 处理用户请求对应的文件。文件管理器106用于调度文件的存储操作,其在接收到处理后 的文件后,会根据该处理后的文件的属性和各个分布式存储系统的属性选择最合适的分布 式存储系统对该处理后的文件进行存储,提升了系统的效率。另外,在上述技术方案中,可 以依次处理单一的请求,也可以同时处理多个请求,因此,既可以实现请求和存储的负载均 衡,也能满足大容量文件的高并发存储。
[0034] 在上述技术方案中,优选地,每个分布式存储系统具有多个存储服务器,每个存储 服务器之间相互备份。
[0035] 在该技术方案中,每个分布式存储系统中的多个存储服务器之间是相互备份的, 这大大提升了文件存储的安全性。
[0036] 在上述技术方案中,优选地,分布式存储系统的数量根据接收到的文件的大小动 态改变。
[0037] 在该技术方案中,当分布式存储系统的容量不足以存储接收到的文件时,可以动 态增加分布式存储系统的数量,以增加存储容量,实现动态容量扩充。
[0038] 在上述技术方案中,优选地,文件服务器对文件的处理包括:管理文件的元数据信 息、文件的存储格式,以及对文件进行压缩存储。
[0039] 在该技术方案中,文件服务器是本系统的核心模块,其主要对上传的文件进行处 理,其中,管理文件的元数据可以方便在存储后对文件进行检索,管理文件的存储格式可以 根据文件的存储格式为文件配置到合适的分布式存储系统,以实现负载均衡,压缩上传的 文件可以减小文件的大小,节省存储容量。
[0040] 在上述技术方案中,优选地,处理后文件的属性包括:处理后文件的大小以及请求 链接数;以及分布式存储系统的属性包括:剩余磁盘空间大小。
[0041] 在该技术方案中,文件管理器可以根据处理后文件的大小和/或请求链接数以及 多个分布式存储系统的剩余磁盘空间大小,为处理后文件选择最合适的分布式存储系统。 比如,当处理后的文件过大且其请求链接数较多时,选择剩余磁盘空间较大的分布式存储 系统存储该处理后的文件。这样,可以实现请求和存储的负载均衡,提升系统的存储效率。
[0042] 图2示出了根据本发明的实施例的文件存储方法的流程图。
[0043] 如图2所示,根据本发明的实施例的文件存储方法,包括以下步骤:
[0044] 步骤202,应用服务器接收客户端发送的请求,并根据请求以及多个文件服务器中 每个文件服务器的负载状态,将请求发送至多个文件服务器中的一个文件服务器。
[0045] 步骤204, 一个文件服务器接收到来自应用服务器的请求之后,根据请求,对与请 求相对应的文件进行处理得到处理后文件,并将处理后文件发送至文件管理器。
[0046] 步骤206,文件管理器接收到来自多个文件服务器的处理后文件之后,根据处理后 文件的属性以及多个分布式存储系统的属性,为处理后文件选择一个分布式存储系统以对 处理后文件进行存储。
[0047] 在该技术方案中,应用服务器对客户端发送的请求进行负载均衡,根据当前各个 文件服务器的使用情况,选择出合适的文件服务器处理用户的请求对应的文件,比如,根据 当前各个可用的文件服务器的端口的使用情况,选择当前相对空闲的文件服务器,以处理 用户请求对应的文件。文件管理器用于调度文件的存储操作,其在接收到处理后的文件后, 会根据该处理后的文件的属性和各个分布式存储系统的属性选择最合适的分布式存储系 统对该处理后的文件进行存储,提升了系统的效率。另外,在上述技术方案中,可以依次处 理单一的请求,也可以同时处理多个请求,因此,既可以实现请求和存储的负载均衡,也能 满足大容量文件的高并发存储。
[0048] 在上述技术方案中,优选地,位于每个分布式存储系统上的多个存储服务器中的 每个存储服务器相互备份。
[0049] 在该技术方案中,每个分布式存储系统中的多个存储服务器之间是相互备份的, 这大大提升了文件存储的安全性。
[0050] 在上述技术方案中,优选地,根据接收到的文件的大小动态改变分布式存储系统 的数量。
[0051] 在该技术方案中,当分布式存储系统的容量不足以存储接收到的文件时,可以动 态增加分布式存储系统的数量,以增加存储容量,实现动态容量扩充。
[0052] 在上述技术方案中,优选地,文件服务器管理文件的元数据信息、文件的存储格 式,以及对文件进行压缩存储。
[0053] 在该技术方案中,文件服务器是本系统的核心模块,其主要对上传的文件进行管 理,其中,管理文件的元数据可以方便在存储后对文件进行检索,管理文件的存储格式可以 根据文件的存储格式为文件配置到合适的分布式存储系统,以实现负载均衡,压缩上传的 文件可以减小文件的大小,节省存储容量。
[0054] 在上述技术方案中,优选地,处理后文件的属性包括:处理后文件的大小以及请求 链接数;以及分布式存储系统的属性包括:剩余磁盘空间大小。
[0055] 在该技术方案中,文件管理器可以根据处理后文件的大小和/或请求链接数以及 多个分布式存储系统的剩余磁盘空间大小,为处理后文件选择最合适的分布式存储系统。 比如,当处理后的文件过大且其请求链接数较多时,选择剩余磁盘空间较大的分布式存储 系统存储该处理后的文件。这样,可以实现请求和存储的负载均衡,提升系统的存储效率。
[0056] 图3示出了根据本发明的一个实施例的文件存储系统的示意框图。
[0057] 如图3所示,根据本发明的一个实施例的文件存储系统300,包括:客户端 Client302a、Client302b、…、Client302N,应用服务器 Apache Server304,文件服务器 FsServer306a、FsServer306b、…、FsServer306N,文件管理器 DFS Manager308,以及分布 式存储系统 DFS310a、DFS310b、…、DFS310N。
[0058] Client3〇2a、Client3〇2b、…、Client 3〇2N 向 Apache ServerfO4 发送文件存储请 求。其中,Client302a、Client302b、...、Client302N为该装置的使用者和文件的提供者。
[0059] 应用服务器Apache Server304根据接收到的多个文件存储请求以及 FsServer306a、FsServer306b、…、FsServer306N中每一个的负载状态,将多个请求中的 每个请求发送至FsServer306a、FsServer306b、…、FsServer306N中的一个。应用服务器 Apache Server304 对 Client302a、Client302b、...、Client302N 发送的过来的上传和 / 或 下载的请求进行一次负载均衡,根据当前FsServer306的使用情况,选择合适的FsServer 处理用户的请求。比如,根据当前各个可用的FsServer的端口的使用情况,选择当前相对 空闲的FsServer,以处理用户请求对应的文件。另外,同时处理多个客户端发出的请求可以 实现大容量文件的高并发存储。
[0060] FsServer306a、FsServer306b、…、FsServer306N 根据各自接收到的文件存储请 求,对与该存储请求相对应的文件进行处理得到处理后文件,并将处理后文件发送至DFS Manager308。FsServer306是本系统的核心模块,其主要对上传的文件进行处理,包括管理 文件的元数据信息、文件的存储格式,以及对文件进行压缩存储。其中,管理文件的元数据 可以方便在存储后对文件进行检索,管理文件的存储格式可以根据文件的存储格式为文件 配置到合适的分布式存储系统,以实现负载均衡,压缩上传的文件可以减小文件的大小,节 省存储容量。
[0061] DFS Manager308接收到来自FsServer306的处理后文件之后,根据处理后文件的 大小以及请求链接数以及DFS310a、DFS310b、"^DFSSION的剩余磁盘空间大小,为处理后 文件选择一个合适的DFS310以对处理后文件进行存储,当文件存储成功后,提取出文件标 识符,供下次请求下载该文件时调用。比如,当处理后的文件过大且其请求链接数较多时, 选择剩余磁盘空间较大的DFS310存储该处理后的文件。这样,可以实现请求和存储的负载 均衡,提升系统的存储效率。
[0062] 另外,在上述技术方案中,优选地,每个DFS310具有多个存储服务器,每个存储服 务器之间相互备份,可以大大提升文件存储的安全性。
[0063] 在上述技术方案中,优选地,DFS310的数量根据接收到的文件的大小动态改变。 在该技术方案中,当DFS310的容量不足以存储接收到的文件时,可以动态增加 DFS310的数 量,以增加存储容量,实现动态容量扩充。
[0064] 以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,可以实现 请求和存储的负载均衡,提升系统存储的效率、安全性和稳定性,实现大容量文件的高并发 存储。
[〇〇65] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1. 一种文件存储系统,其特征在于,包括:应用服务器、多个文件服务器、文件管理器 以及多个分布式存储系统,其中 所述应用服务器,用于接收客户端发送的请求,并根据所述请求以及每个所述文件服 务器的负载状态,将所述请求发送至多个所述文件服务器中的一个文件服务器; 多个所述文件服务器,分别接收来自所述应用服务器的请求,根据所述请求,对与所 述请求相对应的文件进行处理得到处理后文件,并将所述处理后文件发送至所述文件管理 器; 所述文件管理器,接收来自多个所述文件服务器的所述处理后文件,根据所述处理后 文件的属性以及多个所述分布式存储系统的属性,为所述处理后文件选择一个分布式存储 系统以对所述处理后文件进行存储。
2. 根据权利要求1所述的文件存储系统,其特征在于,每个所述分布式存储系统具有 多个存储服务器,每个所述存储服务器之间相互备份。
3. 根据权利要求1或2所述的文件存储系统,其特征在于,所述分布式存储系统的数量 根据接收到的文件的大小动态改变。
4. 根据权利要求1或2所述的文件存储系统,其特征在于,所述文件服务器对所述文件 的处理包括:管理文件的元数据信息、文件的存储格式,以及对所述文件进行压缩存储。
5. 根据权利要求1或2所述的文件存储系统,其特征在于,所述处理后文件的属性包 括:所述处理后文件的大小以及请求链接数;以及所述分布式存储系统的属性包括:剩余 磁盘空间大小。
6. -种文件存储方法,其特征在于,包括: 应用服务器接收客户端发送的请求,并根据所述请求以及多个文件服务器中每个所述 文件服务器的负载状态,将所述请求发送至多个文件服务器中的一个文件服务器; 所述一个文件服务器接收到来自所述应用服务器的请求之后,根据所述请求,对与所 述请求相对应的文件进行处理得到处理后文件,并将所述处理后文件发送至文件管理器; 所述文件管理器接收到来自多个所述文件服务器的所述处理后文件之后,根据所述处 理后文件的属性以及多个分布式存储系统的属性,为所述处理后文件选择一个分布式存储 系统以对所述处理后文件进行存储。
7. 根据权利要求6所述的文件存储方法,其特征在于,还包括: 位于每个所述分布式存储系统上的多个存储服务器中的每个所述存储服务器相互备 份。
8. 根据权利要求6或7所述的文件存储方法,其特征在于,根据接收到的文件的大小动 态改变所述分布式存储系统的数量。
9. 根据权利要求6或7所述的文件存储方法,其特征在于,所述文件服务器管理所述文 件的元数据信息、文件的存储格式,以及对所述文件进行压缩存储。
10. 根据权利要求6或7所述的文件存储方法,其特征在于,所述处理后文件的属性包 括:所述处理后文件的大小以及请求链接数;以及所述分布式存储系统的属性包括:剩余 磁盘空间大小。
【文档编号】G06F12/02GK104092754SQ201410318744
【公开日】2014年10月8日 申请日期:2014年7月4日 优先权日:2014年7月4日
【发明者】陈飞 申请人:用友软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1