CN115774703A - 信息处理方法及装置 - Google Patents
信息处理方法及装置 Download PDFInfo
- Publication number
- CN115774703A CN115774703A CN202111051925.5A CN202111051925A CN115774703A CN 115774703 A CN115774703 A CN 115774703A CN 202111051925 A CN202111051925 A CN 202111051925A CN 115774703 A CN115774703 A CN 115774703A
- Authority
- CN
- China
- Prior art keywords
- file
- path
- file system
- data
- file path
- 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
- 230000010365 information processing Effects 0.000 title claims abstract description 40
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 59
- 238000012545 processing Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 12
- 238000013500 data storage Methods 0.000 abstract description 3
- 238000013461 design Methods 0.000 description 30
- 230000006870 function Effects 0.000 description 26
- 230000008569 process Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 238000013508 migration Methods 0.000 description 8
- 230000005012 migration Effects 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- VQLYBLABXAHUDN-UHFFFAOYSA-N bis(4-fluorophenyl)-methyl-(1,2,4-triazol-1-ylmethyl)silane;methyl n-(1h-benzimidazol-2-yl)carbamate Chemical compound C1=CC=C2NC(NC(=O)OC)=NC2=C1.C=1C=C(F)C=CC=1[Si](C=1C=CC(F)=CC=1)(C)CN1C=NC=N1 VQLYBLABXAHUDN-UHFFFAOYSA-N 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/185—Hierarchical storage management [HSM] systems, e.g. file migration or policies thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开一种信息处理方法及装置,涉及数据存储领域,本申请能够使业务侧与数据中心中的文件***解耦合,即业务侧利用统一命名空间中的文件路径管理数据,对于数据中心中的文件***不感知。该方法包括:获取访问请求,访问请求中携带有待访问数据对应的第一文件路径,第一文件路径包括预设的根目录。根据第一文件路径在预设根目录下的路径,确定与第一文件路径对应的第一文件***中的第二文件路径;其中,预设根目录对应的命名空间下包括至少两种子路径,至少两种子路径分别对应至少两个不同文件***中的文件路径。
Description
技术领域
本申请涉及数据存储领域,尤其涉及一种信息处理方法及装置。
背景技术
目前,随着信息化技术的发展,用于存储数据的数据中心的规模也越来越大。
在对数据中心进行扩容的过程中,由于扩容的新设备与原来的旧设备的厂商、型号的差异,可能导致新设备和旧设备所用的文件***(file system,FS)相互独立。这就需要将业务对应的数据从旧文件***迁移到新文件***中,才能使该业务使用新文件***,整个迁移过程中需要耗费大量人力、物力资源。
发明内容
本申请提供一种信息处理方法及装置,解决了文件***扩容过程复杂、管理难度大的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种信息处理方法,包括:获取访问请求,该访问请求中携带有待访问数据对应的第一文件路径,第一文件路径包括预设的根目录。根据第一文件路径在预设的根目录下的路径,确定与第一文件路径对应的第一文件***中的第二文件路径。其中,预设的根目录对应的命名空间下包括至少两种子路径,至少两种子路径分别对应至少两个不同文件***中的文件路径。上述方法中,通过构建一个统一命名空间(即预设的跟目录对应的命名空间)。其中,多个文件***中的文件路径,均可以映射到该统一命名空间中唯一的一条文件路径上。从而使业务侧与数据中心中的文件***解耦合,即业务侧利用统一命名空间中的文件路径管理数据,对于数据中心中的文件***不感知。这样一来,一方面当数据中心中的文件***发生改变时(例如新增文件***或减少文件***时),仅需要对文件***中文件路径与统一命名空间中文件路径进行修改即可,对业务侧不需要相应改动;另一方面,由于统一命名空间中可以对应多个文件***的文件路径,因此一种业务可以使用多个文件***,配置更加灵活。
在一种可能的设计中,上述根据第一文件路径在预设的根目录下的路径,确定与第一文件路径对应的第一文件***中的第二文件路径,包括:根据第一文件路径在预设的根目录下的路径和挂载信息集合,确定待访问数据在第一文件***中的第二文件路径。其中,挂载信息集合中,记录有预设的根目录对应的命名空间中的文件路径与所对应文件***中的文件路径的对应关系。该设计中,可以预先存储预设根目录对应的命名空间中的文件路径与各文件***中的文件路径的对应关系,这样一来便可以通过查询挂载信息集合的方式,确定访问请求中携带的第一文件路径所对应的文件***中的文件路径。
在一种可能的设计中,该方法还包括:建立预设的根目录对应的命名空间下第一子目录与所述第一文件***的对应关系;其中,第一子目录下的任一路径对应第一文件***中的路径。将第一子目录与第一文件***的对应关系,记录在挂载信息集合中。上述设计中,采用将预设根目录对应的命名空间下的不同子目录与不同文件***对应,以使得文件***中的任一路径对应与该文件***对应的子目录下与上述路径相同的路径。例如,可以将文件***131a与预设根目录“GNS:\”下的子目录“GNS:\fsA\”对应,其中文件***131a中的任一路径与子目录“GNS:\fsA\”下的该路径对应。例如某个数据在文件***131a中的文件路径为“fsA:\路径1”,则可知在预设根目录对应的命名空间下,该数据的文件路径为“GNS:\fsA\路径1”。再例如,某个数据在文件***131a中的文件路径为“fsA:\路径2”,则可知在预设根目录对应的命名空间下,该数据的文件路径为“GNS:\fsA\路径2”,以此类推。
在一种可能的设计中,根据第二文件路径,确定待访问数据对应的存储地址,包括:根据第二文件路径,确定第一元数据节点。向第一元数据节点发送携带第二文件路径的地址请求。接收第一元数据节点发送的待访问数据对应的存储地址。通过上述设计,可以确定获取到待访问数据对应的存储地址,以便完成待访问数据的读写。
在一种可能的设计中,该方法还包括:当第一文件***中的元数据节点的节点信息发生改变时,生成日志信息,并更新节点信息集合;日志信息中记录有节点信息的改变内容。上述设计中,在第一文件***中的元数据节点的节点信息发生改变时,可以生成日志信息并更新节点信息集合。以便在节点信息集合更新失败后,可以通过触发日志回滚的方式,重新更新节点信息集合。
在一种可能的设计中,上述至少两个不同文件***中,包括:不同类型的至少两种文件***。上述设计中,由于预设根目录对应的命名空间下分别可以对应至少两个不同类型的文件***,也就是说可以通过预设根目录下的不同文件路径,来访问不同类型文件***。这样一来,对于一种业务而言,可以根据使用需要,将不同数据存储在不同文件***中,以充分利用不同文件***的特性。
第二方面,提供一种信息处理装置,包括:获取模块,用于获取访问请求,访问请求中携带有待访问数据对应的第一文件路径,第一文件路径包括预设的根目录。处理模块,用于根据第一文件路径在预设的根目录下的路径,确定与第一文件路径对应的第一文件***中的第二文件路径;其中,预设的根目录对应的命名空间下包括至少两种子路径,至少两种子路径分别对应至少两个不同文件***中的文件路径。处理模块,用于根据第二文件路径,确定待访问数据的存储地址。
在一种可能的设计中,处理模块,用于根据第一文件路径在预设的根目录下的路径,确定与第一文件路径对应的第一文件***中的第二文件路径,包括:处理模块,用于根据第一文件路径在预设的根目录下的路径和挂载信息集合,确定待访问数据在第一文件***中的第二文件路径。其中,挂载信息集合中,记录有预设的根目录对应的命名空间中的文件路径与所对应文件***中的文件路径的对应关系。
在一种可能的设计中,处理模块,还用于建立预设的根目录对应的命名空间下第一子目录与第一文件***的对应关系;其中,第一子目录下的任一路径对应第一文件***中的路径。处理模块,还用于将第一子目录与第一文件***的对应关系,记录在挂载信息集合中。
在一种可能的设计中,处理模块,用于根据第二文件路径,确定待访问数据对应的存储地址,包括:处理模块,用于根据第二文件路径,确定第一元数据节点。处理模块,用于向第一元数据节点发送携带第二文件路径的地址请求。处理模块,用于接收第一元数据节点发送的待访问数据对应的存储地址。
在一种可能的设计中,处理模块,还用于当第一文件***中的元数据节点的节点信息发生改变时,生成日志信息,并更新节点信息集合。日志信息中记录有节点信息的改变内容。
在一种可能的设计中,至少两个不同文件***中,包括:不同类型的至少两种文件***。
第三方面,提供一种存储设备,包括:处理器和接口,处理器通过接口接收或发送数据,处理器用于实现如上述第一方面或第一方面中各设计中的方法。
第四方面,提供一种文件存储***,包括:路由设备以及存储节点。其中路由设备用于执行如上述第一方面或第一方面中各设计中的方法。
第五方面,提供一种路由设备,包括存储器和处理器,存储器用于存储计算机指令,处理器用于从存储器中调用并运行计算机指令,以实现如上述第一方面或第一方面中各设计中的方法。
第六方面,提供一种计算机可读存储介质,存储介质中存储有计算机程序,当计算机程序被处理器执行时,实现如上述第一方面或第一方面中各设计中的方法。
第七方面,提供一种计算机程序产品,计算机程序产品包括指令,当指令在处理器上运行时,实现如上述第一方面或第一方面中各设计中的方法。
上述第二方面至第七方面的有益效果可以参加第一方面和第一方面中各设计的有益效果,在此不再赘述。
附图说明
图1为本申请提供的一种存储***的架构示意图之一;
图2为本申请提供的一种存储***扩容的方法示意图;
图3为本申请提供的一种存储***的架构示意图之二;
图4为本申请提供的一种存储***的架构示意图之三;
图5为本申请提供的一种信息处理方法的流程示意图;
图6为本申请提供的一种存储***的架构示意图之四;
图7为本申请提供的一种信息处理装置的结构示意图之一;
图8为本申请提供的一种信息处理装置的结构示意图之二。
具体实施方式
下面将结合本实施例中的附图,对本实施例中的技术方案进行描述。其中,为了便于清楚描述本实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。同时,在本实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
为了便于理解本实施例,首先对本实施例所涉及的相关技术进行介绍:
示例性的,如图1所示为本实施例提供的一种存储***的架构示意图。在图1所示的存储***中,可以通过在业务集群110中运行应用程序来实现相应业务的功能。其中,业务集群110中可以包括一个或多个计算设备,该计算设备可以为应用服务器,如图1中示例性的示出两个应用服务器,即应用服务器111和应用服务器112。该应用服务器可以为物理机也可以是虚拟机、容器。该应用服务器包括但不限于桌面电脑、服务器、笔记本电脑以及移动电子设备等等。应用服务器所运行的操作***包括但不限于窗口(Windows)、Linux以及Android等等。需要说明的是,图1中示例性的以业务集群的形式,来描述实现业务功能的计算设备。在实际应用中用于实现业务功能的计算设备也可以是单一的计算设备而不需要由多个设备构成业务集群。
其中,应用服务器可以通过交换机(图中未示出)访问数据中心130以读写数据。其中,交换机只是一个可选设备,应用服务器也可以直接通过网络与数据中心130通信。或者,交换机也可以替换成以太网交换机、InfiniBand交换机、RoCE(RDMA over ConvergedEthernet)交换机等。
数据中心130用于存储实现业务过程中需存储的数据。具体的,数据中心中一个或多个存储设备,这些存储设备构成数据中心的物理存储资源,用于存储数据。
具体的,在物理存储资源中所有的数据都是由0和1构成,而存储在物理存储资源上的一连串01组合对我们来说无法分辨和管理,因此可以用“文件”这个概念对这些数据进行组织,用于区分不同用途的数据,按照不同应用程序要求的结构方式组成不同类型的文件。当文件很多时,可以按照某种划分方式给这些文件分组,每个组文件放在同一目录(也可以称文件夹)里面。而且目录下面除了文件还可以由下一级目录(可以称为子目录或子文件夹),所有的文件、目录形成一个树状结构。这个树状结构即为一个文件***。
示例性的,如图1中,数据中心130中包括用于管理物理存储资源132中数据的文件***131。其中,文件***131中包括一个树状结构,用于对物理存储资源132中数据进行结构化管理、存储。其中,物理存储资源132中可以包括一个或多个存储设备(图中未示出),用于存储数据。
在文件***中,为了便于数据查找,从根目录开始逐级目录往下,一直到文件本身,把这些目录、子目录、文件的名称用特殊的字符(例如Windows\DOS操作***中用“\”,类Unix操作***中用“\”)拼接起来,这样的一串字符称为文件路径。例如,Linux中的“\etc\systemd\system.conf”或者Windows中的“C:\Windows\System32\taskmgr.exe”。路径是访问某个具体的文件的唯一标识。例如,Windows下的D:\data\file.exe就是一个文件的路径,它表示D分区下的data目录下的file.exe文件。
文件***有很多类型,按照文件***所管理的物理存储资源的不同位置,分为集中式文件***和分布式文件***(distributed file system,DFS)。
其中,集中式文件***可以理解为文件***所管理的物理存储资源位于本地节点(即文件***所属节点)上的文件***。
分布式文件***可以理解为文件***管理的物理存储资源不一定直接连接在本地节点上,而是可以通过计算机网络与本地节点相连的文件***,或者分布式文件***可以理解为若干不同的逻辑磁盘分区或卷标组合在一起而形成的完整的有层次的文件***。
示例性的,如图1中,相对于业务集群110而言,文件***131可以理解为一种分布式文件***。业务集群110中的应用服务器可以通过通信接口(也可以理解为文件***131的客户端)与文件***131连接,以便进行数据访问。
分布式文件***为分布在网络上任意位置的资源提供一个逻辑上的树形文件***结构,从而使用户访问分布在网络上的共享文件更加简便。分布式文件***采用客户端\服务器端(Client\Server)架构。数据保存在服务器端,而客户端的应用程序能够像访问本地文件***一样访问位于远程服务器上的文件。在客户端通常都对文件数据进行缓存,以提高读写性能和***可扩展性。其中,按照所采用文件访问协议的不同,常见的分布式文件***(distributed file system,DFS)包括:网络文件***(network file system,NFS)、通用互联网文件***(common internet file system,CIFS)、Lustre文件***以及BeeGFS文件***等等。
进一步的,随着数据中心中存储的数据量的规模越来越大,就需要增加存储设备(即物理存储资源)以扩大数据中心的容量。而由于新旧存储设备所采用的文件***可能不同,这就使得数据中心中可能存在多个相互独立的文件***。这就使得数据中心的运行维护存在诸多不便。
示例性的,假设在数据中心130中原本包括由文件***131a,该文件***131a中存储有两种业务(称为业务A和业务B)的数据。此时,业务A和业务B都通过访问文件***131a管理业务对应的数据。之后,在对数据中心130扩容后,如图2中的(a)所示,在数据中心130中还包括用于管理新增物理存储资源的文件***131b。此时,数据中心130中包括两个相互独立的文件***,即文件***131a和文件***131b。
在对数据中心130扩容文件***131b后,为了使数据中心130中的业务能够使用文件***131b所管理的物理存储资源,就需要将数据中心130中的一个或多个业务对应的数据全部迁移到文件***131b中(也可以理解为将数据全部迁移到文件***131b所管理的物理存储资源),并重新为被迁移业务配置文件***131b。具体的,以下举例介绍两种可能的实现方式:
第一种实现方式中,可以采用不同业务使用不同文件***的方式。具体的,如图2中的(b)所示,可以采用为业务A配置使用文件***131a、业务B配置使用文件***131b的方式,来达到两个文件***分别为业务集群中的业务A和业务B提供服务的目的。示例性的,业务A对应的数据,使用文件***131a对应的根目录“fsA:\”作为文件路径的根目录;业务B对应的数据,使用文件***131b对应的根目录“fsB:\”作为文件路径的根目录。
这种实现方式中,需要将业务B的数据从文件***131a所管理的物理存储资源迁移到文件***131b所管理的物理存储资源中,并且重新为业务B配置文件***131b。因此,一方面,由于在文件***中业务对应的数据往往分布繁杂,所以上述迁移过程非常的复杂和漫长,这一过程中需要考虑设备替换、保护前期投资、业务切换等各方面可能存在的问题。另一方面,对于被迁移的业务而言,由于业务使用的文件***发生改变,因此需要在业务集群侧进行相应的改动,以适用新的文件***。因此,上述设计存在扩容难度大,操作过程复杂的问题。
第二种实现方式中,可以采用将旧文件***对应的数据全部迁移到新的文件***中的方式。具体的,如图2中(c)所示,可以将业务A和业务B对应的数据,全部从从文件***131a所管理的物理存储资源迁移到文件***131b所管理的物理存储资源。此时,业务A和业务B可以按照使用文件***131a的方式来使用文件***131b,因此业务侧可以不感知迁移过程,不需要改动。
可以看出,这种实现方式中,也存在整个迁移过程工作量大,迁移周期长的问题。另外,该实现方式中在数据迁移过程中,还需要占用额外软硬件来利用数据迁移引擎完成迁移。
为了避免由于数据中心中存在多个文件***,而使得数据中心的运行维护存在诸多不便的问题,本实施例中考虑到针对一个数据中心中的多个文件***,可以构建一个统一命名空间(global name space)。其中,多个文件***中的文件路径,均可以映射到该统一命名空间中唯一的一条文件路径上。例如,数据中心中包括两个文件***,两个文件***的根目录分别为“fsA:\”和“fsB:\”,统一命名空间的根目录为“GNS:\”,可以将两个文件***中的文件路径“fsA:\”和“fsB:\”分别映射到统一命名空间的文件路径“GNS:\fsA”和“GNS:\fsB”上。这样一来,业务侧(例如业务集群中的应用服务器)可以使用该统一命名空间中的文件路径来管理数据。当需要访问数据时,可以先根据被访问数据在统一命名空间中的文件路径,确定该被访问数据所对应的文件***以及该文件***中的文件路径;然后利用文件***中的文件路径,确定被访问数据的存储地址,以便完成被访问数据的读\写操作。通过上述构建统一命名空间的这种方式,可以使业务侧与数据中心中的文件***解耦合,即业务侧利用统一命名空间中的文件路径管理数据,对于数据中心中的文件***不感知。这样一来,一方面当数据中心中的文件***发生改变时(例如新增文件***或减少文件***时),仅需要对文件***中文件路径与统一命名空间中文件路径进行修改即可,对业务侧不需要相应改动;另一方面,由于统一命名空间中可以对应多个文件***的文件路径,因此一种业务可以使用多个文件***,配置更加灵活。
下面结合实例,对本实施例所提供技术方案进行介绍。如图3所示,为应用本实施例所提供技术方案的一种存储***架构的示意图。
该存储***中包括:用于实现业务功能的业务集群110和用于存储数据的数据中心130。业务集群110中可以包括一个或多个应用服务器。例如图3中业务集群110包括应用服务器111和应用服务器112。数据中心130中包括多个用于管理不同物理存储资源的文件***,如图3中数据中心130包括文件***131a、文件***131b和文件***131c。
其中,数据中心130中所包括文件***中各文件***,分别可以对应一个或多个存储设备,构成该文件***所管理的物理存储资源。示例性的,以图3中文件***131a为例,文件***131a中可以包括一个或多个元数据节点(如图3中包括元数据节点131a1和元数据节点131a2)以及一个或多个存储节点(如图3中包括存储节点131a3、存储节点131a4和存储节点131a5)。其中,存储节点用于存储实现业务功能的相应数据(为区别元数据,下文将实现业务功能的数据,称为业务数据)。元数据节点用于存储业务数据的元数据,例如业务数据在存储节点中的存储地址等。
另外,对于图3中业务集群110和数据中心130的其他描述,可参照上文对图1和图2中对业务集群110和数据中心130的相应描述内容,在此不再赘述。
另外,该存储***还包括路由网关120,路由网关120用于为业务集群110提供文件访问接口,当接收到来自业务集群的访问请求时,根据访问请求中携带的统一命名空间的文件路径,确定待访问数据所对应的文件***以及文件***中的文件路径,并利用文件***中的文件路径访问文件***。其中,路由网关120具体可以包括用于实现上述功能的路由设备121,以及用于存储实现上述功能所需要的数据的路由配置库122,例如路由配置库122中可以存储有统一命名空间中的文件路径与文件***中的文件路径的对应关系、路由设备121的工作状态信息等等。其中,路由配置库122可以位于路由设备121内部,或者路由配置库122还可以独立于路由设备121而存储在其他设备中,对此本实施例可以不做限制。
另外,在实际应用过程中,在一种实现方式中,路由网关120的功能可以由独立于数据中心中各文件***的硬件设备来实现。在另一种实现方式中,路由网关120可以位于数据中心中文件***中,路由网关120的功能可以由数据中心中文件***中的部分软/硬件装置的来实现。本实施例中,对于路由网关120所属设备在存储***中的位置可以不做限定。
另外,需要说明的是,在实际应用中,存储***中还可以包括多个路由网关,示例性的如图4中包括路由网关120a、路由网关120b和路由网关120c。其中多个路由网关分别位于存储***中不同节点上。多个路由网关存在主从关系,即多个路由网关中包括至少一个主路由网关和至少一个从路由网关。在对数据中心130中存储的数据进行读写操作的场景下,业务集群110可以优先将访问请求发送至主路由网关,以实现数据访问;当主路由网关出现故障或负载超负荷等工作异常时,可以将访问请求发送至从路由网关,以实现数据访问。这样可以提高***可靠性。
下面以图3所述存储***为例,对本实施例所提供技术方案进行详细介绍。需要说明的是,当存储***中存在多个路由网关时,也可以适用本实施例以下技术方案的内容,对此本实施例不做限制。
具体的,在业务集群110运行过程中,当业务集群110向数据中心130中写入或读取数据(下文称为待访问数据)时,本实施例提供一种信息处理方法,如图5所示,包括:
S201、业务集群110向路由网关120发送访问请求。
其中,访问请求中携带有待访问数据对应的第一文件路径。其中,第一文件路径中包括预设的根目录(下文中简称为预设根目录)。
示例性的,上述访问请求可以为远程过程调用(Remote Procedure Call,RPC)请求。
其中,在实际实施过程中,路由网关120可以理解为能够实现本实施例中路由网关120所实现功能的各类设备。具体的,在应用过程中,路由网关120也可以称为“路由器”或“路由设备”等名称。容易理解的,本实施例中对于路由网关的具体名称可以不做限制。
S202、在路由网关120获取到访问请求后,路由网关120根据第一文件路径在预设根目录下的路径,确定与第一文件路径对应的第一文件***中的第二文件路径。
具体的,预设根目录对应的命名空间下可以包括至少两种子路径。其中,至少两种子路径分别对应至少两个不同文件***中的文件路径。即预设根目录对应的命名空间下的一条路径,可以映射到至少两个文件***中的一个文件***中的一个文件路径。
换句话讲,本实施例中通过构建一个统一命名空间(即预设根目录对应的命名空间),并且使数据中心中所包括的多个文件***中的文件路径,映射到该统一命名空间中唯一的一条文件路径上。例如,图3中数据中心130中包括的三个文件***,文件***131a、文件***131b和文件***131c的根目录分别为“fsA:\”、“fsB:\”和“fsC:\”,统一命名空间的预设根目录为“GNS:\”。
然后,当业务集群110向数据中心130中写入或读取待访问数据时,路由网关120在获取到业务集群110发送的携带有包括预设根目录的第一文件路径(也就是说,第一文件路径为上述统一命名空间中的文件路径)后,便可以根据第一文件路径在预设根目录下的路径,确定与第一文件路径对应的第一文件***中的文件路径(即第二文件路径)。
示例性的,假设一份业务数据存储在文件***131a中,该业务数据在文件***131a中的文件路径为“fsA:\Windows\System32\taskmgr.exe”,并且文件***131a中的上述文件路径“fsA:\Windows\System32\taskmgr.exe”映射到预设根目录“GNS:\”下的文件路径为“GNS:\fsA\Windows\System32\taskmgr.exe”。那么当需要访问该业务数据时,可以由业务集群110向路由网关120发送携带文件路径“GNS:\fsA\Windows\System32\taskmgr.exe”(即S202中的第一文件路径)的访问请求,然后路径网关120便可以根据文件路径“GNS:\fsA\Windows\System32\taskmgr.exe”确定文件***131a(即S202中的第一文件路径)中的文件路径“fsA:\Windows\System32\taskmgr.exe”,以便利用文件路径“fsA:\Windows\System32\taskmgr.exe”访问文件***131a完成业务数据的读和/或写操作。
需要说明的是,在S202中路由网关120获取到的访问请求,可以是S201中由业务集群110直接发送给路由网关120的;也可以是路由网关120内部生成的。例如,S202中路由网关120获取到的访问请求,可以是路由网关120接收到业务集群110发送的访问请求后,所生成的用于触发执行S202的任意一种路由网关120的内部指令,对此本实施例可以不做限定。
在一种实现方式中,本实施例中,预设根目录对应的命名空间下包括的至少两种路径分别对应的至少两个文件***,具体包括不同类型的文件***。
其中,不同类型的文件***,可以包括文件访问方式不同、所采用通信协议不同或所使用存储介质的类型不同等的文件***。例如,上述至少两个文件***中包括了:NFS文件***和Lustre文件***,两种类型的文件***。
在上述实现方式中,由于预设根目录对应的命名空间下分别可以对应至少两个不同类型的文件***,也就是说可以通过向路由网关发送包括预设根目录的不同文件路径的这种方式,来访问不同文件***。这样一来,对于一种业务而言,可以根据使用需要,将不同数据存储在不同文件***中,以充分利用不同文件***的特性。
在一种实现方式中,路由网关120中可以预先存储有预设根目录对应的命名空间中的文件路径与各文件***中的文件路径的对应关系,下文中为便于描述将这些对应关系称为挂载信息集合。这样一来,当路由网关120接收到访问请求后,便可以通过查询挂载信息集合的方式,确定访问请求中携带的第一文件路径所对应的文件***中的文件路径。因此,上述S202具体可以包括:
S2021、路由网关120根据第一文件路径在预设根目录下的路径和挂载信息集合,确定与第一文件路径对应的第一文件***中的第二文件路径。
其中,挂载信息集合中,记录有预设根目录对应的命名空间中的文件路径与所对应文件***中的文件路径的对应关系。
进而,在一种实现方式中,如图5所示,在执行S202之前,该方法还包括:
S203、路由网关120建立挂载信息集合。
具体的,当路由网关120包括路由设备121和路由配置库122时,该挂载信息集合可以存储在路由配置库122中,当路由设备121获取到访问请求后可以通过访问路由配置库122中存储的挂载信息集合,进而确定第一文件***中的第二文件路径。
例如,下表1所示为一种挂载信息集合的示例:
表1
其中,“统一命名空间中的文件路径”一栏记录了预设根目录(即“GNS:\”)对应的命名空间中的各种文件路径,“文件***中的文件路径”一栏记录了预设根目录(即“GNS:\”)对应的命名空间中的各种文件路径所对应的文件***中的文件路径。进而,在路由网关120接收到携带第一文件路径的访问请求后,便可以通过在表1的“统一命名空间中的文件路径”一项中查找第一文件路径,从而找到第一文件路径对应的文件***中的文件路径。
需要说明的是,表1仅示例性的以列表形式描述了挂载信息集合中可能记录的对应关系,在实际应用过程中,挂载信息集合也可以采用其他存储方式,例如挂载信息集合可以采用树状结构等结构化的存储方式来存储。
在一种可能的设计中,本实施例中可以采用将预设根目录对应的命名空间下的不同子目录与不同文件***对应,以使得文件***中的任一路径对应与该文件***对应的子目录下与上述路径相同的路径。
其中,需要说明的是,本实施例中为了便于理解,将一个文件***或命名空间中从根目录开始的完整的一条路径称为“文件路径”,将文件路径中一个目录(可以是根目录,也可以是子目录)下的部分路径称为“路径”。下文中类似情况,若无特别说明,可以做相同理解。
例如,可以将文件***131a与预设根目录“GNS:\”下的子目录“GNS:\fsA\”对应,其中文件***131a中的任一路径与子目录“GNS:\fsA\”下的该路径对应。例如某个数据在文件***131a中的文件路径为“fsA:\路径1”,则可知在预设根目录对应的命名空间下,该数据的文件路径为“GNS:\fsA\路径1”。再例如,某个数据在文件***131a中的文件路径为“fsA:\路径2”,则可知在预设根目录对应的命名空间下,该数据的文件路径为“GNS:\fsA\路径2”,以此类推。
示例性的,基于上述设计,挂载信息集合中的内容可以如下表2所示:
表2
文件***所对应的根目录 | 统一命名空间中的子目录 |
fsA:\ | GNS:\fsA |
fsA:\ | GNS:\fsB |
fsA:\ | GNS:\fsC |
其中,“文件***所对应的根目录”一栏记录了各个文件***的根目录,“统一命名空间中的子目录”一栏记录了各个文件***对应的预设根目录对应的命名空间下的子目录。这样一来,在路由网关120接收到携带第一文件路径的访问请求后,例如第一文件路径为“GNS:\fsA\路径1”,便可以通过在表1的“统一命名空间中的子目录”一项中查找第一文件路径中包括的子目录“GNS:\fsA”,从而确定第一文件路径对应的文件***,然后再根据第一文件路径中上述子目录下的路径“\路径1”,确定第一文件路径所对应文件***中的文件路径(即第二文件路径)为“fsA:\路径1”。
基于上述设计,在S203建立挂载信息集合的过程中,S203具体可以包括:
S2031、路由网关120建立预设根目录对应的命名空间下第一子目录与第一文件***的对应关系。
其中,第一子目录下的任一路径对应第一文件***中与该路径相同的路径。
S2032、路由网关120将第一子目录与第一文件***的对应关系,记录在挂载信息集合中。
示例性的,通过分别对图3中数据中心130中的三个文件***,按照S2031-S2032的方式,建立预设根目录对应的命名空间下子目录与文件***的对应关系,并将该对应关系记录在挂载信息集合中,从而可以得到挂载信息集合如上述表2所示。进而便可以在路由网关120接收到携带第一文件路径的访问请求后,利用该挂载信息集合,确定第一文件路径所对应文件***中的文件路径。
另外,如图5所示,该方法还可以包括:
S204、路由网关120根据第二文件路径,确定待访问数据对应的存储地址。
具体的,在通过202确定了与第一文件路径对应的第一文件***中的第二文件路径后,便可以根据第二文件路径确定待访问数据对应的存储地址,进而根据存储地址完成对数据的读写操作。
在一种实现方式中,S204具体可以包括:
S2041、路由网关120根据第二文件路径,确定第一元数据节点。
其中,第一元数据节点可以为第一文件***中的主元数据节点,或者第一文件***中存储有本次待访问数据的元数据的元数据节点。
其中,第一文件***中可以包括一个或多个元数据节点,各元数据节点中记录有文件***中全部或部分数据的元数据,数据的元数据具体包括数据的存储地址和文件路径的对应关系。
示例性的,如图3中,文件***131a(可以为上文第一文件***)中包括元数据节点131a1和元数据节点131a2。其中,元数据节点131a1和元数据节点131a2中记录有文件***131a中全部或部分数据的元数据。
具体的,在一种示例中,元数据节点131a1和元数据节点131a2中记录有文件***131a中全部数据的元数据;此时元数据节点131a1和元数据节点131a2可以为主备关系;在需要访问文件***131a中的数据的情况下,可以优先选择主元数据节点(例如元数据节点131a1)来获取数据的存储地址,当主元数据节点工作异常时,则选择从元数据节点(例如元数据节点131a2)来获取数据的存储地址。该示例中上述第一元数据节点可以为元数据节点131a1(即主元数据节点)。在另一种示例中,元数据节点131a1和元数据节点131a2中记录有文件***131a中部分数据的元数据;在需要访问文件***131a中的数据的情况下,可以先确定本次访问的数据的元数据在哪个元数据节点上,然后再从该元数据节点获取数据的存储地址。该示例中上述第一元数据节点可以为元数据节点131a1和元数据节点131a2中存储有本次待访问数据的元数据的元数据节点。
在一种可能的设计中,上述S2041具体可以包括:路由网关120根据第二文件路径以及节点信息集合,确定第一文件***中的第一元数据节点。
其中,节点信息集合中,记录有第一文件***中各元数据节点的节点信息。
具体的,元数据节点的节点信息,可以包括该元数据节点的访问地址(例如IP地址)、该元数据节点的主从类型(主元数据节点/从元数据节点)、该元数据节点上记录的业务数据的元数据的范围(即该元数据节点上记录有哪些业务数据的元数据)等等。换句话讲,上述元数据节点的节点信息,具体可以包括用于确定本次访问请求所对应的元数据节点的各种信息。上述仅罗列了几种常用的信息类型(即元数据节点的访问地址、该元数据节点为主元数据节点还是从元数据节点和该元数据节点上记录的业务数据的元数据的范围)。对于上述元数据节点的节点信息中所包括信息的具体种类,本实施例可以不做限制。
另外,在一种可能的设计中,为了使得路由网关120可以根据第二文件路径,确定本次访问对应的第一文件***中的元数据节点,如图5所示,本实施例中在S2041之前还可以包括:
S205、路由网关120获取上述至少两个文件***中各文件***中元数据节点的节点信息,建立节点信息集合。具体的,元数据节点的节点信息,可以包括该元数据节点的访问地址(例如IP地址)、该元数据节点为主元数据节点还是从元数据节点、该元数据节点上记录的业务数据的元数据的范围(即该元数据节点上记录有哪些业务数据的元数据)等等。
在通过S2041确定出第一文件***中的第一元数据节点后,该方法还包括:
S2042、路由网关120向第一元数据节点发送携带第二文件路径的地址请求。
其中,第一元数据节点在接收到该地址请求后,可以根据第二文件路径确定待访问数据在第一文件***中的存储地址,然后将该存储地址反馈给路由网关120。进而,该方法还包括:
S2043、路由网关120接收第一元数据节点发送的待访问数据的存储地址。
另外,在路由网关120通过上述S204的步骤,确定待访问数据的存储地址后,如图5所示,该方法还可以包括:
S206、路由网关120将待访问数据的存储地址发送至业务集群110。
具体的,在业务集群110接收到待访问数据的存储地址后,便可以根据待访问数据的存储地址,访问第一文件***中的存储节点。以完成待访问数据的读/写操作。
另外,在一种实现方式中,如图5所示,该方法还包括:
S207、路由网关120当第一文件***中的元数据节点的节点信息发生改变时,生成日志(log)信息,并更新节点信息集合。
其中,log信息中记录有上述节点信息的改变内容。
具体的,一方面,考虑到随着文件***的运行,文件***中元数据节点的节点信息可能发生变化。例如,元数据节点的访问地址发生改变,或者元数据节点的主从类型发生改变,或者元数据节点上记录的业务数据的元数据的范围发生改变。因此,当元数据节点的节点信息发生改变后,为了保证文件***中数据的正常访问,需要更新路由网关120中的节点信息集合,即保持节点信息集合与文件***中元数据节点的节点信息的同步。另一方面,考虑到在元数据节点的节点信息发生改变时,可能会有同步节点信息集合失败的情况发生。例如,元数据节点的节点信息已经改变,但路由网关没有相应更新节点信息集合的这种情况。因此,本实施例中在第一文件***中的元数据节点的节点信息发生改变时,可以生成日志信息并更新节点信息集合。以便在节点信息集合更新失败后,可以通过触发日志回滚的方式,重新更新节点信息集合。
示例性的,路由网关120可以周期性检测节点信息集合中存储的节点信息与文件***中元数据节点的节点信息是否一致。当检测到节点信息集合中存储的节点信息与文件***中元数据节点的节点信息存在不一致的情况时,触发日志回滚的方式,重新更新节点信息集合。
上述实现方式中,通过当第一文件***中的元数据节点的节点信息发生改变时,生成日志信息的方式,从而当出现节点信息集合中的节点信息与元数据节点的实际节点信息不一致的情况时,可以通过触发日志回滚的方式,重新更新节点信息集合,以提高***稳定性。
上述实施例中,主要以路由网关120与数据中心130中的文件***相互独立的场景为例,对本实施例所提供的信息处理方法进行介绍。下面对路由网关120位于数据中心130的文件***中的存储***的结构进行介绍:
具体的,在路由网关120位于数据中心130中的文件***中的场景下,存储***的架构如图6所示。
其中,该存储***中包括用于实现业务功能的业务集群310和用于存储数据的数据中心330。其中,业务集群310中可以包括一个或多个应用服务器。例如图6中业务集群310包括应用服务器311和应用服务器312。其中,对于业务集群310以及业务集群310中的一个或多个应用服务器的功能和工作过程可参照上文业务集群110的相关描述,在此不再赘述。
另外,数据中心330中包括多个用于管理不同物理存储资源的文件***,如图6中数据中心330包括文件***331a、文件***331b和文件***331c。其中,文件***331a、文件***331b和文件***331c之间可以进行通信,具体通信方式本实施例可以不做限定。
其中,文件***331c中包括路由网关331c1。具体的,当业务集群310需要访问数据中心330以进行读/写数据操作时,业务集群310向文件***331c中的路由网关331c1发送携带包括预设根目录的文件路径的访问请求,路由网关331c1在接收到该访问请求后,可以按照上述图5所示信息处理方法,获取待访问数据的存储地址,然后路由网关将该存储地址发送至业务集群310,以便业务集群310访问该存储地址,完成读写操作。其中,路由网关331c1的具体功能可以由文件***中一个或多个存储设备的部分或全部硬件部件实现。
另外,除与路由网关331a1相关的部分外,对于数据中心330包括的各文件***的结构和功能,可参照上文对数据中心130中各文件***的描述,在此不再赘述。
下面对图6所示存储***的运行过程进行介绍:
示例性的,在数据中心330中还未扩容文件***331c时,即数据中心330中仅包括文件***331a和文件***331b。此时业务集群310可以按照相关技术的方式访问文件***331a和文件***331b,例如业务集群310可以通过文件***331a和文件***331b对应的通信接口,分别向文件***331a和文件***331b发送该文件***中的文件路径,以访问文件***中的数据。
然后,可以通过以下S401-S404的方式,将文件***331c添加至数据中心330中:
S401、安装部署文件***331c对应的硬件设备,创建文件***331c的命名空间。
S402、在业务集群310侧,添加分配给文件***331c的业务。
S403、在文件***331c中配置路由网关331c1,建立挂载信息集合。
其中,挂载信息集合中包括文件***331a和文件***331b中的文件路径与文件***331c的命名空间下的文件路径的对应关系。
例如,将文件***331a和文件***331b中的文件路径,分别映射到文件***331c的根目录(即文件***331c的命名空间下)下的一个子目录下。
S404、将文件***331a和文件***331b的路由策略配置为转发模式,以使得文件***331a和文件***331b将接收到的来自于业务集群310的访问请求全部转发至文件***331c,具体可以是转发到文件***331c中的路由网关331c1中。
在通过上述方式将文件***331c添加至数据中心330后,便可以通过业务集群310发送携带文件***331c的命名空间下的文件路径的访问请求,然后路由网关331c1按照图5所示的方法确定待访问数据的存储地址(其中,该存储地址可以是文件***331a、文件***331b或文件***331c中的存储地址)并将存储地址反馈给业务集群310,以便业务集群310完成读/写操作。
另外,本实施例提供一种信息处理装置,该信息处理装置可以执行本实施例中的部分或全部步骤,例如该信息处理装置能够执行上述方法中路由网关所执行的各步骤。这些步骤或操作仅是示例,本实施例中信息处理装置还可以执行其他操作或执行上述部分或全部步骤的变形。此外,各个步骤可以按照本申请实施例呈现的不同的顺序来执行,并且有可能并非要执行本申请实施例中的全部操作。
可以理解的是,为了实现上述实施例中功能,信息处理装置包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的模块及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。
如图7所示为本实施例提供的一种信息处理装置的结构示意图。该信息处理装置可以用于实现上述方法实施例中部分或全部步骤的功能,因此能够实现上述方法实施例所具备的有益效果。示例性的,在本实施例中,该信息处理装置可以包括路由设备;再示例性的,当路由网关的功能集成在文件***中时,该信息处理装置还可以包括文件***中的存储设备中的部分或全部硬件部件。
如图7所示,该信息处理装置50包括获取模块501和处理单元502中的一项或多项。该信息处理装置50用于实现图5所对应的方法实施例中一项或多项步骤的功能。
例如,当信息处理装置50用于实现图5所示的方法时,获取模块501用于执行S201。处理模块502用于执行S202-S207中的一项或多项。
相关上述获取模块501和处理模块502更详细的描述,可以参照上述图5所对应的方法实施例中相关描述,在此不再赘述。
图8为本实施例提供的另一种信息处理装置的结构示意图。该信息处理装置60可以为芯片或片上***。其中,该信息处理装置60可以包括:处理器601、通信线路606、内存603以及至少一个通信接口602中的部分或全部部件。
其中,处理器601用于执行本实施例所提供的信息处理方法。
具体的,处理器601可以包含通用中央处理器(central processing unit,CPU),处理器601还可以包含微处理器、现场可编程逻辑门阵列(Field Programmable GateArray,FPGA)、数字信号处理器(digital signal processing,DSP)或者特定应用集成电路(application-specific integrated circuit,ASIC)、或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
在具体实现中,作为一种实施例,处理器601可以包括一个或多个CPU,例如图8中的CPU0和CPU1。
在具体实现中,作为一种实施例,装置60可以包括多个处理器,例如图8中的处理器601和处理器605。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理例如计数据(算机程序指令)的处理核。
另外,内存603可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。内存603可以是独立存在,通过通信线路606与处理器601相连接。内存603也可以和处理器601集成在一起。
其中,内存603存储有计算机指令。其中,如图8所示,在内存603中存储的计算机指令,可以包括用于实现上述获取模块501和处理模块502的功能的软件模块。处理器601可以通过执行内存603中存储的计算机指令,用于执行本实施例所提供的信息处理方法。
可选的,本实施例中的计算机执行指令也可以称之为应用程序代码,本实施例对此不作具体限定。
另外,通信接口602,也可称为接口。通信接口602使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local area networks,WLAN)等。
另外,通信线路606用于将信息处理装置60中各部件连接。具体的,通信线路606可以包括数据总线、电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为通信线路606。
在具体实现中,作为一种实施例,信息处理装置60还可以包括存储介质604。存储介质604用于存储计算机指令以及实现本实施例技术方案的各种数据。以便信息处理装置60在执行本实施例上述信息处理方法时,将存储介质604中存储的计算机指令和各种数据加载至内存603中,以使得处理器601可以通过执行内存603中存储的计算机指令,用于执行本实施例所提供的信息处理方法。
应理解,根据本实施例的信息处理装置60可对应于本实施例中的信息处理装置50,并可以对应于执行根据本实施例的信息处理方法的相应主体,并且信息处理装置60中的各个模块的上述和其它操作和/或功能分别为了实现图5中的各个方法的相应流程,为了简洁,在此不再赘述。
作为一种可能的实施例,本实施例还提供一种文件存储***,该文件存储***中包括路由网关以及存储节点。其中,路由网关用于执行上述方法实施例中的部分或全部步骤,存储节点用于存储实现业务所需要的数据。示例性的,该文件存储***可以为图6中的文件***331c。
本实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM、闪存、ROM、PROM、EPROM、EEPROM、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于网络设备或终端设备中。当然,处理器和存储介质也可以作为分立组件存在于网络设备或终端设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,SSD。
在本实施例中,如果没有特殊说明以及逻辑冲突,不同的实现方式之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
本实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上,其它量词与之类似。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。此外,对于单数形式“a”,“an”和“the”出现的元素(element),除非上下文另有明确规定,否则其不意味着“一个或仅一个”,而是意味着“一个或多于一个”。例如,“a device”意味着对一个或多个这样的device。再者,至少一个(at least one of).......”意味着后续关联对象中的一个或任意组合,例如“A、B和C中的至少一个”包括A,B,C,AB,AC,BC,或ABC。在本实施例的文字描述中,字符“/”,一般表示前后关联对象是一种“或”的关系;在本实施例的公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
可以理解的是,在本实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。
Claims (17)
1.一种信息处理方法,其特征在于,包括:
获取访问请求,所述访问请求中携带有待访问数据对应的第一文件路径,所述第一文件路径包括预设的根目录;
根据所述第一文件路径在所述预设的根目录下的路径,确定与所述第一文件路径对应的第一文件***中的第二文件路径;其中,所述预设的根目录对应的命名空间下包括至少两种子路径,所述至少两种子路径分别对应至少两个不同文件***中的文件路径;
根据所述第二文件路径,确定所述待访问数据的存储地址。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一文件路径在所述预设的根目录下的路径,确定与所述第一文件路径对应的第一文件***中的第二文件路径,包括:
根据所述第一文件路径在所述预设的根目录下的路径和挂载信息集合,确定所述待访问数据在所述第一文件***中的所述第二文件路径;
其中,所述挂载信息集合中,记录有所述预设的根目录对应的命名空间中的文件路径与所对应文件***中的文件路径的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
建立所述预设的根目录对应的命名空间下第一子目录与所述第一文件***的对应关系;其中,所述第一子目录下的任一路径对应所述第一文件***中的所述路径;
将所述第一子目录与所述第一文件***的对应关系,记录在所述挂载信息集合中。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述第二文件路径,确定所述待访问数据对应的存储地址,包括:
根据所述第二文件路径,确定第一元数据节点;
向所述第一元数据节点发送携带所述第二文件路径的地址请求;
接收所述第一元数据节点发送的所述待访问数据对应的存储地址。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述第一文件***中的元数据节点的节点信息发生改变时,生成日志信息,并更新所述节点信息集合;所述日志信息中记录有所述节点信息的改变内容。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述至少两个不同文件***中,包括:不同类型的至少两种文件***。
7.一种信息处理装置,其特征在于,包括:
获取模块,用于获取访问请求,所述访问请求中携带有待访问数据对应的第一文件路径,所述第一文件路径包括预设的根目录;
处理模块,用于根据所述第一文件路径在所述预设的根目录下的路径,确定与所述第一文件路径对应的第一文件***中的第二文件路径;其中,所述预设的根目录对应的命名空间下包括至少两种子路径,所述至少两种子路径分别对应至少两个不同文件***中的文件路径;
所述处理模块,用于根据所述第二文件路径,确定所述待访问数据的存储地址。
8.根据权利要求7所述的装置,其特征在于,所述处理模块,用于根据所述第一文件路径在所述预设的根目录下的路径,确定与所述第一文件路径对应的第一文件***中的第二文件路径,包括:
所述处理模块,用于根据所述第一文件路径在所述预设的根目录下的路径和挂载信息集合,确定所述待访问数据在所述第一文件***中的所述第二文件路径;
其中,所述挂载信息集合中,记录有所述预设的根目录对应的命名空间中的文件路径与所对应文件***中的文件路径的对应关系。
9.根据权利要求8所述的装置,其特征在于,所述处理模块,还用于建立所述预设的根目录对应的命名空间下第一子目录与所述第一文件***的对应关系;其中,所述第一子目录下的任一路径对应所述第一文件***中的所述路径;
所述处理模块,还用于将所述第一子目录与所述第一文件***的对应关系,记录在所述挂载信息集合中。
10.根据权利要求7-9任一项所述的装置,其特征在于,所述处理模块,用于根据所述第二文件路径,确定所述待访问数据对应的存储地址,包括:
所述处理模块,用于根据所述第二文件路径,确定第一元数据节点;
所述处理模块,用于向所述第一元数据节点发送携带所述第二文件路径的地址请求;
所述处理模块,用于接收所述第一元数据节点发送的所述待访问数据对应的存储地址。
11.根据权利要求10所述的装置,其特征在于,所述处理模块,还用于当所述第一文件***中的元数据节点的节点信息发生改变时,生成日志信息,并更新所述节点信息集合;所述日志信息中记录有所述节点信息的改变内容。
12.根据权利要求7-11任一项所述的装置,其特征在于,所述至少两个不同文件***中,包括:不同类型的至少两种文件***。
13.一种存储设备,其特征在于,包括:处理器和接口,所述处理器通过所述接口接收或发送数据,所述处理器用于实现如权利要求1-6中任一项所述的方法。
14.一种文件存储***,其特征在于,包括:路由设备以及存储节点;其中所述路由设备用于执行如权利要求1-6任一项所述的方法。
15.一种路由设备,其特征在于,包括存储器和处理器,所述存储器用于存储计算机指令,所述处理器用于从所述存储器中调用并运行所述计算机指令,以实现如权利要求1-6中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,当所述计算机程序被处理器执行时,实现如权利要求1-6任一项所述的方法。
17.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,当所述指令在处理器上运行时,实现如权利要求1-6任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111051925.5A CN115774703A (zh) | 2021-09-08 | 2021-09-08 | 信息处理方法及装置 |
PCT/CN2022/115503 WO2023036005A1 (zh) | 2021-09-08 | 2022-08-29 | 信息处理方法及装置 |
EP22866471.0A EP4390715A1 (en) | 2021-09-08 | 2022-08-29 | Information processing method and apparatus |
US18/598,632 US20240211435A1 (en) | 2021-09-08 | 2024-03-07 | Information processing method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111051925.5A CN115774703A (zh) | 2021-09-08 | 2021-09-08 | 信息处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115774703A true CN115774703A (zh) | 2023-03-10 |
Family
ID=85388203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111051925.5A Pending CN115774703A (zh) | 2021-09-08 | 2021-09-08 | 信息处理方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240211435A1 (zh) |
EP (1) | EP4390715A1 (zh) |
CN (1) | CN115774703A (zh) |
WO (1) | WO2023036005A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541085B (zh) * | 2023-07-05 | 2023-09-12 | 成都阿加犀智能科技有限公司 | 一种Android/Linux融合方法、装置、设备及存储介质 |
CN117061615B (zh) * | 2023-10-09 | 2024-01-16 | 杭州优云科技有限公司 | 缓存路径获取方法、装置、计算机设备及存储介质 |
CN117290302B (zh) * | 2023-11-23 | 2024-02-06 | 合芯科技(苏州)有限公司 | 目录分离方法、装置、计算机设备和存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070214384A1 (en) * | 2006-03-07 | 2007-09-13 | Manabu Kitamura | Method for backing up data in a clustered file system |
JP4772569B2 (ja) * | 2006-04-07 | 2011-09-14 | 株式会社日立製作所 | 共通名前空間においてディレクトリ単位のマイグレーションを実行するシステム及び方法 |
CN100483420C (zh) * | 2007-11-09 | 2009-04-29 | 清华大学 | 基于快照的细粒度文件与目录版本管理方法 |
US11126740B2 (en) * | 2016-11-04 | 2021-09-21 | Microsoft Technology Licensing, Llc | Storage isolation for containers |
CN113296792B (zh) * | 2020-07-10 | 2022-04-12 | 阿里巴巴集团控股有限公司 | 存储方法、装置、设备、存储介质和*** |
CN113312311A (zh) * | 2020-07-27 | 2021-08-27 | 阿里巴巴集团控股有限公司 | 命名空间的处理方法及装置 |
-
2021
- 2021-09-08 CN CN202111051925.5A patent/CN115774703A/zh active Pending
-
2022
- 2022-08-29 WO PCT/CN2022/115503 patent/WO2023036005A1/zh active Application Filing
- 2022-08-29 EP EP22866471.0A patent/EP4390715A1/en active Pending
-
2024
- 2024-03-07 US US18/598,632 patent/US20240211435A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240211435A1 (en) | 2024-06-27 |
WO2023036005A1 (zh) | 2023-03-16 |
EP4390715A1 (en) | 2024-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11153380B2 (en) | Continuous backup of data in a distributed data store | |
CN109783438B (zh) | 基于librados的分布式NFS***及其构建方法 | |
CN109684282B (zh) | 一种构建元数据缓存的方法及装置 | |
CN106874383B (zh) | 一种分布式文件***元数据的解耦合分布方法 | |
CN115774703A (zh) | 信息处理方法及装置 | |
US9460008B1 (en) | Efficient garbage collection for a log-structured data store | |
CN107797767B (zh) | 一种基于容器技术部署分布式存储***及其存储方法 | |
US20080235300A1 (en) | Data migration processing device | |
WO2016202199A1 (zh) | 分布式文件***及其文件元信息管理方法 | |
CN111078121A (zh) | 一种分布式存储***数据迁移方法、***、及相关组件 | |
CN103237046A (zh) | 支持混合云存储应用的分布式文件***及实现方法 | |
CN109407975B (zh) | 写数据方法与计算节点以及分布式存储*** | |
CN114564339A (zh) | 一种磁盘镜像文件跨平台迁移方法及*** | |
CN113032356A (zh) | 一种客舱分布式文件存储***及实现方法 | |
CN112583760B (zh) | 一种对象存储的访问方法、装置、设备和计算机存储介质 | |
US8380806B2 (en) | System and method for absolute path discovery by a storage virtualization system | |
CN113391875A (zh) | 容器部署方法与装置 | |
CN114610680A (zh) | 分布式文件***元数据管理方法、装置、设备及存储介质 | |
JP2015114913A (ja) | ストレージ装置、ストレージシステム及びデータ管理プログラム | |
CN111225003A (zh) | 一种nfs节点配置方法和装置 | |
CN113853778B (zh) | 一种文件***的克隆方法及装置 | |
CN114443598A (zh) | 写数据方法、装置、计算机设备及存储介质 | |
KR20100062442A (ko) | 파일 스토리지 액세스 시스템 및 방법 | |
CN114528260A (zh) | 文件访问请求的处理方法、电子设备及计算机程序产品 | |
CN116760913B (zh) | k8s集群协议转换平台配置下发方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |