Volume mapping management method, device and equipment

By determining the home nodes for adding new volumes in the distributed storage cluster, the problem of unbalanced storage nodes is solved, load balancing is achieved, and system stability and service performance are improved.

CN119987677AActive Publication Date: 2025-05-13INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202510125407.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-26
Publication Date
2025-05-13
Estimated Expiration
2045-01-26

AI Technical Summary

Technical Problem

In distributed storage clusters, it is difficult to achieve load balancing, resulting in unbalanced storage nodes, affecting the reliability and service performance of the system.

Method used

By responding to the mapping request of the newly added volume mapping host, the hardware configuration data of the distributed storage cluster is obtained, and the resource consumption information of multiple storage nodes is determined based on the storage configuration data of the historical volume that has a home relationship with the storage node, thereby determining the home node for the newly added volume.

Benefits of technology

It realizes the reasonable allocation of storage node load, improves the load balancing of distributed storage clusters, improves the stability and service performance of the storage system, and avoids load imbalance caused by the increase in the number of volumes or capacity expansion of storage nodes when handling read and write tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119987677A_ABST
    Figure CN119987677A_ABST
Patent Text Reader

Abstract

The invention provides a volume mapping management method which can be applied to the technical field of computers. The method comprises the steps that in response to a mapping request of a newly-added volume mapping host, hardware configuration data of a distributed storage cluster are obtained, the distributed storage cluster comprises a plurality of storage nodes, and the storage nodes are used for processing read-write tasks from the host; determining respective resource consumption information of the plurality of storage nodes based on the storage configuration data of the historical volumes having the attribution relationship with the plurality of storage nodes; and based on the hardware configuration data and the resource consumption information, determining an affiliation node for the newly-added volume from the plurality of storage nodes, so that the affiliation node processes a read-write task from the host after the newly-added volume is mapped to the host. The invention further provides a volume mapping management device and equipment, a storage medium and a program product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a volume mapping management method, device and equipment. Background Art

[0002] In a distributed storage cluster of a storage system, a single volume has a node attribute, and each volume belongs to a storage node in the distributed storage cluster. When creating a volume, you need to specify the node to which the volume belongs. In a distributed storage cluster, under normal circumstances, only the storage node to which the volume belongs can process read and write tasks from the corresponding host.

[0003] However, when multiple volumes are created and evenly distributed to the storage nodes of a distributed storage cluster, it is difficult to achieve load balancing for the entire distributed storage cluster because each volume undertakes different front-end businesses and the businesses have different performance requirements for back-end storage, which affects the reliability and service performance of the distributed storage cluster. Summary of the invention

[0004] In view of the above problems, the present disclosure provides a volume mapping management method, apparatus, device, medium and program product.

[0005] According to a first aspect of the present disclosure, a volume mapping management method is provided, comprising: in response to a mapping request of a newly added volume mapping host, obtaining hardware configuration data of a distributed storage cluster, wherein the distributed storage cluster comprises multiple storage nodes, and the multiple storage nodes are used to process read and write tasks from the host; determining resource consumption information of each of the multiple storage nodes based on storage configuration data of historical volumes having an affiliation relationship with the multiple storage nodes; and determining an affiliation node for the newly added volume from the multiple storage nodes based on the hardware configuration data and the resource consumption information, so that the affiliation node processes the read and write tasks from the host after the newly added volume is mapped to the host.

[0006] According to an embodiment of the present disclosure, storage configuration data includes the type of historical volume; based on the storage configuration data of the historical volume that has an affiliation relationship with multiple storage nodes, the resource consumption information of each of the multiple storage nodes is determined, including: based on the type of historical volume and a first predetermined mapping relationship, the resource consumption information of each of the multiple storage nodes is determined, wherein the first predetermined mapping relationship represents the mapping relationship between the type of volume and the resource consumption information.

[0007] According to an embodiment of the present disclosure, the volume mapping management method also includes: determining resource consumption information of nodes to which different types of volumes belong based on a historical data set, wherein the historical data set is obtained by performing test read and write tasks on different types of volumes; and determining a first predetermined mapping relationship based on different types of volumes and resource consumption information.

[0008] According to an embodiment of the present disclosure, based on hardware configuration data and resource consumption information, determining a belonging node for a newly added volume from multiple storage nodes includes: determining resource utilization rates of each of the multiple storage nodes based on the hardware configuration data and resource consumption information; and determining a belonging node for the newly added volume from the multiple storage nodes based on the resource utilization rates of each of the multiple storage nodes.

[0009] According to an embodiment of the present disclosure, resource consumption information indicates a theoretical resource consumption; based on the hardware configuration data and the resource consumption information, the resource utilization rates of each of the multiple storage nodes are determined, including: based on the hardware configuration data of each of the multiple storage nodes and a second predetermined mapping relationship, the hardware performance valuations of each of the multiple storage nodes are determined, wherein the second predetermined mapping relationship represents a mapping relationship between the hardware configuration data and the hardware performance valuation; based on the theoretical resource consumption of each of the multiple storage nodes and a preset coefficient for determining the theoretical resource consumption rate, the theoretical resource consumption rate of each of the multiple storage nodes is determined; and based on the ratio of the theoretical resource consumption rate of each of the multiple storage nodes to the hardware performance valuation, the resource utilization rates of each of the multiple storage nodes are determined.

[0010] According to an embodiment of the present disclosure, the volume mapping management method also includes: obtaining hardware usage information of each of the multiple storage nodes within a processing cycle, wherein the multiple storage nodes process read and write tasks from the host within the processing cycle; and updating a preset coefficient based on the hardware usage information and resource utilization of each of the multiple storage nodes.

[0011] According to an embodiment of the present disclosure, storage configuration data includes the read and write performance of historical volumes; based on the resource utilization rates of each of the multiple storage nodes, determining the belonging node for the newly added volume from the multiple storage nodes, including: when it is determined that the resource utilization rates of the storage nodes in the multiple storage nodes are all less than a safety threshold, determining the storage node with the smallest resource utilization rate among the multiple storage nodes as the belonging node for the newly added volume; when it is determined that there is a storage node in the multiple storage nodes whose resource utilization rate is greater than or equal to the safety threshold, determining the storage node whose resource utilization rate is greater than or equal to the safety threshold as the volume migration node; and based on the read and write performance of the historical volume, migrating at least one historical volume belonging to the volume migration node to a storage node whose resource utilization rate is less than the safety threshold.

[0012] According to an embodiment of the present disclosure, the volume mapping management method further includes: obtaining a configuration file in response to a mapping request, wherein the configuration file indicates the performance requirements of the terminal for the distributed storage cluster; and determining a security threshold based on the configuration file.

[0013] A second aspect of the present disclosure provides a volume mapping management device, including: an acquisition module, used to obtain hardware configuration data of a distributed storage cluster in response to a mapping request of a newly added volume mapping host, wherein the distributed storage cluster includes multiple storage nodes, and the multiple storage nodes are used to process read and write tasks from the host; a first determination module, used to determine resource consumption information of each of the multiple storage nodes based on storage configuration data of historical volumes that have an affiliation relationship with the multiple storage nodes; and a second determination module, used to determine the affiliation node for the newly added volume from the multiple storage nodes based on the hardware configuration data and the resource consumption information, so that the affiliation node processes the read and write tasks from the host after the newly added volume is mapped to the host.

[0014] A third aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the above method.

[0015] The fourth aspect of the present disclosure further provides a computer-readable storage medium having a computer program or instructions stored thereon, which implements the steps of the above method when the above computer program or instructions are executed by a processor.

[0016] The fifth aspect of the present disclosure further provides a computer program product, including a computer program or instructions, which implement the steps of the above method when the above computer program or instructions are executed by a processor.

[0017] According to an embodiment of the present disclosure, when mapping a newly added volume to a host, based on the hardware configuration of the storage node and the resource consumption of the historical volumes that have an affiliation with the storage node, the affiliation node for the newly added volume is determined from multiple storage nodes of the distributed storage cluster. Since the affiliation node for the newly added volume is determined when the newly added volume is mapped to the host, and is determined from the distributed storage cluster based on the hardware configuration of the storage node and the resource consumption of the historical volumes that have an affiliation with the storage node, it is possible to reasonably distribute the load of the storage node, which is beneficial to the load balancing of the distributed storage cluster and improves the stability and service performance of the storage system. Compared to specifying the affiliation node when creating a volume, it is possible to avoid the problem of unbalanced load on the storage node caused by the increase in the number of volumes, the expansion of the volume capacity, and the change in the host read and write tasks when the storage node is processing read and write tasks. In addition, since the resource consumption information of the storage node is a theoretical consumption determined based on the storage configuration data, the response speed of the storage system can be improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0019] Figure 1 The application scenario diagram of the volume mapping management method, apparatus, device, medium and program product according to the embodiment of the present disclosure is schematically shown;

[0020] Figure 2 A flow chart of a volume mapping management method according to an embodiment of the present disclosure is schematically shown;

[0021] Figure 3 A schematic diagram schematically shows a first predetermined mapping relationship according to an embodiment of the present disclosure;

[0022] Figure 4 A schematic diagram of determining storage node resource utilization according to an embodiment of the present disclosure is schematically shown;

[0023] Figure 5 A schematic diagram schematically shows a method of updating a preset coefficient according to an embodiment of the present disclosure;

[0024] Figure 6 A structural block diagram of a volume mapping management device according to an embodiment of the present disclosure is schematically shown; and

[0025] Figure 7 A block diagram of an electronic device suitable for implementing a volume mapping management method according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0026] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without the information of these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0027] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0028] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0029] When using expressions such as "at least one of A, B, and C," it should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0030] In the technical solution of the present disclosure, the user information (including but not limited to user personal information, user image information, user device information, such as location information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved are all information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0031] In the scenario of using personal information for automated decision-making, the methods, devices, and systems provided by the embodiments of the present disclosure provide users with corresponding operation portals for users to choose to agree or reject the automated decision-making results; if the user chooses to reject, the expert decision-making process will be entered. The expression "automated decision-making" here refers to the activity of automatically analyzing and evaluating a person's behavioral habits, interests and hobbies, or economic, health, credit status, etc. through computer programs, and making decisions. The expression "expert decision-making" here refers to the activity of making decisions by people who specialize in a certain field, have specialized experience, knowledge and skills, and have reached a certain level of professionalism.

[0032] In the process of implementing the embodiments of the present disclosure, it is found that the load balancing of storage nodes can ensure that each storage node evenly shares the load under a large amount of data storage and access requests, thereby improving the stability and service performance of the storage system. However, for the subsequent business operation, when the number of volumes increases, the volume capacity is expanded, and the host read and write tasks change, specifying the home node when creating a volume will cause subsequent storage nodes to have an unbalanced load when processing read and write tasks from the host.

[0033] An embodiment of the present disclosure provides a volume mapping management method, comprising: in response to a mapping request of a newly added volume mapping host, obtaining hardware configuration data of a distributed storage cluster, wherein the distributed storage cluster includes multiple storage nodes, and the multiple storage nodes are used to process read and write tasks from the host; based on the storage configuration data of historical volumes that have an affiliation relationship with the multiple storage nodes, determining resource consumption information of each of the multiple storage nodes; and based on the hardware configuration data and the resource consumption information, determining an affiliation node for the newly added volume from the multiple storage nodes, so that the affiliation node processes the read and write tasks from the host after the newly added volume is mapped to the host.

[0034] Figure 1 The application scenario diagram of the volume mapping management method, apparatus, device, medium and program product according to the embodiments of the present disclosure is schematically shown.

[0035] like Figure 1 As shown, the application scenario 100 according to this embodiment may include a host 101 , a management node 102 , and a distributed storage cluster 103 .

[0036] The interaction between the host 101, the management node 102 and the distributed storage cluster 103 is realized through a network, and the network can be a medium that provides a communication link between the host 101, the management node 102 and the distributed storage cluster 103. The network can include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0037] The host 101 may refer to a network node that is authorized to access a specific volume, such as a server, workstation, or other type of computer device. An operating system and other application programs are installed inside the host 101. In the volume mapping process, the host 101 may act as a visitor and user, communicate with the management node and storage node in the storage system through a specific network protocol, and request access to data on the volume. For example, the host 101 may interact with the volume with the home node through a file system or a storage driver to implement data read and write operations.

[0038] The distributed storage cluster 103 may include multiple storage nodes, which may be used as the home node of a volume to process read and write tasks from the host 101. The storage node may be the home node of multiple volumes. The storage node may include a storage device, which may be, for example, a redundant array of independent disks, a disk cluster, or one or more interconnected disk drives of a storage device.

[0039] The management node 102 may be used to manage the storage nodes and the host 101 in the distributed storage cluster 103. The management node 102 may include a server, other types of computer devices, and the like.

[0040] It should be noted that the volume mapping management method provided in the embodiment of the present disclosure can generally be executed by the management node 102. Accordingly, the volume mapping management device provided in the embodiment of the present disclosure can generally be set in the management node 102. The volume mapping management method provided in the embodiment of the present disclosure can also be executed by a management node or a management node cluster that is different from the management node 102 and can communicate with the host 101 and / or the distributed storage cluster 103. Accordingly, the volume mapping management device provided in the embodiment of the present disclosure can also be set in a management node or a management node cluster that is different from the management node 102 and can communicate with the host 101 and / or the distributed storage cluster 103.

[0041] It should be understood that Figure 1 The number of hosts, management nodes, and distributed storage clusters in the embodiment is only for illustration. Any number of hosts, management nodes, and distributed storage clusters may be provided as required.

[0042] The following will be based on Figure 1 The scene described by Figure 2~Figure 6 The volume mapping management method of the disclosed embodiment is described in detail.

[0043] Figure 2 The flowchart of the volume mapping management method according to the embodiment of the present disclosure is schematically shown.

[0044] like Figure 2 As shown, the volume mapping management method of this embodiment includes operations S210 to S230.

[0045] In operation S210, in response to a mapping request of a newly added volume mapping host, hardware configuration data of a distributed storage cluster is obtained.

[0046] In operation S220, resource consumption information of each of the plurality of storage nodes is determined based on storage configuration data of the historical volumes having an affiliation relationship with the plurality of storage nodes.

[0047] In operation S230, a home node for the newly added volume is determined from a plurality of storage nodes based on the hardware configuration data and the resource consumption information, so that the home node processes the read and write tasks from the host after the newly added volume is mapped to the host.

[0048] In an embodiment of the present disclosure, a newly added volume may include a volume that is created according to creation configuration information in a storage or data management scenario, but is not configured with a belonging node. Storage or data management scenarios may include, for example, but are not limited to persistent storage requirements, data backup and recovery, storage expansion, performance optimization, data isolation and management, etc. Creation configuration information may include, for example, but is not limited to host attribute information, volume size, etc. When it is necessary to provide storage services to the host, the newly added volume may be mapped to the corresponding host based on the host attribute information. The mapping request may include, but is not limited to, host attribute information, etc. The attribute information may be, for example, a host number. A distributed storage cluster may include multiple storage nodes, and multiple storage nodes may be used to process read and write tasks from the host. The hardware configuration data of the distributed storage cluster may include hardware configuration data for each storage node. The hardware configuration data may be used to indicate the storage configuration of the storage node.

[0049] For example, when an application, database or file system needs to provide persistent storage, a new volume can be created according to the creation configuration information. When storage services need to be provided to a host with a corresponding host number, the host can send a mapping request to the management node. After receiving the mapping request, the management node can verify the host number and obtain the hardware configuration data of the distributed storage cluster if the verification passes.

[0050] In the disclosed embodiment, each storage node in the plurality of storage nodes can at least serve as a home node of a historical volume. A historical volume can be understood as a volume that has been configured with a home node. Storage configuration data can be used to indicate the attributes of a historical volume. The attributes of a historical volume can include, for example, but are not limited to, basic attributes of the historical volume and performance attributes of the historical volume. Resource consumption information can be used to indicate the resource consumption of a storage node.

[0051] Exemplarily, for historical volumes with different basic attributes and / or different performance attributes, correspondingly, the resource consumption of the storage nodes having an ownership relationship with the historical volumes is different.

[0052] For example, the storage capacity can be determined according to the storage configuration, and based on the storage capacity, the multiple storage nodes are sorted in order from large to small, and then based on the resource consumption, the multiple storage nodes are sorted again in order from small to large to obtain a sorting result for the multiple storage nodes. Then, the storage node ranked first in the sorting result is determined as the home node for the newly added volume.

[0053] According to an embodiment of the present disclosure, when mapping a newly added volume to a host, based on the hardware configuration of the storage node and the resource consumption of the historical volumes that have an affiliation with the storage node, the affiliation node for the newly added volume is determined from multiple storage nodes of the distributed storage cluster. Since the affiliation node for the newly added volume is determined when the newly added volume is mapped to the host, and is determined from the distributed storage cluster based on the hardware configuration of the storage node and the resource consumption of the historical volumes that have an affiliation with the storage node, it is possible to reasonably distribute the load of the storage node, which is beneficial to the load balancing of the distributed storage cluster and improves the stability and service performance of the storage system. Compared to specifying the affiliation node when creating a volume, it is possible to avoid the problem of unbalanced load on the storage node caused by the increase in the number of volumes, the expansion of the volume capacity, and the change in the host read and write tasks when the storage node is processing read and write tasks. In addition, since the resource consumption information of the storage node is a theoretical consumption determined based on the storage configuration data, the response speed of the storage system can be improved.

[0054] Figure 3 A schematic diagram schematically shows a first predetermined mapping relationship according to an embodiment of the present disclosure.

[0055] In the process of implementing the embodiments of the present disclosure, it was also discovered that in normal business scenarios, the number of storage nodes in a distributed storage cluster is in the hundreds or thousands. If the resource consumption of each storage node is monitored dynamically in real time, it will occupy more monitoring resources and affect the response speed of the storage system. Even when the monitoring of a storage node fails, it will cause the accuracy of determining the belonging node to be reduced, thereby affecting the load balancing of the distributed storage cluster.

[0056] Based on this, in the embodiment of the present disclosure, the storage configuration data may include the type of the historical volume. Figure 2 The operation S220 shown, determining the resource consumption information of each of the multiple storage nodes based on the storage configuration data of the historical volumes having an affiliation relationship with the multiple storage nodes, may include the operation of: determining the resource consumption information of each of the multiple storage nodes based on the type of the historical volume and the first predetermined mapping relationship.

[0057] In the embodiment of the present disclosure, the first predetermined mapping relationship may represent a mapping relationship between the volume type and the resource consumption information.

[0058] like Figure 3 As shown, the volume type may include type 1, type 2, ..., type N. For example, the resource consumption information configured by the management client of the storage system for different types of volumes may be obtained as follows: Figure 3 The type 1 shown has a mapping relationship with the resource consumption information 1, the type 2 has a mapping relationship with the resource consumption information 2, and so on, the type N has a mapping relationship with the resource consumption information N. N is a positive integer.

[0059] According to the embodiments of the present disclosure, based on the type of historical volume and the predetermined mapping relationship, the resource consumption information is determined, and the data conversion efficiency is high, thereby improving the response speed of the storage system and avoiding the load imbalance problem caused by monitoring failure. In addition, based on the type of historical volume, the resource consumption information is determined, which can improve the versatility of the volume.

[0060] According to an embodiment of the present disclosure, the volume mapping management method may include the following: Figure 2 In addition to the operations S210 to S230 shown, the operation may also include: determining resource consumption information of nodes to which different types of volumes belong based on the historical data set; and determining a first predetermined mapping relationship based on different types of volumes and resource consumption information.

[0061] In an embodiment of the present disclosure, a historical data set may be obtained by testing read and write tasks for different types of volumes. The historical data set may, for example, include but is not limited to resource consumption information of the node to which each type of volume belongs. The resource consumption information may include a resource consumption ratio. The resource consumption ratio may, for example, include a central processing unit (CPU) consumption ratio and a memory consumption ratio. The CPU consumption ratio and memory consumption ratio corresponding to different types of volumes are different. Volumes may include multiple types, for example, including but not limited to ordinary volumes, thin volumes, compressed volumes, active-active volumes, snapshot volumes, and network attached storage (NAS) volumes.

[0062] Exemplarily, the above-mentioned types of volumes that have been created can be used to test the read and write tasks from the host when the performance attribute of each type of volume is the same as the number of read and write operations that can be completed per second (IOPS). The CPU consumption ratio and memory consumption ratio corresponding to each type of volume can be obtained. The CPU consumption ratio and memory consumption ratio of any type of volume can be respectively corresponded to a maximum CPU consumption and maximum memory consumption in the form of scores. The corresponding relationship of the volume of this type is used as a benchmark. On this basis, the maximum CPU consumption and maximum memory consumption in the form of scores can be determined according to the CPU consumption ratios and memory consumption ratios of other types of volumes.

[0063] Taking a common volume as an example, the CPU consumption ratio and memory consumption ratio of a common volume can be respectively corresponded to a CPU maximum consumption of 10 points and a memory maximum consumption of 10 points. Based on the correspondence of the common volume, the maximum CPU consumption and the maximum memory consumption in the form of points corresponding to the thin volume, compressed volume, active-active volume, snapshot volume and NAS volume are inferred, and the first predetermined mapping relationship between type, IOPS, CPU maximum consumption (score) and memory maximum consumption (score) is obtained as shown in Table 1 below.

[0064]

[0065] According to an embodiment of the present disclosure, by testing read and write tasks for different types of volumes, a mapping relationship is determined, thereby improving the accuracy of resource consumption information.

[0066] According to the embodiments of the present disclosure, for the above Figure 2 The operation S230 shown, determining a home node for a newly added volume from a plurality of storage nodes based on the hardware configuration data and the resource consumption information, may include the operation of: determining resource utilization rates of each of the plurality of storage nodes based on the hardware configuration data and the resource consumption information. Determining a home node for a newly added volume from a plurality of storage nodes based on the resource utilization rates of each of the plurality of storage nodes.

[0067] Exemplarily, the hardware configuration data may indicate hardware resource configuration information. For each storage node: the resource utilization rate may be obtained according to the hardware resource configuration information and the resource consumption information. The resource utilization rates corresponding to each storage node are compared, and the storage node with the lowest resource utilization rate is determined as the home node.

[0068] According to an embodiment of the present disclosure, by determining the resource utilization rates of each of a plurality of storage nodes, the node to which the newly added volume belongs is determined, thereby optimizing resource allocation and improving the stability and service performance of the storage system.

[0069] In another embodiment of the present disclosure, the resource consumption information indicates a theoretical resource consumption amount.

[0070] Figure 4 A schematic diagram of determining storage node resource utilization according to an embodiment of the present disclosure is schematically shown.

[0071] For each storage node: Determine the resource utilization of the storage node as follows: Figure 4 As shown, based on the hardware configuration data 401 of the storage node and the second predetermined mapping relationship 402, the hardware performance estimation 403 of the storage node is determined. According to the theoretical resource consumption 404 of the storage node and the preset coefficient 405 for determining the theoretical resource consumption rate 406, the theoretical resource consumption rate 406 of the storage node is determined. According to the ratio of the theoretical resource consumption rate 406 of the storage node to the hardware performance estimation 403, the resource utilization rate 407 of the storage node is determined.

[0072] In the disclosed embodiment, the second predetermined mapping relationship 402 may characterize the mapping relationship between the hardware configuration data and the hardware performance valuation. The hardware configuration data 401 may include, but is not limited to, CPU type, memory type, and memory capacity. The hardware performance valuation 403 may include a CPU performance valuation and a memory performance valuation. Different CPU types have different corresponding CPU performance valuations, and different memory types have different corresponding memory performance valuations. The same memory type has different capacities and corresponding memory performance valuations. The CPU performance valuation and the memory performance valuation may be determined based on the factory configuration of the CPU and the memory. For example, Table 2 below shows the CPU performance valuation corresponding to the CPU type taking Intel as an example. Table 3 below shows the memory performance valuation corresponding to the memory type and memory capacity taking the sense amplifier (SA) as an example.

[0073]

[0074]

[0075] Exemplarily, the theoretical resource consumption rate 406 of the storage node can be determined according to the product of the theoretical resource consumption 404 of the storage node and the preset coefficient 405 for determining the theoretical resource consumption rate. The theoretical resource consumption 404 can include theoretical CPU consumption and theoretical memory consumption. Resource utilization 407 can include CPU utilization and memory utilization.

[0076] For example, the CPU performance valuation and memory performance valuation that match the CPU type, memory type, and memory capacity of the storage node can be determined from Table 2 and Table 3 above. The theoretical CPU consumption and theoretical memory consumption can be calculated according to the type, quantity, and IOPS value (average value of a single volume of the historical volume within 5 minutes) of the historical volume that has an affiliation relationship with the storage node, corresponding to Table 1 above. The CPU utilization is obtained according to the ratio of the product of the theoretical CPU consumption and the preset coefficient for determining the theoretical CPU consumption rate to the CPU performance valuation. The memory utilization is obtained according to the ratio of the product of the theoretical memory consumption and the preset coefficient for determining the theoretical memory consumption rate to the memory performance valuation. The preset coefficient for determining the theoretical memory consumption rate and the preset coefficient for determining the theoretical CPU consumption rate can be determined according to the performance requirements of the terminal for the distributed storage cluster or according to the experience of the administrator of the storage system. Multiple storage nodes can be sorted in ascending order according to CPU utilization, and then the multiple storage nodes sorted in ascending order can be sorted again in ascending order according to memory utilization, and finally the storage node in the first sorting position is determined as the affiliation node.

[0077] According to the embodiments of the present disclosure, the hardware performance valuation of each of the plurality of storage nodes is determined through a predetermined mapping relationship, thereby further determining the resource utilization rate, which is accurate and has high data conversion efficiency.

[0078] According to an embodiment of the present disclosure, in addition to including the following Figure 2 In addition to the operations S210 to S230 shown, the operation may also include: obtaining hardware usage information of each of the plurality of storage nodes within a processing cycle, and updating a preset coefficient based on the hardware usage information and resource utilization of each of the plurality of storage nodes.

[0079] In the embodiment of the present disclosure, multiple storage nodes process read and write tasks from the host within a processing cycle. After the home node is determined using the method for determining the home node disclosed in the present disclosure, the newly added volume has the attribute of the home node, and then the newly added volume is mapped to the host. After the newly added volume is mapped to the host, the preset time period when the storage node of the home node of the newly added volume processes the read and write tasks from the host is a processing cycle. The hardware usage information can be used to indicate the utilization rate of hardware resources.

[0080] Figure 5 A schematic diagram of updating preset coefficients according to an embodiment of the present disclosure is schematically shown.

[0081] For example, Figure 5 As shown, updating the preset coefficient may include operations S501 to S506.

[0082] In operation S501, hardware usage information of each of a plurality of storage nodes within a predetermined number of processing cycles is obtained.

[0083] In operation S502 , it is determined whether the hardware resource utilization indicated by the hardware usage information is continuously less than the resource utilization for a predetermined number of processing cycles.

[0084] In operation S503, the preset coefficient is decreased.

[0085] In operation S504, it is determined whether the hardware resource utilization indicated by the hardware usage information is continuously greater than the resource utilization for a predetermined number of processing cycles.

[0086] In operation S505, a preset coefficient is increased.

[0087] In operation S506, the preset coefficient is not updated.

[0088] In the embodiments of the present disclosure, when it is determined that the hardware resource utilization indicated by the hardware usage information is continuously less than the resource utilization within a predetermined number of processing cycles, it indicates that the actual hardware resource utilization, such as the actual CPU utilization and the actual memory utilization, is less than the theoretically determined resource utilization, such as the CPU utilization and the memory utilization. This indicates that within the current predetermined number of processing cycles, the read and write model of the volume to which the storage node has an affiliation is not a type that consumes resources easily, such as a 4K 100% read and write model. Operation S503 can be performed to reduce the preset coefficient, thereby reducing the theoretical resource consumption rate, increasing the business volume carried by the storage node, and using resources reasonably.

[0089] When it is determined that the hardware resource utilization indicated by the hardware usage information is continuously not less than the resource utilization within a predetermined number of processing cycles, operation S504 is performed. When it is determined that the hardware resource utilization indicated by the hardware usage information is continuously greater than the resource utilization within a predetermined number of processing cycles, it indicates that the actual hardware resource utilization is greater than the theoretically determined resource utilization, that is, it can be indicated that within the current predetermined number of processing cycles, the read-write model of the volume to which the storage node has an affiliation is a type of easily consumable resource, such as a 1M 100% write read-write model, and operation S505 can be performed to increase the preset coefficient, thereby increasing the theoretical resource consumption rate, reducing the business volume carried by the storage node, and ensuring the stability of the storage system. When it is determined that the hardware resource utilization indicated by the hardware usage information is continuously not greater than the resource utilization within a predetermined number of processing cycles, operation S506 is performed.

