CN115102972A - 一种存储nfs文件的方法、装置、设备及介质 - Google Patents
一种存储nfs文件的方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115102972A CN115102972A CN202210831354.5A CN202210831354A CN115102972A CN 115102972 A CN115102972 A CN 115102972A CN 202210831354 A CN202210831354 A CN 202210831354A CN 115102972 A CN115102972 A CN 115102972A
- Authority
- CN
- China
- Prior art keywords
- nfs
- storing
- information
- node
- nfs file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 97
- 230000015654 memory Effects 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 241001362551 Samba Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种存储NFS文件的方法、装置、设备及介质,涉及计算机技术领域。该方法包括:接收NFS请求;根据NFS请求收集NFS文件在各节点的IO信息;在各节点中确定主节点;将IO信息发送至主节点进行汇总;根据IO信息确定NFS文件的存储方法;根据存储方法存储NFS文件。通过接收NFS请求并收集NFS文件在各节点的IO信息的操作替换原本的技术人员手动汇总各个节点运行的日志中的IO信息,由于根据NFS请求收集NFS文件在各节点的IO信息为计算机执行的操作,此时在打开节点日志的有限时间段内提升了收集IO信息的速率,以此实现提升存储效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种存储NFS文件的方法、装置、设备及介质。
背景技术
随着计算机技术的高速发展,对于其中的网络文件系统(Network File System,NFS)的发展也提出了相应的要求。NFS作为分布式文件系统,一般可用于解决分布式服务、数据共享等功能。现有的存储NFS文件的方法为技术人员手动汇总各个节点运行的日志,从不同的节点日志中找出同一文件的读写IO,根据时间顺序汇总统计,并确定该文件的存储方法,以该存储方法存储NFS文件。在该过程中,需要打开节点日志找出同一NFS文件的读写IO信息,由于节点日志打开时不能同时实现NFS文件的存储,以此导致存储效率低。
鉴于上述存在的问题,寻求如何提升存储效率是本领域技术人员竭力解决的问题。
发明内容
本申请的目的是提供一种存储NFS文件的方法、装置、设备及介质,用于提升存储效率。
为解决上述技术问题,本申请提供一种存储NFS文件的方法,包括:
接收NFS请求;
根据NFS请求收集NFS文件在各节点的IO信息;
在各节点中确定主节点;
将IO信息发送至主节点进行汇总;
根据IO信息确定NFS文件的存储方法;
根据存储方法存储NFS文件。
优选地,在各节点中确定主节点包括:
按照预设规则在各节点中确定主节点。
优选地,按照预设规则在各节点中确定主节点包括:
根据IO信息在各节点出现的时间顺序设置对应的时间权重值;
根据时间权重值确定主节点。
优选地,按照预设规则在各节点中确定主节点包括:
根据IO信息在各节点中记录的内存设置对应的内存权重值;
根据内存权重值确定主节点。
优选地,根据IO信息确定NFS文件的存储方法包括:
根据IO信息确定NFS文件的存储单位;
按照存储单位确定NFS文件的存储方法,存储单位分别为第一存储单位和第二存储单位,且第一存储单位大于第二存储单位。
优选地,根据存储方法存储NFS文件包括:
判断存储单位是否达到预设存储单位;
若是,则按照第一存储单位存储NFS文件;
若否,则按照第二存储单位存储NFS文件。
优选地,在根据存储方法存储NFS文件之后,还包括:
输出表征NFS文件存储完毕的提示信息。
为解决上述技术问题,本申请还提供了一种存储NFS文件的装置,应用于上述提及的全部存储NFS文件的方法包括:
接收模块,用于接收NFS请求;
收集模块,用于根据NFS请求收集NFS文件在各节点的IO信息;
第一确定模块,用于在各节点中确定主节点;
发送并汇总模块,用于将IO信息发送至主节点进行汇总;
第二确定模块,用于根据IO信息确定NFS文件的存储方法;
第一存储模块,用于根据存储方法存储NFS文件。
此外,该存储NFS文件的装置还包括以下模块:
第三确定模块,用于按照预设规则在各节点中确定主节点。
第一设置模块,用于根据IO信息在各节点出现的时间顺序设置对应的时间权重值;
第四确定模块,用于根据时间权重值确定主节点。
第二设置模块,用于根据IO信息在各节点中记录的内存设置对应的内存权重值;
第五确定模块,用于根据内存权重值确定主节点。
第六确定模块,用于根据IO信息确定NFS文件的存储单位;
第七确定模块,用于按照存储单位确定NFS文件的存储方法,存储单位分别为第一存储单位和第二存储单位,且第一存储单位大于第二存储单位。
判断模块,用于判断存储单位是否达到预设存储单位;
若是,则触发第二存储模块,用于按照第一存储单位存储NFS文件;
若否,则触发第三存储模块,用于按照第二存储单位存储NFS文件。
输出模块,用于输出表征NFS文件存储完毕的提示信息。
为解决上述技术问题,本申请还提供了一种存储NFS文件的设备,包括:
存储器,用于存储计算机程序;
处理器,用于指向计算机程序,实现存储NFS文件的方法的步骤。
为解决上述技术问题,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,实现上述全部存储NFS文件的方法的步骤。
本申请所提供的一种存储NFS文件的方法,该方法包括:接收NFS请求;根据NFS请求收集NFS文件在各节点的IO信息;在各节点中确定主节点;将IO信息发送至主节点进行汇总;根据IO信息确定NFS文件的存储方法;根据存储方法存储NFS文件。通过接收NFS请求并收集NFS文件在各节点的IO信息的操作替换原本的技术人员手动汇总各个节点运行的日志中的IO信息,由于根据NFS请求收集NFS文件在各节点的IO信息为计算机执行的操作,此时在打开节点日志的有限时间段内提升了收集IO信息的速率,以此实现提升存储效率。
本申请还提供了一种存储NFS文件的装置、设备及介质,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种存储NFS文件的方法流程图;
图2为本申请实施例所提供的一种存储NFS文件的装置结构图;
图3为本申请实施例所提供的一种存储NFS文件的设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种存储NFS文件的方法、装置、设备及介质,其能够提升存储效率。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
NFS文件是允许客户端主机可以访问访问服务器端文件,并且其过程与访问本地存储时相似。它的实现是基于RPC,依托UDP/TCP协议达成。其中,传输控制协议(TCP,Transport Control Protocol)和用户数据报协议(UDP,User Data Protocol)是传输层最重要的两种协议,为上层用户提供级别的通信可靠性。TCP协议定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采取的措施。协议规定了TCP软件怎样识别给定计算机上的多个目的进程如何对分组重复这类差错进行恢复。协议还规定了两台计算机如何初始化一个TCP数据流传输以及如何结束这一传输。TCP最大的特点就是提供的是面向连接、可靠的字节流服务。UDP协议是一个简单的面向数据报的传输层协议。提供的是非面向连接的、不可靠的数据流传输。UDP不提供可靠性,也不提供报文到达确认、排序以及流量控制等功能。它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。因此报文可能会丢失、重复以及乱序等。但由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。
例如:NFS文件可以应用于Elasticsearch的快照备份和/或恢复,可以利用NFS文件挂载服务端的备份目录,客户端访问该备份目录进行实时的备份恢复;比如Gitlab的分布式搭建,多个实例主机访问该仓库目录实现分布式服务搭建;再比如,web服务通过NFS系统存储上传文件,同步到服务器所在目录,就能做到直接访问自己服务器文件目录。
因为NFS的实现是依赖于远程过程调用(Remote Procedure Call,RPC),所以客户端和服务端的通讯也是基于RPC。NFS的功能很多,不同的功能对应的服务端不同端口,因此,在客户端初始访问时是未知服务端对应端口的,于是首先需要请求到不同NFS功能对应的端口,此时就要用到111端口(RPC的端口),作为服务端RPC的默认端口提供给客户端访问得到所有NFS功能的端口,接着再根据所需功能和服务端进行数据传输。
关于NFS的无状态做以下描述:此处参考操作系统。关于无状态可以理解为http协议,http协议就为无状态。例如:用户在web服务过程中,每一次鼠标的点击请求都会携带所需参数,参数可以包括:需要查询的用户信息,此时,在本次查询过程中肯定会带上userid参数,而服务端根据userid参数查询数据库得到该用户的信息。因此,用上述的理解方式。同样能够理解NFS。例如:用语句vim/home/foo.txt,并写入“aaaa”,若此时为有状态协议,则第一次会传输需要访问home目录下的foo.txt,第二次传输为写入“aaaa”,如果中间的传输因为外界影响而断开连接,则服务端就无法识别第二次传输了什么文件;而无状态协议,每次都会传输完整的文件句柄和操作内容。如果发生服务端奔溃、客户端和服务端网络丢失的情况,有状态协议下的服务就会因为信息丢失而导致传输数据失败。
其中,文件句柄(file handle)用于唯一描述文件或目录。因此,许多协议请求包括一个文件句柄。一般来说,文件句柄有3个重要组件,分别为:卷标识符、inode号和世代号。这3项一起构成用户希望访问的文件或目录的唯一标识符。卷标识符用于导出多个文件;inode号用于访问各分区(可以理解为节点)中的NFS文件;在复用inode号时需要世代号,通过在复用inode号时递增世代号,以确保具有旧文件句柄的客户端不会意外地访问新分配的NFS文件。每次通过LooKup协议请求文件句柄时,服务端会将文件句柄+文件属性一起返回给客户端;属性就是NFS文件追踪的每个文件的元信息,包括文件创建时间、上次修改时间、大小、所有权和权限信息等等,即对文件调用stat()语句返回信息。其中,需要说明的是,客户端的操作一般来说都是幂等性的,所以服务端崩溃重启后对操作无影响。除了像mkdir这类的文件,当文件已存在时,服务端崩溃重启时会通过报错来体现。
关于NFS的缓存一致性做以下描述:根据上述对NFS的描述可知,NFS的缓存会同时存在客户端和服务端,需要说明的是,缓存同时包含写缓存,此时当客户端修改的时候,可以通过写缓存很快返回响应,将写入的内容缓存到内存中,随后再发给服务端。在服务端因为写操作,服务端调用刷新缓存。但是客户端上的修改操作会因为网络等原因出现和服务端不一致的情况,此时会出现如下两个问题:
第一个问题为:A客户端修改了内容缓存了未发给服务端;B客户端此时读取服务端的则是未更新的旧内容;该问题通过关闭时刷新来解决,只要A客户端更新完后关闭NFS文件,并立即发送给服务端。
第二个问题为:A客户端修改的内容发给服务端并修改了服务端的内容;但是B客户端由于缓存的原因,读取到的仍然还是旧未更新的旧内容;该问题通过读取文件属性来确认文件是否被更新,例如:B客户端每次使用缓存的前提是利用GETATTR确认文件属性是否一致。
NFS至少有两个主要部分,分别为,一台nfs服务器(服务端)和若干台客户机(客户端)。客户机通过TCP/IP网络远程访问存放在NFS服务器上的数据。在NFS服务器正式启动前,需要根据实际环境和需求,配置一些NFS参数。
NFS是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源,其中,网络文件系统有三种:NFS,samba,FTP。
在NFS的应用中,本地客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样;NFS适用于Linux与Unix之间实现文件共享,不能实现Linux与Windows间的文件共享功能;NFS是运行在应用层的协议;NFS服务只能基于IP进行认证,只能在内网使用,不能在公网使用。但NFS能实现节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用;用户不需要在网络中的每个机器上都建有home目录,home目录可以放在NFS服务器上且可以在网络上被访问使用;一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。
基于上述所提及的NFS的内容,对于本申请来说,现有的存储NFS文件的方法为技术人员手动汇总各个节点运行的日志,从不同的节点日志中找出同一文件的读写IO,根据时间顺序汇总统计,并确定该文件的存储方法,以该存储方法存储NFS文件。在该过程中,需要打开节点日志找出同一NFS文件的读写IO信息,由于节点日志打开时不能同时实现NFS文件的存储,以此导致存储效率低。
为了解决上述技术问题,本申请提供了一种存储NFS文件的方法。图1为本申请实施例所提供的一种存储NFS文件的方法流程图。如图1所示,该存储NFS文件的方法,包括:
S10:接收NFS请求。
需要说明的是,NFS请求可以用文字形式表示,还可以用数据串的形式表示。当以文字形式表示NFS请求时,可以表示为“请求访问”;当以数据串形式表示NFS请求时,可以使用1位、2位、4位、8位等等位数的数据串表示,具体可以表示为“1”、“01”、“1101”、“11010001”,可以理解的是,无论是以文字形式表示NFS请求还是以数据串形式表示NFS请求,上述提及的实施例仅仅为众多实施例中的几种,并不对本申请所提及的NFS请求作出限定,可根据具体实施场景确定其实施方式。且同时需要说明的是,当以数据串形式表示NFS请求时,可以通过数据串对应的二进制数字表示NFS请求还可以是通过数据串中的0或1的个数表示NFS请求,上述提及的实施例仅仅为众多实施例中的几种,并不对本申请所提及的NFS请求作出限定,可根据具体实施场景确定其实施方式。
S11:根据NFS请求收集NFS文件在各节点的IO信息。
IO信息可以包括NFS文件的inode标识、NFS文件的大小(例如:其中一个NFS文件的大小为1GB)、NFS文件对应的日志文件路径等等,可以理解的是,上述提及的有关于IO信息的实施例仅仅为众多实施例中的几种,并不对本申请所提及的IO信息作出限定,可根据具体实施场景确定其实施方式。
S12:在各节点中确定主节点。
在多个节点中选取一个主节点,需要说明的是,由于每个NFS文件在各节点的日志文件中存在的IO信息不同,因此,主节点也不是一成不变的。例如:对于一类NFS文件对应A主节点,对于另一类NFS文件对应B主节点。可以理解的是,主节点的选取与各节点均相关,因此按照预设规则在各节点中确定主节点。
其中,按照预设规则在各节点中确定主节点包括:
根据IO信息在各节点出现的时间顺序设置对应的时间权重值;
根据时间权重值确定主节点。作为一种更优选的实施方式,可以选取时间权重值最大的节点作为主节点。
还可以为,按照预设规则在各节点中确定主节点包括:
根据IO信息在各节点中记录的内存设置对应的内存权重值;
根据内存权重值确定主节点。作为一种更优选的实施方式,可以选取内存权重值最大的节点作为主节点。
上述提及的有关于在各节点中确定主节点的实施例仅仅为众多实施例中的几种,还可以根据NFS文件的大小设置对应的NFS文件的大小权重值并确定主节点,因此,上述提及的有关于在各节点中确定主节点的实施例并不对本申请所提及的IO信息作出限定,可根据具体实施场景确定其实施方式。
S13:将IO信息发送至主节点进行汇总。
由于节点只有开启了web服务才能进行信息或数据的传输,因此,只有作为主节点的节点才能够开启web服务,进一步传输IO信息,其余的非主节点不能传输IO信息,因此需要在主节点汇总IO信息。
S14:根据IO信息确定NFS文件的存储方法。
其中,根据IO信息确定NFS文件的存储方法包括:
根据IO信息确定NFS文件的存储单位;
按照存储单位确定NFS文件的存储方法,存储单位分别为第一存储单位和第二存储单位,且第一存储单位大于第二存储单位。
在本实施例中的存储单位是以块进行描述的。需要说明的是,第一存储单位可以理解为小块,将NFS文件按照小块进行存储;第二存储单位可以理解为大块,将NFS文件按照大块进行存储。
S15:根据存储方法存储NFS文件。
其中,根据存储方法存储NFS文件包括:
判断存储单位是否达到预设存储单位;
若是,则按照第一存储单位存储NFS文件;
若否,则按照第二存储单位存储NFS文件。
本申请所提供的一种存储NFS文件的方法,该方法包括:接收NFS请求;根据NFS请求收集NFS文件在各节点的IO信息;在各节点中确定主节点;将IO信息发送至主节点进行汇总;根据IO信息确定NFS文件的存储方法;根据存储方法存储NFS文件。通过接收NFS请求并收集NFS文件在各节点的IO信息的操作替换原本的技术人员手动汇总各个节点运行的日志中的IO信息,由于根据NFS请求收集NFS文件在各节点的IO信息为计算机执行的操作,此时在打开节点日志的有限时间段内提升了收集IO信息的速率,以此实现提升存储效率。
在上述实施例的基础上,作为一种优选地实施例,在根据存储方法存储NFS文件之后,还包括:
输出表征NFS文件存储完毕的提示信息。
为了能够直接得到NFS文件是否存储完毕,在根据存储方法存储NFS文件之后,需要输出表征NFS文件存储完毕的提示信息。需要说明的是,提示信息可以用文字形式表示,还可以用数据串的形式表示。当以文字形式表示提示信息时,可以表示为“存储完毕”;当以数据串形式表示提示信息时,可以使用1位、2位、4位、8位等等位数的数据串表示,具体可以表示为“0”、“10”、“1001”、“11101001”,可以理解的是,无论是以文字形式表示提示信息还是以数据串形式表示提示信息,上述提及的实施例仅仅为众多实施例中的几种,并不对本申请所提及的提示信息作出限定,可根据具体实施场景确定其实施方式。且同时需要说明的是,当以数据串形式表示提示信息时,可以通过数据串对应的二进制数字表示提示信息还可以是通过数据串中的0或1的个数表示提示信息,上述提及的实施例仅仅为众多实施例中的几种,并不对本申请所提及的提示信息作出限定,可根据具体实施场景确定其实施方式。
NFS能实现多个机器共享一台CDROM或其他设备。这对于在多台机器中安装软件来说更加方便。在大型网络中,配置一台中心NFS服务器用来放置所有用户的home目录可能会带来便利。这些目录能被输出到网络以便用户不管在哪台工作站上登陆,总能得到相同的home目录。不同客户端可在NFS上观看影视文件,节省本地空间。在客户端完成的工作数据,可以备份保存到NFS服务器上用户自己的路径下。
在上述实施例中,对于存储NFS文件的方法进行了详细描述,本申请还提供存储NFS文件的装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图2为本申请实施例所提供的一种存储NFS文件的装置结构图。如图2所示,本申请还提供了一种存储NFS文件的装置,包括:
接收模块20,用于接收NFS请求;
需要说明的是,NFS请求可以用文字形式表示,还可以用数据串的形式表示。当以文字形式表示NFS请求时,可以表示为“请求访问”;当以数据串形式表示NFS请求时,可以使用1位、2位、4位、8位等等位数的数据串表示,具体可以表示为“1”、“01”、“1101”、“11010001”,可以理解的是,无论是以文字形式表示NFS请求还是以数据串形式表示NFS请求,上述提及的实施例仅仅为众多实施例中的几种,并不对本申请所提及的NFS请求作出限定,可根据具体实施场景确定其实施方式。且同时需要说明的是,当以数据串形式表示NFS请求时,可以通过数据串对应的二进制数字表示NFS请求还可以是通过数据串中的0或1的个数表示NFS请求,上述提及的实施例仅仅为众多实施例中的几种,并不对本申请所提及的NFS请求作出限定,可根据具体实施场景确定其实施方式。
收集模块21,用于根据NFS请求收集NFS文件在各节点的IO信息;
IO信息可以包括NFS文件的inode标识、NFS文件的大小(例如:其中一个NFS文件的大小为1GB)、NFS文件对应的日志文件路径等等,可以理解的是,上述提及的有关于IO信息的实施例仅仅为众多实施例中的几种,并不对本申请所提及的IO信息作出限定,可根据具体实施场景确定其实施方式。
第一确定模块22,用于在各节点中确定主节点;
发送并汇总模块23,用于将IO信息发送至主节点进行汇总;由于节点只有开启了web服务才能进行信息或数据的传输,因此,只有作为主节点的节点才能够开启web服务,进一步传输IO信息,其余的非主节点不能传输IO信息,因此需要在主节点汇总IO信息。
第二确定模块24,用于根据IO信息确定NFS文件的存储方法;
第一存储模块25,用于根据存储方法存储NFS文件。
此外,该存储NFS文件的装置还包括以下模块:
第三确定模块,用于按照预设规则在各节点中确定主节点。
第一设置模块,用于根据IO信息在各节点出现的时间顺序设置对应的时间权重值;
第四确定模块,用于根据时间权重值确定主节点。
第二设置模块,用于根据IO信息在各节点中记录的内存设置对应的内存权重值;
第五确定模块,用于根据内存权重值确定主节点。
第六确定模块,用于根据IO信息确定NFS文件的存储单位;
第七确定模块,用于按照存储单位确定NFS文件的存储方法,存储单位分别为第一存储单位和第二存储单位,且第一存储单位大于第二存储单位。
判断模块,用于判断存储单位是否达到预设存储单位,;
若是,则进入第二存储模块,用于按照第一存储单位存储NFS文件;
若否,则进入第三存储模块,用于按照第二存储单位存储NFS文件。
输出模块,用于输出表征NFS文件存储完毕的提示信息。
由于本申请所提供的一种存储NFS文件的方法同样适用于本申请所提供的存储NFS文件的装置。因此,该存储NFS文件的装置能实现与该存储NFS文件的方法同样的有益效果。则,上述存储NFS文件的方法包括:接收NFS请求;根据NFS请求收集NFS文件在各节点的IO信息;在各节点中确定主节点;将IO信息发送至主节点进行汇总;根据IO信息确定NFS文件的存储方法;根据存储方法存储NFS文件。通过接收NFS请求并收集NFS文件在各节点的IO信息的操作替换原本的技术人员手动汇总各个节点运行的日志中的IO信息,由于根据NFS请求收集NFS文件在各节点的IO信息为计算机执行的操作,此时在打开节点日志的有限时间段内提升了收集IO信息的速率,以此实现提升存储效率。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图3为本申请实施例所提供的一种存储NFS文件的设备结构图,如图3所示,存储NFS文件的设备包括:
存储器30,用于存储计算机程序;
处理器31,用于执行计算机程序时实现如上述实施例中所提到的存储NFS文件的方法的步骤。
本实施例提供的存储NFS文件的设备可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器31可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器31可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器31也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器31可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器31还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器30可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器30还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器30至少用于存储以下计算机程序,其中,该计算机程序被处理器31加载并执行之后,能够实现前述任意一个实施例公开的存储NFS文件的方法的相关步骤。另外,存储器30所存储的资源还可以包括操作系统和数据等,存储方式可以是短暂存储或者永久存储。其中,操作系统可以包括Windows、Unix、Linux等。数据可以包括但不限于存储NFS文件的方法等。
在一些实施例中,存储NFS文件的设备还可包括有显示屏、输入输出接口、通信接口、电源以及通信总线。
本领域技术人员可以理解,图3中示出的结构并不构成对存储NFS文件的设备的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的存储NFS文件的设备,包括存储器30和处理器31,处理器31在执行存储器30存储的程序时,能够实现存储NFS文件的方法。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory),ROM、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请所提供的一种存储NFS文件的方法、装置、设备及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种存储NFS文件的方法,其特征在于,包括:
接收NFS请求;
根据所述NFS请求收集NFS文件在各节点的IO信息;
在各所述节点中确定主节点;
将所述IO信息发送至所述主节点进行汇总;
根据所述IO信息确定所述NFS文件的存储方法;
根据所述存储方法存储所述NFS文件。
2.根据权利要求1所述的存储NFS文件的方法,其特征在于,所述在各所述节点中确定主节点包括:
按照预设规则在各所述节点中确定所述主节点。
3.根据权利要求2所述的存储NFS文件的方法,其特征在于,所述按照预设规则在各所述节点中确定所述主节点包括:
根据所述IO信息在各所述节点出现的时间顺序设置对应的时间权重值;
根据所述时间权重值确定所述主节点。
4.根据权利要求2所述的存储NFS文件的方法,其特征在于,所述按照预设规则在各所述节点中确定所述主节点包括:
根据所述IO信息在各所述节点中记录的内存设置对应的内存权重值;
根据所述内存权重值确定所述主节点。
5.根据权利要求1所述的存储NFS文件的方法,其特征在于,所述根据所述IO信息确定所述NFS文件的存储方法包括:
根据所述IO信息确定所述NFS文件的存储单位;
按照所述存储单位确定所述NFS文件的存储方法,所述存储单位分别为第一存储单位和第二存储单位,且所述第一存储单位大于所述第二存储单位。
6.根据权利要求5所述的存储NFS文件的方法,其特征在于,所述根据所述存储方法存储所述NFS文件包括:
判断所述存储单位是否达到预设存储单位;
若是,则按照所述第一存储单位存储所述NFS文件;
若否,则按照所述第二存储单位存储所述NFS文件。
7.根据权利要求1所述的存储NFS文件的方法,其特征在于,在所述根据所述存储方法存储所述NFS文件之后,还包括:
输出表征所述NFS文件存储完毕的提示信息。
8.一种存储NFS文件的装置,其特征在于,包括:
接收模块,用于接收NFS请求;
收集模块,用于根据所述NFS请求收集NFS文件在各节点的IO信息;
第一确定模块,用于在各所述节点中确定主节点;
发送并汇总模块,用于将所述IO信息发送至所述主节点进行汇总;
第二确定模块,用于根据所述IO信息确定所述NFS文件的存储方法;
存储模块,用于根据所述存储方法存储所述NFS文件。
9.一种存储NFS文件的设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任意一项所述的存储NFS文件的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的存储NFS文件的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210831354.5A CN115102972A (zh) | 2022-07-15 | 2022-07-15 | 一种存储nfs文件的方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210831354.5A CN115102972A (zh) | 2022-07-15 | 2022-07-15 | 一种存储nfs文件的方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115102972A true CN115102972A (zh) | 2022-09-23 |
Family
ID=83297433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210831354.5A Pending CN115102972A (zh) | 2022-07-15 | 2022-07-15 | 一种存储nfs文件的方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115102972A (zh) |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080010409A1 (en) * | 2006-07-05 | 2008-01-10 | Cisco Technology, Inc. | Dynamic, on-demand storage area network (SAN) cache |
US7895217B1 (en) * | 2008-04-17 | 2011-02-22 | Netapp, Inc. | Method and system for processing requests for accessing stored information |
CN102708165A (zh) * | 2012-04-26 | 2012-10-03 | 华为软件技术有限公司 | 分布式文件系统中的文件处理方法及装置 |
US20160359975A1 (en) * | 2015-06-08 | 2016-12-08 | Microsoft Technology Licensing, Llc | Aggregated access to storage subsystem |
CN106777394A (zh) * | 2017-02-28 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种集群文件系统 |
WO2017166644A1 (zh) * | 2016-03-31 | 2017-10-05 | 乐视控股(北京)有限公司 | 一种数据采集方法和系统 |
CN107491545A (zh) * | 2017-08-25 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种分布式存储系统的目录读取方法及客户端 |
CN107734026A (zh) * | 2017-10-11 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种网络附加存储集群的设计方法、装置及设备 |
US20180314433A1 (en) * | 2015-12-30 | 2018-11-01 | Huawei Technologies Co., Ltd. | Method, system, and related device for nas data access |
CN108848180A (zh) * | 2018-06-27 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种元数据同步方法、装置、设备及可读存储介质 |
CN109040183A (zh) * | 2018-06-27 | 2018-12-18 | 郑州云海信息技术有限公司 | 节点信息获取方法、装置、设备及计算机可读存储介质 |
CN109542732A (zh) * | 2018-12-03 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种集群日志收集方法、装置和计算机可读存储介质 |
CN109684285A (zh) * | 2018-12-13 | 2019-04-26 | 郑州云海信息技术有限公司 | 一种用户态网络文件系统文件锁方法、装置及设备 |
CN109783438A (zh) * | 2018-12-05 | 2019-05-21 | 南京华讯方舟通信设备有限公司 | 基于librados的分布式NFS系统及其构建方法 |
WO2019127915A1 (zh) * | 2017-12-29 | 2019-07-04 | 北京奇虎科技有限公司 | 基于分布式一致性协议实现的数据读取方法及装置 |
CN110019041A (zh) * | 2019-04-12 | 2019-07-16 | 苏州浪潮智能科技有限公司 | Nfs服务端目录读取方法、装置、设备及存储介质 |
CN110187838A (zh) * | 2019-05-30 | 2019-08-30 | 北京百度网讯科技有限公司 | 数据io信息处理方法、分析方法、装置和相关设备 |
CN112131191A (zh) * | 2020-09-28 | 2020-12-25 | 浪潮商用机器有限公司 | 一种namenode文件系统的管理方法、装置及设备 |
CN112650728A (zh) * | 2020-12-15 | 2021-04-13 | 中国联合网络通信集团有限公司 | 接口信息存储方法、装置、服务器及分布式业务系统 |
CN112653730A (zh) * | 2020-12-10 | 2021-04-13 | 苏州浪潮智能科技有限公司 | 一种用户态网络文件存储方法和系统 |
CN113992657A (zh) * | 2021-10-26 | 2022-01-28 | 超越科技股份有限公司 | 一种基于云平台的共享存储的搭建方法、设备及介质 |
-
2022
- 2022-07-15 CN CN202210831354.5A patent/CN115102972A/zh active Pending
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080010409A1 (en) * | 2006-07-05 | 2008-01-10 | Cisco Technology, Inc. | Dynamic, on-demand storage area network (SAN) cache |
US7895217B1 (en) * | 2008-04-17 | 2011-02-22 | Netapp, Inc. | Method and system for processing requests for accessing stored information |
CN102708165A (zh) * | 2012-04-26 | 2012-10-03 | 华为软件技术有限公司 | 分布式文件系统中的文件处理方法及装置 |
US20160359975A1 (en) * | 2015-06-08 | 2016-12-08 | Microsoft Technology Licensing, Llc | Aggregated access to storage subsystem |
US20180314433A1 (en) * | 2015-12-30 | 2018-11-01 | Huawei Technologies Co., Ltd. | Method, system, and related device for nas data access |
WO2017166644A1 (zh) * | 2016-03-31 | 2017-10-05 | 乐视控股(北京)有限公司 | 一种数据采集方法和系统 |
CN106777394A (zh) * | 2017-02-28 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种集群文件系统 |
CN107491545A (zh) * | 2017-08-25 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种分布式存储系统的目录读取方法及客户端 |
CN107734026A (zh) * | 2017-10-11 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种网络附加存储集群的设计方法、装置及设备 |
WO2019127915A1 (zh) * | 2017-12-29 | 2019-07-04 | 北京奇虎科技有限公司 | 基于分布式一致性协议实现的数据读取方法及装置 |
CN109040183A (zh) * | 2018-06-27 | 2018-12-18 | 郑州云海信息技术有限公司 | 节点信息获取方法、装置、设备及计算机可读存储介质 |
CN108848180A (zh) * | 2018-06-27 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种元数据同步方法、装置、设备及可读存储介质 |
CN109542732A (zh) * | 2018-12-03 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种集群日志收集方法、装置和计算机可读存储介质 |
CN109783438A (zh) * | 2018-12-05 | 2019-05-21 | 南京华讯方舟通信设备有限公司 | 基于librados的分布式NFS系统及其构建方法 |
CN109684285A (zh) * | 2018-12-13 | 2019-04-26 | 郑州云海信息技术有限公司 | 一种用户态网络文件系统文件锁方法、装置及设备 |
CN110019041A (zh) * | 2019-04-12 | 2019-07-16 | 苏州浪潮智能科技有限公司 | Nfs服务端目录读取方法、装置、设备及存储介质 |
CN110187838A (zh) * | 2019-05-30 | 2019-08-30 | 北京百度网讯科技有限公司 | 数据io信息处理方法、分析方法、装置和相关设备 |
CN112131191A (zh) * | 2020-09-28 | 2020-12-25 | 浪潮商用机器有限公司 | 一种namenode文件系统的管理方法、装置及设备 |
CN112653730A (zh) * | 2020-12-10 | 2021-04-13 | 苏州浪潮智能科技有限公司 | 一种用户态网络文件存储方法和系统 |
CN112650728A (zh) * | 2020-12-15 | 2021-04-13 | 中国联合网络通信集团有限公司 | 接口信息存储方法、装置、服务器及分布式业务系统 |
CN113992657A (zh) * | 2021-10-26 | 2022-01-28 | 超越科技股份有限公司 | 一种基于云平台的共享存储的搭建方法、设备及介质 |
Non-Patent Citations (5)
Title |
---|
战科宇;李小勇;刘海涛;: "分布式文件系统元数据服务器高可用性设计", 小型微型计算机系统, no. 04, 15 April 2013 (2013-04-15), pages 115 - 119 * |
李兆虎;李战怀;张晓;李晓慧;: "异构存储系统性能监测技术研究", 计算机与现代化, no. 01, 15 January 2013 (2013-01-15), pages 199 - 203 * |
李辉;侯义斌;黄樟钦;何福贵;陈锐;: "基于并行计算的认证服务系统", 计算机工程, no. 22, 20 November 2008 (2008-11-20), pages 190 - 192 * |
王宇飞;刘丹;吴嘉生;: "基于OSGi的分布式系统集中日志管理方案", 计算机系统应用, no. 06, 15 June 2017 (2017-06-15), pages 61 - 66 * |
白玉杰;夏方;程顺达;: "基于MongoDB的文件存储系统的设计与实现", 衡水学院学报, no. 04, 20 August 2016 (2016-08-20), pages 14 - 15 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776174B2 (en) | Managing hosted resources across different virtualization platforms | |
US9983825B2 (en) | Efficient data volume replication for block-based storage | |
CA2940328C (en) | Reducing data volume durability state for block-based storage | |
US7818287B2 (en) | Storage management system and method and program | |
US9613120B1 (en) | Replicated database startup for common database storage | |
US11403262B2 (en) | Local networked storage linked to remote networked storage system | |
US9740707B2 (en) | Peer-to-peer redundant file server system and methods | |
US6711572B2 (en) | File system for distributing content in a data network and related methods | |
CN112395264B (zh) | 分布式存储系统中逻辑目标与卷之间映射的处理方法 | |
US10852996B2 (en) | System and method for provisioning slave storage including copying a master reference to slave storage and updating a slave reference | |
US20100161550A1 (en) | File synchronization based on intercepting file system calls | |
WO2019242148A1 (zh) | 日志处理方法、装置及存储介质、服务器 | |
US7818390B2 (en) | Method for transferring data between terminal apparatuses in a transparent computation system | |
WO2019047976A1 (zh) | 网络文件管理方法、终端及计算机可读存储介质 | |
CN112256676A (zh) | 一种数据库迁移的方法、装置、设备和介质 | |
US11144407B1 (en) | Synchronous database geo-mirroring using delayed visibility write operations | |
CN111966634A (zh) | 一种文件操作方法、系统、设备以及介质 | |
CN115102972A (zh) | 一种存储nfs文件的方法、装置、设备及介质 | |
CN115510016A (zh) | 一种基于目录分片的客户端应答方法、装置及介质 | |
US11537634B2 (en) | Methods for hierarchical propagation in tree structures and devices thereof | |
CN115374057A (zh) | 数据快照方法及相关设备 | |
CN114996053A (zh) | 一种远程卷复制传输方法、系统、装置及存储介质 | |
US11886439B1 (en) | Asynchronous change data capture for direct external transmission | |
CN113849341A (zh) | 一种nas快照的性能优化方法、系统、设备及可读存储介质 | |
CN115695587A (zh) | 一种业务数据处理系统、方法、装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |