WO2023036005A1 - 信息处理方法及装置 - Google Patents

信息处理方法及装置 Download PDF

Info

Publication number
WO2023036005A1
WO2023036005A1 PCT/CN2022/115503 CN2022115503W WO2023036005A1 WO 2023036005 A1 WO2023036005 A1 WO 2023036005A1 CN 2022115503 W CN2022115503 W CN 2022115503W WO 2023036005 A1 WO2023036005 A1 WO 2023036005A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
path
file system
data
file path
Prior art date
Application number
PCT/CN2022/115503
Other languages
English (en)
French (fr)
Inventor
秦立都
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023036005A1 publication Critical patent/WO2023036005A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/185Hierarchical storage management [HSM] systems, e.g. file migration or policies thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Definitions

  • the present application relates to the field of data storage, and in particular to an information processing method and device.
  • the file systems (file system, FS) used by the new equipment and the old equipment may be independent of each other. This requires the data corresponding to the business to be migrated from the old file system to the new file system so that the business can use the new file system.
  • the entire migration process requires a lot of manpower and material resources.
  • the present application provides an information processing method and device, which solve the problems of complicated file system expansion process and difficult management.
  • an information processing method including: obtaining an access request, the access request carrying a first file path corresponding to data to be accessed, and the first file path includes a preset root directory. According to the path of the first file path under the preset root directory, the second file path in the first file system corresponding to the first file path is determined.
  • the namespace corresponding to the preset root directory includes at least two subpaths, and the at least two subpaths respectively correspond to file paths in at least two different file systems.
  • a unified namespace that is, a preset namespace corresponding to a directory
  • the file paths in multiple file systems can be mapped to a unique file path in the unified namespace.
  • the business side is decoupled from the file system in the data center, that is, the business side uses the file path in the unified namespace to manage data, and is not aware of the file system in the data center.
  • the file system in the data center changes (for example, when adding a file system or reducing a file system)
  • No corresponding changes are required on the business side; on the other hand, since the unified namespace can correspond to the file paths of multiple file systems, one business can use multiple file systems, making the configuration more flexible.
  • determining the second file path in the first file system corresponding to the first file path according to the path of the first file path under the preset root directory includes: according to the first file path The path under the preset root directory and the set of mounting information determine the second file path of the data to be accessed in the first file system.
  • the mounting information set the corresponding relationship between the file path in the namespace corresponding to the preset root directory and the file path in the corresponding file system is recorded.
  • the corresponding relationship between the file path in the namespace corresponding to the default root directory and the file path in each file system can be stored in advance, so that the access request can be determined by querying the mount information set.
  • the method further includes: establishing a corresponding relationship between the first subdirectory under the namespace corresponding to the preset root directory and the first file system; wherein, any path under the first subdirectory Corresponds to the path in the first file system.
  • the corresponding relationship between the first subdirectory and the first file system is recorded in the mounting information set.
  • the file system 131a may correspond to the subdirectory "GNS: ⁇ fsA ⁇ " under the default root directory "GNS: ⁇ ”, wherein any path in the file system 131a is associated with the subdirectory "GNS: ⁇ fsA ⁇ ” corresponding to this path.
  • the file path of a certain data in the file system 131a is "fsA: ⁇ path1”, then it can be seen that under the namespace corresponding to the default root directory, the file path of the data is "GNS: ⁇ fsA ⁇ path1".
  • determining the storage address corresponding to the data to be accessed according to the second file path includes: determining the first metadata node according to the second file path. An address request carrying the second file path is sent to the first metadata node. Receive the storage address corresponding to the data to be accessed sent by the first metadata node.
  • the method further includes: when the node information of the metadata node in the first file system changes, generating log information and updating the node information set; the change content of the node information is recorded in the log information .
  • log information when the node information of the metadata node in the first file system changes, log information may be generated and the node information set may be updated. So that after the update of the node information set fails, the node information set can be re-updated by triggering log rollback.
  • the at least two different file systems include: at least two file systems of different types.
  • the namespace corresponding to the default root directory can correspond to at least two different types of file systems, that is to say, different types of file systems can be accessed through different file paths under the default root directory. In this way, for a business, different data can be stored in different file systems according to usage requirements, so as to make full use of the characteristics of different file systems.
  • an information processing device including: an acquisition module, configured to acquire an access request, where the access request carries a first file path corresponding to the data to be accessed, and the first file path includes a preset root directory.
  • a processing module configured to determine the second file path in the first file system corresponding to the first file path according to the path of the first file path under the preset root directory; wherein, the namespace corresponding to the preset root directory
  • the following includes at least two sub-paths, and the at least two sub-paths respectively correspond to file paths in at least two different file systems.
  • the processing module is configured to determine the storage address of the data to be accessed according to the second file path.
  • the processing module is configured to determine the second file path in the first file system corresponding to the first file path according to the path of the first file path under the preset root directory, including: processing A module configured to determine the second file path of the data to be accessed in the first file system according to the path of the first file path under the preset root directory and the set of mounting information. Wherein, in the mounting information set, the corresponding relationship between the file path in the namespace corresponding to the preset root directory and the file path in the corresponding file system is recorded.
  • the processing module is also used to establish the corresponding relationship between the first subdirectory under the namespace corresponding to the default root directory and the first file system; wherein, any path under the first subdirectory corresponds to The path in the first file system.
  • the processing module is further configured to record the corresponding relationship between the first subdirectory and the first file system in the mounting information set.
  • the processing module is configured to determine the storage address corresponding to the data to be accessed according to the second file path, including: the processing module is configured to determine the first metadata node according to the second file path.
  • a processing module configured to send an address request carrying a second file path to the first metadata node.
  • the processing module is configured to receive the storage address corresponding to the data to be accessed sent by the first metadata node.
  • the processing module is further configured to generate log information and update the node information set when the node information of the metadata node in the first file system changes.
  • the change content of the node information is recorded in the log information.
  • the at least two different file systems include: at least two file systems of different types.
  • a storage device including: a processor and an interface, the processor receives or sends data through the interface, and the processor is configured to implement the method in the above first aspect or each design in the first aspect.
  • a file storage system including: a routing device and a storage node.
  • the routing device is configured to execute the method in the above first aspect or in each design in the first aspect.
  • a routing device including a memory and a processor, the memory is used to store computer instructions, and the processor is used to call and execute computer instructions from the memory, so as to realize the above-mentioned first aspect or each design in the first aspect Methods.
  • a computer-readable storage medium is provided.
  • a computer program is stored in the storage medium.
  • the computer program is executed by a processor, the above-mentioned first aspect or the method in each design of the first aspect is implemented.
  • a computer program product includes instructions, and when the instructions are run on a processor, implement the method in the above first aspect or each design in the first aspect.
  • FIG. 1 is one of the schematic diagrams of the architecture of a storage system provided by the present application
  • FIG. 2 is a schematic diagram of a storage system expansion method provided by the present application.
  • FIG. 3 is the second schematic diagram of the architecture of a storage system provided by the present application.
  • FIG. 4 is the third schematic diagram of the architecture of a storage system provided by the present application.
  • FIG. 5 is a schematic flowchart of an information processing method provided by the present application.
  • FIG. 6 is a fourth schematic diagram of a storage system architecture provided by the present application.
  • FIG. 7 is one of the structural schematic diagrams of an information processing device provided by the present application.
  • FIG. 8 is the second structural schematic diagram of an information processing device provided by the present application.
  • words such as “first” and “second” are used to distinguish the same or similar items with basically the same function and effect.
  • words such as “first” and “second” do not limit the number and execution order, and words such as “first” and “second” do not necessarily limit the difference.
  • words such as “exemplary” or “for example” are used as examples, illustrations or descriptions. Any embodiment or design described as “exemplary” or “for example” in this embodiment should not be interpreted as being more preferred or more advantageous than other embodiments or designs.
  • the use of words such as “exemplary” or “such as” is intended to present related concepts in a concrete manner for easy understanding.
  • FIG. 1 is a schematic structural diagram of a storage system provided in this embodiment.
  • the corresponding service functions can be realized by running application programs in the service cluster 110 .
  • the service cluster 110 may include one or more computing devices, and the computing devices may be application servers, for example, two application servers are shown in FIG. 1 , that is, an application server 111 and an application server 112 .
  • the application server can be a physical machine or a virtual machine or a container.
  • the application server includes, but is not limited to, desktop computers, servers, notebook computers, mobile electronic devices, and the like.
  • the operating systems run by the application server include but are not limited to windows (Windows), Linux, Android, and so on.
  • FIG. 1 computing devices that implement service functions are described in the form of service clusters. In practical applications, the computing device used to implement business functions may also be a single computing device instead of a business cluster composed of multiple devices.
  • the application server can access the data center 130 through a switch (not shown in the figure) to read and write data.
  • the switch is only an optional device, and the application server can also directly communicate with the data center 130 through the network.
  • the switch can also be replaced with an Ethernet switch, InfiniBand switch, RoCE (RDMA over Converged Ethernet) switch, etc.
  • the data center 130 is used to store data that needs to be stored during the business process.
  • one or more storage devices in the data center constitute physical storage resources of the data center and are used to store data.
  • the data center 130 includes a file system 131 for managing data in a physical storage resource 132 .
  • the file system 131 includes a tree structure for structured management and storage of data in the physical storage resource 132 .
  • the physical storage resource 132 may include one or more storage devices (not shown in the figure) for storing data.
  • DFS distributed file system
  • the centralized file system may be understood as a file system in which physical storage resources managed by the file system are located on a local node (ie, the node to which the file system belongs).
  • a distributed file system can be understood as a file system in which the physical storage resources managed by the file system are not necessarily directly connected to the local node, but can be connected to the local node through a computer network, or a distributed file system can be understood as several different logical disks A complete hierarchical file system formed by combining partitions or volume labels.
  • the file system 131 can be understood as a distributed file system.
  • the application server in the service cluster 110 can be connected to the file system 131 through a communication interface (also can be understood as a client of the file system 131 ) for data access.
  • the distributed file system provides a logical tree file system structure for resources distributed anywhere on the network, making it easier for users to access shared files distributed on the network.
  • the distributed file system adopts a client ⁇ server (Client ⁇ Server) architecture.
  • the data is stored on the server side, and the client's application can access the files located on the remote server as if accessing the local file system.
  • File data is usually cached on the client side to improve read and write performance and system scalability.
  • the common distributed file system includes: network file system (network file system, NFS), common internet file system (common internet file system, CIFS), Luster file system and BeeGFS file system and so on.
  • the data center 130 originally includes a file system 131a, and the file system 131a stores data of two services (referred to as service A and service B). At this time, both business A and business B manage the data corresponding to the business by accessing the file system 131a.
  • the data center 130 also includes a file system 131b for managing newly added physical storage resources.
  • the data center 130 includes two mutually independent file systems, namely, the file system 131a and the file system 131b.
  • the file system 131a for service A and the file system 131b for service B can be configured and used to achieve that the two file systems are respectively service A and service in the service cluster.
  • the data corresponding to business A uses the root directory "fsA: ⁇ " corresponding to the file system 131a as the root directory of the file path; the data corresponding to business B uses the root directory "fsB: ⁇ " corresponding to the file system 131b as the root directory of the file path.
  • the root directory of the file path is the root directory "fsA: ⁇ " corresponding to the file system 131a.
  • the data of business B needs to be migrated from the physical storage resources managed by the file system 131a to the physical storage resources managed by the file system 131b, and the file system 131b is reconfigured for the business B. Therefore, on the one hand, because the data corresponding to the business in the file system is often distributed in a complicated manner, the above-mentioned migration process is very complicated and lengthy. During this process, it is necessary to consider possible problems in various aspects such as equipment replacement, protection of initial investment, and business switching. . On the other hand, for the migrated business, since the file system used by the business changes, corresponding changes need to be made on the business cluster side to adapt to the new file system. Therefore, the above-mentioned design has the problems of great difficulty in capacity expansion and complicated operation process.
  • a manner of migrating all the data corresponding to the old file system to the new file system may be adopted. Specifically, as shown in (c) in FIG. 2 , all the data corresponding to business A and business B can be migrated from the physical storage resources managed by the file system 131a to the physical storage resources managed by the file system 131b. At this time, business A and business B can use the file system 131b in the same manner as the file system 131a, so the business side does not need to be aware of the migration process and does not need to be modified.
  • a unified namespace can be constructed for multiple file systems in a data center. name space).
  • the file paths in multiple file systems can be mapped to a unique file path in the unified namespace.
  • the data center includes two file systems, the root directories of the two file systems are "fsA: ⁇ " and "fsB: ⁇ ", and the root directory of the unified namespace is "GNS: ⁇ ".
  • the file paths "fsA: ⁇ ” and “fsB: ⁇ ” in the system are respectively mapped to the file paths "GNS: ⁇ fsA” and "GNS: ⁇ fsB” in the unified namespace.
  • the business side (such as the application server in the business cluster) can use the file path in the unified namespace to manage data.
  • accessing data When accessing data is required, first determine the file system corresponding to the accessed data and the file path in the file system according to the file path of the accessed data in the unified namespace; then use the file path in the file system to determine The storage address of the accessed data, in order to complete the read/write operation of the accessed data.
  • the business side can be decoupled from the file system in the data center, that is, the business side uses the file path in the unified namespace to manage data, and is not aware of the file system in the data center.
  • the file system in the data center changes (for example, when adding a file system or reducing a file system)
  • No corresponding changes are required on the business side; on the other hand, since the unified namespace can correspond to the file paths of multiple file systems, one business can use multiple file systems, making the configuration more flexible.
  • FIG. 3 it is a schematic diagram of a storage system architecture applying the technical solution provided by this embodiment.
  • the storage system includes: a business cluster 110 for realizing business functions and a data center 130 for storing data.
  • the service cluster 110 may include one or more application servers.
  • the service cluster 110 in FIG. 3 includes an application server 111 and an application server 112 .
  • the data center 130 includes multiple file systems for managing different physical storage resources.
  • the data center 130 includes a file system 131a, a file system 131b, and a file system 131c.
  • each file system included in the data center 130 may correspond to one or more storage devices respectively, constituting a physical storage resource managed by the file system.
  • the file system 131a may include one or more metadata nodes (such as metadata node 131a1 and metadata node 131a2 in FIG. 3 ) and one or more storage nodes (Storage node 131a3, storage node 131a4, and storage node 131a5 are included in FIG. 3).
  • the storage node is used to store the corresponding data for realizing the service function (in order to distinguish the metadata, the data for realizing the service function will be referred to as service data hereinafter).
  • Metadata nodes are used to store metadata of service data, such as storage addresses of service data in storage nodes.
  • the storage system also includes a routing gateway 120.
  • the routing gateway 120 is used to provide a file access interface for the business cluster 110. When receiving an access request from the business cluster, according to the file path of the unified namespace carried in the access request, determine The file system corresponding to the data to be accessed and the file path in the file system, and use the file path in the file system to access the file system.
  • the routing gateway 120 may specifically include a routing device 121 for realizing the above-mentioned functions, and a routing configuration library 122 for storing data required for realizing the above-mentioned functions.
  • the routing configuration library 122 may store files in a unified namespace The corresponding relationship between the path and the file path in the file system, the working status information of the routing device 121 and so on.
  • the routing configuration library 122 may be located inside the routing device 121, or the routing configuration library 122 may be stored in another device independent of the routing device 121, which is not limited in this embodiment.
  • the function of the routing gateway 120 may be implemented by a hardware device independent of each file system in the data center.
  • the routing gateway 120 may be located in a file system in the data center, and the functions of the routing gateway 120 may be implemented by some software/hardware devices in the file system in the data center.
  • the location of the device to which the routing gateway 120 belongs in the storage system may not be limited.
  • the storage system may further include multiple routing gateways, for example, including routing gateway 120a, routing gateway 120b, and routing gateway 120c as shown in FIG. 4 .
  • the multiple routing gateways are respectively located on different nodes in the storage system.
  • Multiple routing gateways have a master-slave relationship, that is, multiple routing gateways include at least one master routing gateway and at least one slave routing gateway.
  • the service cluster 110 can preferentially send the access request to the main routing gateway to realize data access; when the main routing gateway fails or is overloaded and other work is abnormal, Access requests can be sent to slave routing gateways for data access. This improves system reliability.
  • this embodiment provides an information processing method, as shown in FIG. 5 display, including:
  • the service cluster 110 sends an access request to the routing gateway 120.
  • the access request carries the first file path corresponding to the data to be accessed.
  • the first file path includes a preset root directory (hereinafter referred to as the default root directory for short).
  • the above access request may be a remote procedure call (Remote Procedure Call, RPC) request.
  • RPC Remote Procedure Call
  • the routing gateway 120 may be understood as various devices capable of realizing the functions implemented by the routing gateway 120 in this embodiment. Specifically, in the application process, the routing gateway 120 may also be called a "router” or a "routing device”. It is easy to understand that in this embodiment, there is no restriction on the specific name of the routing gateway.
  • the routing gateway 120 determines the second file path in the first file system corresponding to the first file path according to the path of the first file path under the preset root directory.
  • the namespace corresponding to the preset root directory may include at least two sub-paths.
  • at least two sub-paths respectively correspond to file paths in at least two different file systems. That is, a path under the namespace corresponding to the preset root directory may be mapped to a file path in one of the at least two file systems.
  • a unified namespace (that is, the namespace corresponding to the default root directory) is constructed, and the file paths in multiple file systems included in the data center are mapped to the unified namespace on the only file path in .
  • the root directories of the file system 131a, the file system 131b and the file system 131c are respectively "fsA: ⁇ ", "fsB: ⁇ ” and "fsC: ⁇ "
  • the default root directory of the unified namespace is "GNS: ⁇ ".
  • the routing gateway 120 obtains the first file path (that is to say, the After a file path is a file path in the above-mentioned unified namespace), the file path in the first file system corresponding to the first file path can be determined according to the path of the first file path in the preset root directory (that is, the first file path) Second file path).
  • the file path of the business data in the file system 131a is "fsA: ⁇ Windows ⁇ System32 ⁇ taskmgr.exe”
  • the above-mentioned file path in the file system 131a "fsA: ⁇ Windows ⁇ System32 ⁇ taskmgr.exe” is mapped to the file path under the default root directory "GNS: ⁇ ” as "GNS: ⁇ fsA ⁇ Windows ⁇ System32 ⁇ taskmgr.exe”.
  • the service cluster 110 can send an access request carrying the file path "GNS: ⁇ fsA ⁇ Windows ⁇ System32 ⁇ taskmgr.exe” (ie the first file path in S202) to the routing gateway 120, Then the path gateway 120 can determine the file path "fsA: ⁇ Windows ⁇ System32 ⁇ taskmgr.exe” in the file system 131a (i.e. the first file path in S202) according to the file path "GNS: ⁇ fsA ⁇ Windows ⁇ System32 ⁇ taskmgr.exe” .exe", so as to use the file path "fsA: ⁇ Windows ⁇ System32 ⁇ taskmgr.exe” to access the file system 131a to complete the read and/or write operation of business data.
  • the access request obtained by the routing gateway 120 in S202 may be directly sent to the routing gateway 120 by the service cluster 110 in S201 , or may be generated internally by the routing gateway 120 .
  • the access request obtained by the routing gateway 120 in S202 may be any internal instruction of the routing gateway 120 generated by the routing gateway 120 after receiving the access request sent by the service cluster 110 to trigger the execution of S202. This embodiment may not be limited.
  • At least two paths included in the namespace corresponding to the preset root directory respectively correspond to at least two file systems, specifically including different types of file systems.
  • the different types of file systems may include file systems with different file access methods, different communication protocols used, or different types of storage media used.
  • the above at least two file systems include: NFS file system and Luster file system, two types of file systems.
  • the namespace corresponding to the default root directory can correspond to at least two different types of file systems, that is to say, it is possible to send different file paths including the default root directory to the routing gateway. , to access different file systems. In this way, for a business, different data can be stored in different file systems according to usage requirements, so as to make full use of the characteristics of different file systems.
  • the routing gateway 120 may pre-store the corresponding relationship between the file path in the namespace corresponding to the preset root directory and the file path in each file system. For the convenience of description, these corresponding relationships will be referred to as A collection of mount information. In this way, when the routing gateway 120 receives the access request, it can determine the file path in the file system corresponding to the first file path carried in the access request by querying the mount information set. Therefore, the above S202 may specifically include:
  • the routing gateway 120 determines a second file path in the first file system corresponding to the first file path according to the path of the first file path under the preset root directory and the set of mounting information.
  • the corresponding relationship between the file path in the namespace corresponding to the preset root directory and the file path in the corresponding file system is recorded.
  • the method before performing S202, the method further includes:
  • the routing gateway 120 establishes a set of mounting information.
  • the routing gateway 120 when the routing gateway 120 includes the routing device 121 and the routing configuration library 122, the set of mounting information can be stored in the routing configuration library 122, and when the routing device 121 obtains the access request, it can be stored in the routing configuration library 122 The mount information set, and then determine the second file path in the first file system.
  • Table 1 shows an example of a set of mounting information:
  • the "file path in the unified namespace” column records various file paths in the namespace corresponding to the default root directory (ie "GNS: ⁇ ”)
  • the "file path in the file system” column records The file paths in the file system corresponding to the various file paths in the namespace corresponding to the preset root directory (that is, “GNS: ⁇ ”).
  • the routing gateway 120 can search for the first file path in the item "file paths in the unified namespace” in Table 1, so as to find the corresponding file path of the first file path.
  • the mount information set can also be stored in other ways.
  • the mount information set can be It is stored in a structured storage method such as a tree structure.
  • different subdirectories under the namespace corresponding to the default root directory can be used to correspond to different file systems, so that any path in the file system corresponds to the file system corresponding to the The same path as the above path under the subdirectory.
  • file path a complete path starting from the root directory in a file system or namespace
  • file path a directory (which may be the root directory) in the file path
  • file path a directory (which can also be a subdirectory)
  • path Similar situations in the following, unless otherwise specified, can be understood in the same way.
  • the file system 131a may correspond to the subdirectory "GNS: ⁇ fsA ⁇ " under the default root directory "GNS: ⁇ ”, wherein any path in the file system 131a is associated with the subdirectory "GNS: ⁇ fsA ⁇ ” corresponding to this path.
  • the file path of a certain data in the file system 131a is "fsA: ⁇ path1”, then it can be seen that under the namespace corresponding to the default root directory, the file path of the data is "GNS: ⁇ fsA ⁇ path1".
  • the content in the mount information set can be shown in Table 2 below:
  • the "root directory corresponding to the file system” column records the root directory of each file system
  • the "subdirectory in the unified namespace” column records the default root directory corresponding to each file system. subdirectories.
  • S203 may specifically include:
  • the routing gateway 120 establishes a correspondence between the first subdirectory and the first file system under the namespace corresponding to the preset root directory.
  • any path under the first subdirectory corresponds to the same path as the path in the first file system.
  • the routing gateway 120 records the corresponding relationship between the first subdirectory and the first file system in the mounting information set.
  • the routing gateway 120 can use the mount information set to determine the file path in the file system corresponding to the first file path.
  • the method may also include:
  • the routing gateway 120 determines the storage address corresponding to the data to be accessed according to the second file path.
  • the storage address corresponding to the data to be accessed can be determined according to the second file path, and then complete the data processing based on the storage address. read and write operations.
  • S204 may specifically include:
  • the routing gateway 120 determines the first metadata node according to the second file path.
  • the first metadata node may be a primary metadata node in the first file system, or a metadata node in the first file system that stores metadata of data to be accessed this time.
  • the first file system may include one or more metadata nodes, each metadata node records the metadata of all or part of the data in the file system, and the metadata of the data specifically includes the correspondence between the storage address of the data and the file path relation.
  • the file system 131a (which may be the first file system above) includes a metadata node 131a1 and a metadata node 131a2.
  • the metadata node 131a1 and the metadata node 131a2 record the metadata of all or part of the data in the file system 131a.
  • the metadata node 131a1 and the metadata node 131a2 record the metadata of all the data in the file system 131a; at this time, the metadata node 131a1 and the metadata node 131a2 can have a master-backup relationship;
  • the master metadata node (such as metadata node 131a1) can be preferentially selected to obtain the storage address of the data.
  • the secondary metadata node (such as metadata node 131a2) to obtain the storage address of the data.
  • the above-mentioned first metadata node may be the metadata node 131a1 (ie, the main metadata node).
  • the metadata node 131a1 and the metadata node 131a2 record the metadata of some data in the file system 131a; when it is necessary to access the data in the file system 131a, the data accessed this time can be determined first The metadata node on which the metadata is located, and then obtain the storage address of the data from the metadata node.
  • the above-mentioned first metadata node may be the metadata node that stores the metadata of the data to be accessed this time among the metadata node 131a1 and the metadata node 131a2.
  • the above S2041 may specifically include: the routing gateway 120 determining the first metadata node in the first file system according to the second file path and the node information set.
  • node information of each metadata node in the first file system is recorded in the node information set.
  • the node information of the metadata node may include the access address of the metadata node (for example, IP address), the master-slave type of the metadata node (master metadata node/slave metadata node), the The scope of the metadata of the recorded business data (that is, which metadata of the business data is recorded on the metadata node) and so on.
  • the above-mentioned node information of the metadata node may specifically include various information for determining the metadata node corresponding to the current access request.
  • the above only lists several commonly used information types (namely, the access address of the metadata node, whether the metadata node is the master metadata node or the slave metadata node, and the metadata range of the service data recorded on the metadata node). This embodiment may not limit the specific type of information included in the node information of the metadata node.
  • in S2041 Before can also include:
  • the routing gateway 120 obtains node information of metadata nodes in each file system of the at least two file systems, and establishes a node information set.
  • the node information of the metadata node may include the access address (for example, IP address) of the metadata node, whether the metadata node is a master metadata node or a slave metadata node, and the business data recorded on the metadata node.
  • the scope of metadata that is, the metadata of which business data is recorded on the metadata node) and so on.
  • the method further includes:
  • the routing gateway 120 sends an address request carrying the second file path to the first metadata node.
  • the first metadata node may determine the storage address of the data to be accessed in the first file system according to the second file path, and then feed back the storage address to the routing gateway 120 . Furthermore, the method also includes:
  • the routing gateway 120 receives the storage address of the data to be accessed sent by the first metadata node.
  • the method may also include:
  • the routing gateway 120 sends the storage address of the data to be accessed to the service cluster 110.
  • the service cluster 110 can access the storage node in the first file system according to the storage address of the data to be accessed. To complete the read/write operation of the data to be accessed.
  • the method further includes:
  • the routing gateway 120 When the node information of the metadata node in the first file system changes, the routing gateway 120 generates log (log) information, and updates the node information set.
  • the change content of the above node information is recorded in the log information.
  • the node information of the metadata nodes in the file system may change as the file system runs.
  • the access address of the metadata node changes, or the master-slave type of the metadata node changes, or the metadata scope of the service data recorded on the metadata node changes. Therefore, when the node information of the metadata node changes, in order to ensure the normal access of data in the file system, it is necessary to update the node information set in the routing gateway 120, that is, keep the node information set and the node information of the metadata node in the file system. Synchronize.
  • the failure to synchronize the node information set may occur.
  • the routing gateway does not update the node information set accordingly. Therefore, in this embodiment, when the node information of the metadata node in the first file system changes, log information may be generated and the node information set may be updated. So that after the update of the node information set fails, the node information set can be re-updated by triggering log rollback.
  • the routing gateway 120 may periodically check whether the node information stored in the node information set is consistent with the node information of the metadata node in the file system. When it is detected that there is an inconsistency between the node information stored in the node information set and the node information of the metadata node in the file system, a log rollback mode is triggered to re-update the node information set.
  • log information is generated, so that when the node information in the node information set is inconsistent with the actual node information of the metadata node , you can re-update the node information collection by triggering log rollback to improve system stability.
  • the information processing method provided in this embodiment is mainly introduced by taking a scenario in which the file systems in the routing gateway 120 and the data center 130 are independent of each other as an example.
  • the following introduces the structure of the storage system where the routing gateway 120 is located in the file system of the data center 130:
  • the architecture of the storage system is shown in FIG. 6 .
  • the storage system includes a business cluster 310 for realizing business functions and a data center 330 for storing data.
  • the service cluster 310 may include one or more application servers.
  • the service cluster 310 in FIG. 6 includes an application server 311 and an application server 312 .
  • the relevant description of the business cluster 110 above and details are not repeated here.
  • the data center 330 includes multiple file systems for managing different physical storage resources.
  • the data center 330 includes a file system 331a, a file system 331b, and a file system 331c.
  • the file system 331a, the file system 331b, and the file system 331c may communicate with each other, and the specific communication manner may not be limited in this embodiment.
  • the file system 331c includes a routing gateway 331c1.
  • the service cluster 310 needs to access the data center 330 to perform read/write data operations, the service cluster 310 sends an access request carrying a file path including a preset root directory to the routing gateway 331c1 in the file system 331c, After the routing gateway 331 c 1 receives the access request, it can obtain the storage address of the data to be accessed according to the information processing method shown in FIG. The storage address, to complete the read and write operations.
  • the specific functions of the routing gateway 331c1 may be realized by some or all hardware components of one or more storage devices in the file system.
  • each file system included in data center 330 for the structure and function of each file system included in data center 330, reference may be made to the above description of each file system in data center 130, which will not be repeated here.
  • the business cluster 310 can access the file system 331a and the file system 331b in a related art manner.
  • the business cluster 310 can send the file to the file system 331a and the file system 331b respectively through the communication interfaces corresponding to the file system 331a and the file system 331b File path in the system to access data in the file system.
  • the file system 331c can be added to the data center 330 through the following methods of S401-S404:
  • the mounting information set includes the corresponding relationship between the file paths in the file system 331a and the file system 331b and the file paths under the namespace of the file system 331c.
  • the file paths in the file system 331a and the file system 331b are respectively mapped to a subdirectory under the root directory of the file system 331c (ie, under the namespace of the file system 331c).
  • an access request carrying the file path under the namespace of the file system 331c can be sent through the service cluster 310, and then the routing gateway 331c1 determines the pending Access the storage address of the data (wherein, the storage address may be the storage address in the file system 331a, the file system 331b or the file system 331c) and feed back the storage address to the service cluster 310, so that the service cluster 310 completes the read/write operation.
  • the storage address may be the storage address in the file system 331a, the file system 331b or the file system 331c
  • this embodiment provides an information processing device, which can perform some or all of the steps in this embodiment, for example, the information processing device can perform the steps performed by the routing gateway in the above method.
  • the information processing apparatus in this embodiment may also perform other operations or perform deformations of some or all of the above steps.
  • each step may be performed in a different order presented in the embodiment of the present application, and it may not be necessary to perform all operations in the embodiment of the present application.
  • the information processing apparatus includes hardware structures and/or software modules corresponding to each function.
  • the present application can be implemented in the form of hardware or a combination of hardware and computer software in combination with the modules and method steps of the examples described in the embodiments disclosed in the present application. Whether a certain function is executed by hardware or computer software drives the hardware depends on the specific application scenario and design constraints of the technical solution.
  • FIG. 7 is a schematic structural diagram of an information processing device provided in this embodiment.
  • the information processing apparatus can be used to realize the functions of some or all steps in the above method embodiments, and thus can realize the beneficial effects possessed by the above method embodiments.
  • the information processing apparatus may include a routing device; further exemplary, when the function of the routing gateway is integrated in the file system, the information processing apparatus may also include a storage device in the file system Some or all of the hardware components.
  • the information processing device 50 includes one or more items of an acquisition module 501 and a processing unit 502 .
  • the information processing device 50 is configured to realize the functions of one or more steps in the method embodiment corresponding to FIG. 5 .
  • the acquisition module 501 is used to execute S201.
  • the processing module 502 is configured to execute one or more items in S202-S207.
  • FIG. 8 is a schematic structural diagram of another information processing device provided in this embodiment.
  • the information processing device 60 may be a chip or a system on a chip.
  • the information processing device 60 may include: a processor 601 , a communication line 606 , a memory 603 , and at least one communication interface 602 and some or all of the components.
  • the processor 601 is configured to execute the information processing method provided in this embodiment.
  • the processor 601 may include a general-purpose central processing unit (central processing unit, CPU), and the processor 601 may also include a microprocessor, a Field Programmable Gate Array (Field Programmable Gate Array, FPGA), a digital signal processor ( digital signal processing (DSP) or application-specific integrated circuit (ASIC), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • CPU central processing unit
  • the processor 601 may also include a microprocessor, a Field Programmable Gate Array (Field Programmable Gate Array, FPGA), a digital signal processor ( digital signal processing (DSP) or application-specific integrated circuit (ASIC), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • CPU central processing unit
  • the processor 601 may also include a microprocessor, a Field Programmable Gate Array (Field Programmable Gate Array, FPGA), a digital signal processor (DSP) or application-specific integrated circuit (ASIC), or other programmable logic
  • the processor 601 may include one or more CPUs, for example, CPU0 and CPU1 in FIG. 8 .
  • apparatus 60 may include multiple processors, for example, processor 601 and processor 605 in FIG. 8 .
  • processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor.
  • a processor herein may refer to one or more devices, circuits, and/or processing cores for processing, for example, computational data (computer program instructions).
  • memory 603 can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory.
  • the non-volatile memory can be read-only memory (read-only memory, ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), electrically programmable Erases programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • Volatile memory can be random access memory (RAM), which acts as external cache memory.
  • RAM random access memory
  • static RAM static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory
  • SDRAM Double data rate synchronous dynamic random access memory
  • double data date SDRAM double data date SDRAM
  • DDR SDRAM enhanced synchronous dynamic random access memory
  • ESDRAM enhanced synchronous dynamic random access memory
  • direct Memory bus random access memory direct rambus RAM, DR RAM.
  • the memory 603 may exist independently, and is connected to the processor 601 through a communication line 606 .
  • the memory 603 can also be integrated with the processor 601.
  • the memory 603 stores computer instructions.
  • the computer instructions stored in the memory 603 may include software modules for realizing the functions of the acquisition module 501 and the processing module 502 described above.
  • the processor 601 may execute the information processing method provided in this embodiment by executing computer instructions stored in the memory 603 .
  • the computer-executed instructions in this embodiment may also be referred to as application code, which is not specifically limited in this embodiment.
  • the communication interface 602 may also be referred to as an interface.
  • the communication interface 602 uses any device such as a transceiver for communicating with other devices or communication networks, such as Ethernet, radio access network (radio access network, RAN), wireless local area networks (wireless local area networks, WLAN) and so on.
  • radio access network radio access network
  • WLAN wireless local area networks
  • the communication line 606 is used to connect various components in the information processing device 60 .
  • the communication line 606 may include a data bus, a power bus, a control bus, a status signal bus, and the like.
  • the various buses are labeled as communication lines 606 in the figure.
  • the information processing device 60 may further include a storage medium 604 .
  • the storage medium 604 is used to store computer instructions and various data for implementing the technical solution of this embodiment. In order for the information processing device 60 to load the computer instructions and various data stored in the storage medium 604 into the memory 603 when executing the information processing method described above in this embodiment, so that the processor 601 can execute the computer instructions stored in the memory 603 , for executing the information processing method provided in this embodiment.
  • the information processing device 60 may correspond to the information processing device 50 in this embodiment, and may correspond to a corresponding body that executes the information processing method according to this embodiment, and each of the information processing devices 60
  • the above-mentioned and other operations and/or functions of the modules are to realize the corresponding processes of the methods in FIG. 5 , and for the sake of brevity, details are not repeated here.
  • this embodiment further provides a file storage system, where the file storage system includes a routing gateway and a storage node.
  • the routing gateway is used to execute part or all of the steps in the above method embodiments
  • the storage node is used to store the data required to realize the service.
  • the file storage system may be the file system 331c in FIG. 6 .
  • the method steps in this embodiment may be implemented by means of hardware, and may also be implemented by means of a processor executing software instructions.
  • the software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM, flash memory, ROM, PROM, EPROM, EEPROM, registers, hard disk, mobile hard disk, CD-ROM or any other form of storage medium known in the art .
  • An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium.
  • the storage medium may also be a component of the processor.
  • the processor and storage medium can be located in the ASIC.
  • the ASIC can be located in a network device or a terminal device. Certainly, the processor and the storage medium may also exist in the network device or the terminal device as discrete components.
  • all or part of them may be implemented by software, hardware, firmware or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • the computer program product comprises one or more computer programs or instructions. When the computer program or instructions are loaded and executed on the computer, the processes or functions described in this embodiment are executed in whole or in part.
  • the computer may be a general purpose computer, a special purpose computer, a computer network, network equipment, user equipment, or other programmable devices.
  • the computer program or instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer program or instructions may be downloaded from a website, computer, A server or data center transmits to another website site, computer, server or data center by wired or wireless means.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center integrating one or more available media.
  • the available medium may be a magnetic medium, such as a floppy disk, a hard disk, or a magnetic tape; it may also be an optical medium, such as a digital video disc (digital video disc, DVD); it may also be a semiconductor medium, such as an SSD.
  • “at least one” means one or more
  • “multiple” means two or more
  • other quantifiers are similar.
  • “And/or” describes the association relationship of associated objects, indicating that there may be three kinds of relationships, for example, A and/or B may indicate: A exists alone, A and B exist simultaneously, and B exists independently.
  • the singular forms “a”, “an” and “the” do not mean “one or only one” but “one or more” unless the context clearly dictates otherwise. in one".
  • “a device” means reference to one or more such devices.
  • At least one (at least one of). «" means one or any combination of subsequent associated objects, such as "at least one of A, B and C” includes A, B, C, AB, AC, BC, or ABC.
  • character “/” generally represents that the associated object before and after is a kind of "or” relation; In the formula of the present embodiment, character “/”, Indicates that the associated objects before and after are a kind of "division" relationship.

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)
  • 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 Converged Ethernet)交换机等。
数据中心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
Figure PCTCN2022115503-appb-000001
其中,“统一命名空间中的文件路径”一栏记录了预设根目录(即“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向文件系统331 c中的路由网关331 c 1发送携带包括预设根目录的文件路径的访问请求,路由网关331 c 1在接收到该访问请求后,可以按照上述图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 Gate Array,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)、同步连接动态随机存取存储器(synchlink DRAM,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任一项所述的方法。
PCT/CN2022/115503 2021-09-08 2022-08-29 信息处理方法及装置 WO2023036005A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111051925.5 2021-09-08
CN202111051925.5A CN115774703A (zh) 2021-09-08 2021-09-08 信息处理方法及装置

Publications (1)

Publication Number Publication Date
WO2023036005A1 true WO2023036005A1 (zh) 2023-03-16

Family

ID=85388203

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/115503 WO2023036005A1 (zh) 2021-09-08 2022-08-29 信息处理方法及装置

Country Status (2)

Country Link
CN (1) CN115774703A (zh)
WO (1) WO2023036005A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116541085A (zh) * 2023-07-05 2023-08-04 成都阿加犀智能科技有限公司 一种Android/Linux融合方法、装置、设备及存储介质
CN117061615A (zh) * 2023-10-09 2023-11-14 杭州优云科技有限公司 缓存路径获取方法、装置、计算机设备及存储介质
CN117290302A (zh) * 2023-11-23 2023-12-26 合芯科技(苏州)有限公司 目录分离方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
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
CN101051290A (zh) * 2006-04-07 2007-10-10 株式会社日立制作所 Gns中的目录单位迁移
CN101162469A (zh) * 2007-11-09 2008-04-16 清华大学 基于快照的细粒度文件与目录版本管理方法
CN109906433A (zh) * 2016-11-04 2019-06-18 微软技术许可有限责任公司 针对容器的存储隔离
CN113296792A (zh) * 2020-07-10 2021-08-24 阿里巴巴集团控股有限公司 存储方法、装置、设备、存储介质和系统
CN113312311A (zh) * 2020-07-27 2021-08-27 阿里巴巴集团控股有限公司 命名空间的处理方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
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
CN101051290A (zh) * 2006-04-07 2007-10-10 株式会社日立制作所 Gns中的目录单位迁移
CN101162469A (zh) * 2007-11-09 2008-04-16 清华大学 基于快照的细粒度文件与目录版本管理方法
CN109906433A (zh) * 2016-11-04 2019-06-18 微软技术许可有限责任公司 针对容器的存储隔离
CN113296792A (zh) * 2020-07-10 2021-08-24 阿里巴巴集团控股有限公司 存储方法、装置、设备、存储介质和系统
CN113312311A (zh) * 2020-07-27 2021-08-27 阿里巴巴集团控股有限公司 命名空间的处理方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116541085A (zh) * 2023-07-05 2023-08-04 成都阿加犀智能科技有限公司 一种Android/Linux融合方法、装置、设备及存储介质
CN116541085B (zh) * 2023-07-05 2023-09-12 成都阿加犀智能科技有限公司 一种Android/Linux融合方法、装置、设备及存储介质
CN117061615A (zh) * 2023-10-09 2023-11-14 杭州优云科技有限公司 缓存路径获取方法、装置、计算机设备及存储介质
CN117061615B (zh) * 2023-10-09 2024-01-16 杭州优云科技有限公司 缓存路径获取方法、装置、计算机设备及存储介质
CN117290302A (zh) * 2023-11-23 2023-12-26 合芯科技(苏州)有限公司 目录分离方法、装置、计算机设备和存储介质
CN117290302B (zh) * 2023-11-23 2024-02-06 合芯科技(苏州)有限公司 目录分离方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN115774703A (zh) 2023-03-10

Similar Documents

Publication Publication Date Title
US11153380B2 (en) Continuous backup of data in a distributed data store
WO2023036005A1 (zh) 信息处理方法及装置
US10579610B2 (en) Replicated database startup for common database storage
US10929428B1 (en) Adaptive database replication for database copies
US10437721B2 (en) Efficient garbage collection for a log-structured data store
US20190188406A1 (en) Dynamic quorum membership changes
US11467967B2 (en) Managing a distributed cache in a cloud-based distributed computing environment
US9842031B1 (en) Incremental updates to user transaction state at read-only nodes of a distributed database
JP6196368B2 (ja) 分散型データベースシステムのシステム全体のチェックポイント回避
JP6275816B2 (ja) 分散型データベースシステム用高速クラッシュ回復
JP6346937B2 (ja) データベースエンジンを備えたデータベースシステム及び別個の分散型ストレージサービス
US9699017B1 (en) Dynamic utilization of bandwidth for a quorum-based distributed storage system
US10592475B1 (en) Consistent data storage in distributed computing systems
US10725666B2 (en) Memory-based on-demand data page generation
CN109684282B (zh) 一种构建元数据缓存的方法及装置
US11652883B2 (en) Accessing a scale-out block interface in a cloud-based distributed computing environment
US10303564B1 (en) Reduced transaction I/O for log-structured storage systems
JP2016511498A (ja) インプレーススナップショット
US10409804B2 (en) Reducing I/O operations for on-demand demand data page generation
US11080253B1 (en) Dynamic splitting of contentious index data pages
WO2016202199A1 (zh) 分布式文件系统及其文件元信息管理方法
WO2021057108A1 (zh) 一种读数据方法、写数据方法及服务器
WO2023045492A1 (zh) 一种数据预取方法、计算节点和存储系统
US10223184B1 (en) Individual write quorums for a log-structured distributed storage system
KR20120063946A (ko) 대용량 통합 메모리를 위한 메모리 장치 및 이의 메타데이터 관리 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22866471

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022866471

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022866471

Country of ref document: EP

Effective date: 20240319

NENP Non-entry into the national phase

Ref country code: DE