[0090] Exemplarily, the predetermined number may be determined based on experience of a manager of the storage system.

[0091] According to the embodiments of the present disclosure, based on the hardware usage and resource utilization of multiple storage nodes within a processing cycle, the preset coefficient is updated, the theoretical resource consumption rate is dynamically adjusted, and then the business volume carried by the storage node is adjusted to ensure the stability of the storage system and achieve rational utilization of resources.

[0092] According to an embodiment of the present disclosure, storage configuration data may include the read and write performance of historical volumes. Based on the resource utilization rates of each of the multiple storage nodes, determining the home node for the newly added volume from the multiple storage nodes may include the following operations: when it is determined that the resource utilization rates of the storage nodes in the multiple storage nodes are all less than a safety threshold, determining the storage node with the smallest resource utilization rate among the multiple storage nodes as the home node for the newly added volume. When it is determined that there is a storage node in the multiple storage nodes whose resource utilization rate is greater than or equal to the safety threshold, determining the storage node whose resource utilization rate is greater than or equal to the safety threshold as the volume migration node. Based on the read and write performance of the historical volume, migrate at least one historical volume belonging to the volume migration node to a storage node whose resource utilization rate is less than the safety threshold.

[0093] In the embodiment of the present disclosure, the safety threshold may be determined based on the experience of the administrator of the storage system. The volume migration method is not specifically limited in the present disclosure.

[0094] According to the embodiments of the present disclosure, since the belonging node is determined only based on the comparison result of the resource utilization of multiple storage nodes, there is a problem that the minimum resource utilization exceeds the safety requirement, which causes the storage node to be overloaded or even the storage node to fail, affecting the normal operation of the storage system. Based on the comparison of the resource utilization of the storage node and the safety threshold, the belonging node is determined, thereby ensuring the load balancing of multiple storage nodes and improving the operation stability of the storage system.

[0095] In the process of implementing the embodiments of the present disclosure, it was also found that storage products correspond to different user types and have different business requirements. When the resource utilization rate of each storage node is greater than the safety threshold, how to improve the user experience while ensuring the load balance of the distributed storage system has become a technical problem that needs to be solved urgently.

[0096] Based on this, in an embodiment of the present disclosure, when it is determined that the resource utilization of storage nodes in multiple storage nodes is greater than the safety threshold, prompt information can be generated. The prompt information can be used to indicate multiple predetermined strategies for determining the home node. The prompt information is sent to the terminal, and after the terminal receives the prompt information, feedback information can be returned based on the prompt information. The feedback information can be used to indicate a target predetermined strategy determined from multiple predetermined strategies. After receiving the feedback information, the home node is determined based on the feedback information.

[0097] Exemplarily, the predetermined strategy may include, but is not limited to, a volume partitioning strategy and an expansion storage node strategy. The volume partitioning strategy may be to divide the newly added volume into multiple sub-volumes based on the size of the newly added volume, and then assign storage nodes with increasing resource utilization to each sub-volume as the home node for each sub-volume. The expansion storage node strategy may be to expand the storage nodes of the distributed storage cluster and use the expanded storage nodes as the home nodes. The administrator who manages the storage system may determine the target predetermined strategy from multiple predetermined strategies based on the user type corresponding to the storage product, and provide feedback through the terminal.

[0098] According to the embodiments of the present disclosure, by generating prompt information and feeding it back to the terminal, the belonging node can be personalized and determined corresponding to different user types of storage products, thereby improving the user experience while ensuring the load balance of the distributed storage system.

[0099] According to an embodiment of the present disclosure, the volume mapping management method may include: Figure 2In addition to the operations S210 to S230 shown, the method may further include the following operations: obtaining a configuration file in response to a mapping request, and determining a security threshold based on the configuration file.

[0100] In the embodiment of the present disclosure, the configuration file may indicate the performance requirement of the terminal for the distributed storage cluster. The performance requirement of the terminal for the distributed storage cluster may be determined according to different types of users.

[0101] For example, financial users pay more attention to product stability and may need to keep the business processed by each storage node within a safe range. In this case, you can configure this type of user as a high-end user in the configuration file. For high-end users, the corresponding configured security threshold can be lower than the experience value. For some small business users, who pay more attention to the speed of product processing under a certain safety probability, you can configure this type of user as a low-end user in the configuration file. For low-end users, the corresponding configured security threshold can be higher than the experience value.

[0102] According to the embodiments of the present disclosure, a security threshold is determined based on the performance requirements of the terminal for the distributed storage cluster, thereby meeting the personalized requirements of the terminal and enhancing the user experience.

[0103] According to an embodiment of the present disclosure, a preset coefficient may also be determined based on a configuration file.

[0104] For example, for high-end users, the corresponding preset coefficient can be higher than the empirical value. For low-end users, the corresponding preset coefficient can be lower than the empirical value. Since high-end users require the storage node to carry more volumes, the theoretical resource consumption rate is reduced by setting a low preset coefficient. Low-end users require the security and stability of the storage system to be prioritized, and the metadata writing speed is not a high priority, so the theoretical resource consumption rate is increased by setting a high preset coefficient.

[0105] Based on the above volume mapping management method, the present disclosure also provides a volume mapping management device. Figure 6 The device is described in detail.

[0106] Figure 6 The structure block diagram of the volume mapping management device according to the embodiment of the present disclosure is schematically shown.

[0107] like Figure 6 As shown, the volume mapping management device 600 of this embodiment includes an acquisition module 610 , a first determination module 620 and a second determination module 630 .

