访问文件的方法和装置的制造方法_4

文档序号:9929636阅读:来源:国知局
]具体地,可以将每个主机的文件系统的状态指示信息配置为本地文件系统状态,例如,该状态指示信息为O时表示文件系统的状态为集群文件系统状态,为I时表示文件系统为本地文件系统状态,因此,可以在网络发生分割时,将该指示信息设置为I。
[0096]此时,每个主机的文件系统的状态都设置为本地文件系统状态,那么整个集群文件系统被分割为多个本地文件系统。
[0097]下面结合图4所示的流程图详细介绍在文件系统被设置为本地文件系统状态时,根据本发明实施例的访问文件的方法400。
[0098]S401,获取文件的读写请求;
[0099]该文件的读写请求可以为主机上的应用程序发送的,该读写请求用于请求访问集群文件系统中的文件。
[0?00] S402,判断是读请求还是写请求;
[0101]如果是写请求,流程进行到S403,如果是读请求,流程进行到S409;
[0102]S402,确定该文件预配置的主机标识与该写请求对应的主机标识是否一致;
[0103]如果一致,流程进行到S404,否则流程进行到S408,返回写文件错误,流程结束。
[0104]S404,判断集群文件系统的整个磁盘空间是否进行块分配;
[0105]如果已经进行块分配,也就是每个主机都有自己的磁盘空间,主机之间不能相互访问对方的磁盘空间,此时流程进行到S405,否则流程进行到S407,直接在集群文件系统的磁盘空间写入该文件。
[0106]S405,判断文件系统的整个磁盘空间中该主机对应的磁盘空间的剩余空间是否足够写入该文件;
[0107]如果足够,流程进行到S406,否则,流程进行到S408,返回写文件错误,流程结束,也就是说,如果磁盘空间不足的话,也是不允许写入该文件的。
[0108]S406,在该主机对应的磁盘空间的剩余空间中为写入该文件分配相应的磁盘空间。
[0109]S407,在相应的磁盘空间写入该文件。
[0110]应理解,该S403?S408为网络发生分割时,集群文件系统中对文件进行写操作的流程,下面介绍网络发生分割时,集群文件系统中对文件进行读操作的流程。
[0111]S409,确定该文件预配置的主机标识与该读请求对应的主机标识是否一致;
[0112]若一致,流程进行到S410,否则,流程进行到S411,返回读文件错误,流程结束。
[0113]S410,到该主机对应的磁盘空间读取该文件。
[0114]因此,本发明实施例的访问文件的方法,在网络发生分割时,不是将主机被踢除出集群文件系统,从而导致主机不能访问集群文件系统,而是将集群文件系统分割为多个本地文件系统,并且为每个本地文件系统预先分配相应的磁盘空间,从而,各个主机可以在为自己预先分配的磁盘空间管理文件,因此,提高了网络发生分割时访问集群文件系统的可靠性。
[0115]图5示出了根据本发明实施例的访问文件的装置500的示意性框图,该装置500包括:
[0116]确定模块510,用于确定文件系统处于网络分割状态,该文件系统运行在多个主机上,该网络分割状态指示该文件系统被划分为至少两个分区,该至少两个分区之间的网络不通;
[0117]收发模块520,用于接收第一文件的访问请求;
[0118]获取模块530,用于获取该访问请求对应的第一主机标识;
[0119]该确定模块510还用于确定该第一主机标识与该文件系统中为该第一文件预配置的第二主机标识一致;
[0120]访问模块540,用于在该确定模块510确定该第一主机标识和该第二主机标识一致时,访问该第一文件。
[0121]因此,本发明实施例的访问文件的装置,在网络发生分割时,不是将主机踢除出集群文件系统,从而导致主机不能访问集群文件系统,而是将集群文件系统分割为多个本地文件系统,并且为每个本地文件系统预先分配相应的磁盘空间,从而,各个主机可以在为自己预先分配的磁盘空间管理文件,因此,提高了网络发生分割时访问集群文件系统的可靠性。
[0122]根据本发明实施例的装置500可对应于根据本发明实施例的访问文件的方法200、300和400中的执行主体,并且装置500中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
[0123]如图6所示,本发明实施例还提供了一种访问文件的装置600,该装置600包括处理器610、存储器620、总线系统630和收发器640。其中,处理器610、存储器620和收发器640通过总线系统630相连,该存储器620用于存储指令,该处理器610用于执行该存储器620存储的指令,以控制收发器640接收信号或发送信号。该处理器610用于确定文件系统处于网络分割状态,该文件系统运行在多个主机上,该网络分割状态指示该文件系统被划分为至少两个分区,该至少两个分区之间的网络不通;该收发器640用于接收第一文件的访问请求;该处理器610还用于获取该访问请求对应的第一主机标识,并在确定该第一主机标识与该文件系统中为该第一文件预配置的第二主机标识一致时,访问该第一文件。
[0124]应理解,在本发明实施例中,该处理器610可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器610还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0125]该存储器620可以包括只读存储器和随机存取存储器,并向处理器610提供指令和数据。存储器620的一部分还可以包括非易失性随机存取存储器。例如,存储器620还可以存储设备类型的信息。
[0126]该总线系统630除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统630。
[0127]在实现过程中,上述方法的各步骤可以通过处理器610中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器620,处理器610读取存储器620中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0128]因此,本发明实施例的访问文件的装置,在网络发生分割时,不是将主机踢除出集群文件系统,从而导致主机不能访问集群文件系统,而是将集群文件系统分割为多个本地文件系统,并且为每个本地文件系统预先分配相应的磁盘空间,从而,各个主机可以在为自己预先分配的磁盘空间管理文件,因此,提高了网络发生分割时访问集群文件系统的可靠性。
[0129]根据本发明实施例的装置600可对应于根据本发明实施例的访问文件的方法200、300和400中的执行主体,并且装置600中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
[0130]应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/SB,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符,一般表示前后关联对象是一种“或”的关系。
[0131]应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0132]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0133]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0134]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1