[0108] The acquisition module 610 is used to respond to the mapping request of the newly added volume mapping host and obtain the hardware configuration data of the distributed storage cluster, wherein the distributed storage cluster includes multiple storage nodes, and the multiple storage nodes are used to process the read and write tasks from the host. In one embodiment, the acquisition module 610 can be used to perform the operation S210 described above, which will not be repeated here.

[0109] The first determination module 620 is used to determine resource consumption information of each of the plurality of storage nodes based on the storage configuration data of the historical volumes having an affiliation relationship with the plurality of storage nodes. In one embodiment, the first determination module 620 may be used to perform the operation S220 described above, which will not be described in detail herein.

[0110] The second determination module 630 is used to determine the home node for the newly added volume from multiple storage nodes based on the hardware configuration data and resource consumption information, so that the home node processes the read and write tasks from the host after the newly added volume is mapped to the host. In one embodiment, the second determination module 630 can be used to perform the operation S230 described above, which will not be repeated here.

[0111] According to an embodiment of the present disclosure, the storage configuration data may include the type of the historical volume. The first determination module 620 may include a mapping unit. The mapping unit is used to determine the resource consumption information of each of the plurality of storage nodes based on the type of the historical volume and the first predetermined mapping relationship, wherein the first predetermined mapping relationship represents the mapping relationship between the type of the volume and the resource consumption information.

[0112] According to an embodiment of the present disclosure, the volume mapping management device 600 may further include: a third determination module and a fourth determination module. The third determination module is used to determine resource consumption information of nodes to which different types of volumes belong based on a historical data set, wherein the historical data set is obtained by performing test read and write tasks on different types of volumes. The fourth determination module is used to determine a first predetermined mapping relationship based on different types of volumes and resource consumption information.

[0113] According to an embodiment of the present disclosure, the second determination module 630 may include: a resource utilization determination unit and a home node determination unit. The resource utilization determination unit is used to determine the resource utilization of each of the multiple storage nodes based on the hardware configuration data and the resource consumption information. The home node determination unit is used to determine the home node for the newly added volume from the multiple storage nodes based on the resource utilization of each of the multiple storage nodes.

[0114] According to an embodiment of the present disclosure, the resource consumption information indicates the theoretical resource consumption. Determining the resource utilization of each of the multiple storage nodes based on the hardware configuration data and the resource consumption information may include: determining the hardware performance valuation of each of the multiple storage nodes based on the hardware configuration data of each of the multiple storage nodes and a second predetermined mapping relationship, wherein the second predetermined mapping relationship represents the mapping relationship between the hardware configuration data and the hardware performance valuation; determining the theoretical resource consumption rate of each of the multiple storage nodes based on the theoretical resource consumption of each of the multiple storage nodes and a preset coefficient for determining the theoretical resource consumption rate; determining the resource utilization of each of the multiple storage nodes based on the ratio of the theoretical resource consumption rate of each of the multiple storage nodes to the hardware performance valuation.

[0115] According to an embodiment of the present disclosure, the volume mapping management device 600 may further include: a hardware usage information acquisition module and an update module. The hardware usage information acquisition module is used to acquire hardware usage information of each of the multiple storage nodes in a processing cycle, wherein the multiple storage nodes process read and write tasks from the host in the processing cycle. The update module is used to update the preset coefficient based on the hardware usage information and resource utilization of each of the multiple storage nodes.

[0116] According to an embodiment of the present disclosure, the storage configuration data includes the read and write performance of the historical volume. Based on the resource utilization of each of the multiple storage nodes, determining the belonging node for the newly added volume from the multiple storage nodes may include: when it is determined that the resource utilization of the storage nodes in the multiple storage nodes is less than the safety threshold, determining the storage node with the smallest resource utilization among the multiple storage nodes as the belonging node for the newly added volume; when it is determined that there is a storage node in the multiple storage nodes whose resource utilization is greater than or equal to the safety threshold, determining the storage node whose resource utilization is greater than or equal to the safety threshold as the volume migration node; and based on the read and write performance of the historical volume, migrating at least one historical volume belonging to the volume migration node to a storage node whose resource utilization is less than the safety threshold.

[0117] According to an embodiment of the present disclosure, the volume mapping management device 600 may further include: a configuration file acquisition module and a threshold determination module. The configuration file acquisition module is used to obtain a configuration file in response to a mapping request, wherein the configuration file indicates the performance requirements of the terminal for the distributed storage cluster. The threshold determination module is used to determine a safety threshold based on the configuration file.

[0118] According to an embodiment of the present disclosure, any multiple modules in the acquisition module 610, the first determination module 620, and the second determination module 630 can be combined into one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the acquisition module 610, the first determination module 620, and the second determination module 630 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware, and firmware, or in any appropriate combination of any of them. Alternatively, at least one of the acquisition module 610, the first determination module 620, and the second determination module 630 can be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding function can be executed.

[0119] Figure 7 A block diagram of an electronic device suitable for implementing a volume mapping management method according to an embodiment of the present disclosure is schematically shown.

[0120] like Figure 7 As shown, the electronic device 700 according to an embodiment of the present disclosure includes a processor 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage part 708 to a random access memory (RAM) 703. The processor 701 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (for example, an application-specific integrated circuit (ASIC)), etc. The processor 701 may also include an onboard memory for caching purposes. The processor 701 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0121] In RAM 703, various programs and data required for the operation of electronic device 700 are stored. Processor 701, ROM 702 and RAM 703 are connected to each other via bus 704. Processor 701 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 702 and / or RAM 703. It should be noted that the program can also be stored in one or more memories other than ROM 702 and RAM 703. Processor 701 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in one or more memories.

[0122] According to an embodiment of the present disclosure, the electronic device 700 may further include an input / output (I / O) interface 705, which is also connected to the bus 704. The electronic device 700 may further include one or more of the following components connected to the input / output (I / O) interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 708 including a hard disk, etc.; and a communication portion 709 including a network interface card such as a LAN card, a modem, etc. The communication portion 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the input / output (I / O) interface 705 as needed. A removable medium 711, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.

[0123] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.

[0124] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, it may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus or a device. For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include the ROM 702 and / or RAM 703 described above and / or one or more memories other than ROM 702 and RAM 703.

[0125] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the method provided by the embodiment of the present disclosure.

[0126] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 701. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0127] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 709, and / or installed from the removable medium 711. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0128] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.

[0129] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).

[0130] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0131] It will be appreciated by those skilled in the art that the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations or combinations are not explicitly described in the present disclosure. In particular, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways without departing from the spirit and teachings of the present disclosure. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0132] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A volume mapping management method, characterized in that: The method comprises: In response to a mapping request of a newly added volume mapping host, hardware configuration data of a distributed storage cluster is obtained, wherein the distributed storage cluster includes a plurality of storage nodes, and the plurality of storage nodes are used to process read and write tasks from the host; Determining resource consumption information of each of the plurality of storage nodes based on storage configuration data of historical volumes having an affiliation relationship with the plurality of storage nodes; and Based on the hardware configuration data and the resource consumption information, a home node for the newly added volume is determined from the multiple storage nodes, so that the home node processes the read and write tasks from the host after the newly added volume is mapped to the host.

2. The method according to claim 1, characterized in that The storage configuration data includes the type of the historical volume; The determining, based on the storage configuration data of the historical volumes having an affiliation relationship with the multiple storage nodes, the resource consumption information of each of the multiple storage nodes comprises: The resource consumption information of each of the plurality of storage nodes is determined based on the type of the historical volume and a first predetermined mapping relationship, wherein the first predetermined mapping relationship represents a mapping relationship between the type of volume and the resource consumption information.

3. The method according to claim 2, characterized in that The method further comprises: Determining resource consumption information of nodes to which different types of volumes belong based on a historical data set, wherein the historical data set is obtained by performing test read and write tasks on the different types of volumes; and The first predetermined mapping relationship is determined based on the different types of volumes and the resource consumption information.

4. The method according to claim 1, characterized in that: The determining, based on the hardware configuration data and the resource consumption information, a home node for the newly added volume from the multiple storage nodes includes: Determining resource utilization rates of each of the plurality of storage nodes based on the hardware configuration data and the resource consumption information; and Based on the resource utilization rates of the multiple storage nodes, a home node for the newly added volume is determined from the multiple storage nodes.

5. The method according to claim 4, characterized in that The resource consumption information indicates theoretical resource consumption; The determining, based on the hardware configuration data and the resource consumption information, the resource utilization rate of each of the plurality of storage nodes comprises: Determine hardware performance estimates of each of the multiple storage nodes based on the hardware configuration data of each of the multiple storage nodes and a second predetermined mapping relationship, wherein the second predetermined mapping relationship represents a mapping relationship between hardware configuration data and hardware performance estimates; Determining the theoretical resource consumption rate of each of the plurality of storage nodes according to the theoretical resource consumption of each of the plurality of storage nodes and a preset coefficient for determining the theoretical resource consumption rate; and The resource utilization rates of the multiple storage nodes are determined according to the ratios of the theoretical resource consumption rates of the multiple storage nodes to the hardware performance estimates.

6. The method according to claim 5, characterized in that The method further comprises: Acquiring hardware usage information of each of the plurality of storage nodes in a processing cycle, wherein the plurality of storage nodes process read and write tasks from the host in the processing cycle; and The preset coefficient is updated based on the hardware usage information and the resource utilization rate of each of the plurality of storage nodes.

7. The method according to claim 4, characterized in that The storage configuration data includes the read and write performance of the historical volume; The determining, from the plurality of storage nodes, a home node for the newly added volume based on respective resource utilization rates of the plurality of storage nodes comprises: In the case where it is determined that the resource utilization rates of the storage nodes among the multiple storage nodes are all less than the safety threshold, determining the storage node with the lowest resource utilization rate among the multiple storage nodes as the home node for the newly added volume; In the case where it is determined that there is a storage node among the plurality of storage nodes whose resource utilization is greater than or equal to the safety threshold, determining the storage node whose resource utilization is greater than or equal to the safety threshold as a volume migration node; and Based on the read and write performance of the historical volume, at least one historical volume belonging to the volume migration node is migrated to a storage node whose resource utilization is less than the safety threshold.

8. The method according to claim 7, characterized in that The method further comprises: In response to the mapping request, obtaining a configuration file, wherein the configuration file indicates the performance requirements of the terminal for the distributed storage cluster; and Based on the configuration file, the security threshold is determined.

9. A volume mapping management device, characterized in that: The device comprises: An acquisition module, configured to acquire hardware configuration data of a distributed storage cluster in response to a mapping request of a newly added volume mapping host, wherein the distributed storage cluster includes a plurality of storage nodes, and the plurality of storage nodes are configured to process read and write tasks from the host; A first determining module, configured to determine resource consumption information of each of the plurality of storage nodes based on storage configuration data of historical volumes having an affiliation relationship with the plurality of storage nodes; and The second determination module is used to determine the home node for the newly added volume from the multiple storage nodes based on the hardware configuration data and the resource consumption information, so that the home node processes the read and write tasks from the host after the newly added volume is mapped to the host.

10. An electronic device comprising: one or more processors; a memory for storing one or more computer programs, It is characterized in that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • A method and apparatus for achieving node information consistency in a distributed storage system

    CN109542338A

  • Distributed storage method and device, electronic equipment and storage medium

    CN119065844A

  • Placing data storage volumes

    US10564870B1

  • Reservation of hardware resources in a computer system based on utilization measurements during time ranges

    US20180060127A1

  • Use of cluster-level redundancy within a cluster of a distributed storage management system to address node-level errors

    US20230152986A1