Storage pool resource configuration method, program product, device and medium

By establishing a sub-resource pool in the storage pool and selecting storage devices based on the data saturation and remaining space of the storage device, the problem of low efficiency in large-capacity data storage is solved, and timely replacement is carried out when the storage device is abnormal to ensure that the business is carried out normally.

CN119271152BActive Publication Date: 2025-03-18INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411804274.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-10
Publication Date
2025-03-18
Estimated Expiration
2044-12-10

AI Technical Summary

Technical Problem

When existing storage pools process large-capacity data storage, they cannot effectively manage resource volumes, resulting in low storage efficiency and possible hard disk exceptions, affecting business continuity.

Method used

By establishing a sub-resource pool in the storage pool, selecting storage devices that meet preset conditions to form a sub-resource pool based on the data saturation and remaining space of the storage device, realizing coordination with the main resource pool to efficiently store large-capacity data and timely replace it when the storage device is abnormal.

Benefits of technology

It improves storage efficiency, ensures the efficiency of large-capacity data storage, and ensures normal business operations when storage devices are abnormal, avoiding data loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119271152B_ABST
    Figure CN119271152B_ABST
Patent Text Reader

Abstract

The present application discloses a configuration method, program product, device and medium for storage pool resources, which relates to the field of storage technology, including obtaining storage data information of volumes in the resource pool in response to receiving storage service instructions; mapping the storage data information of the volumes to storage devices to obtain the data saturation of the storage devices associated with the volumes; selecting storage devices that meet preset conditions to form a sub-resource pool in combination with the data saturation of the storage devices, and using the sub-resource pool to store data. The present application ensures efficient storage of large-capacity data storage services through the coordination of sub-resource pools and storage pools; and when the storage device status is abnormal, the abnormal position in the resource pool is replaced in time by the sub-resource pool to ensure the normal operation of the business.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of storage technology, and in particular to a storage pool resource configuration method, program product, device and medium. Background Art

[0002] A storage pool refers to the combination of multiple independent physical storage devices to form a logically unified storage resource pool. The storage pool can provide optimization in terms of capacity, performance, and availability, and realize centralized management and flexible allocation of storage resources. Storage devices store data by creating storage volumes on multiple hard disks at the physical level, and each storage volume is integrated into a storage resource pool for logical management of each storage volume. This management method can achieve efficient management of each storage volume when the number of hard disks is small, ensuring that data can be efficiently stored in each volume.

[0003] In some related technologies, in order to meet the current customers' needs for large-capacity and high-efficiency storage, the current increase in hard disk data and capacity has made it difficult for the resource pool to manage each resource volume. When large-capacity data processing on the server is completed and needs to be stored on the storage side, the resource pool cannot call enough volumes for efficient storage according to the current scenario, which will increase the data storage time, reduce storage efficiency and affect the business progress; large-capacity storage may also cause hard disk abnormalities. The abnormality of a single disk may be restored through verification, but the abnormal disk cannot be replaced in time, which will affect the continuity of the business. If multiple disks appear at the same time, the data cannot be restored. Summary of the invention

[0004] In order to solve at least one of the problems mentioned in the above background technology, the present application provides a storage pool resource configuration method, program product, device and medium, which can establish a sub-resource pool according to the current resource utilization in the storage resource pool, and ensure efficient storage of large-capacity data storage services through the coordination of the sub-resource pool and the storage pool; and when the storage device status is abnormal, the abnormal position in the resource pool is replaced in time through the sub-resource pool to ensure the normal operation of the business.

[0005] The specific technical solutions provided by the embodiments of this application are as follows:

[0006] In a first aspect, a method for configuring storage pool resources is provided, which is applied to a storage system, wherein the storage system includes a resource pool for storing data, and the resource pool includes one or more storage devices, and the method includes:

[0007] In response to receiving a storage service instruction, acquiring storage data information of a volume in the resource pool;

[0008] Mapping the storage data information of the volume onto a storage device to obtain data saturation of the storage device associated with the volume;

[0009] In combination with the data saturation of the storage device, storage devices that meet preset conditions are selected to form a sub-resource pool, and the sub-resource pool is used to store data.

[0010] In a specific embodiment, obtaining storage data information of volumes in a resource pool specifically includes: calculating data saturation of the volumes in the resource pool, wherein the data saturation of the volumes is equal to the ratio of the current storage data of the volumes to the maximum storage data of the volumes; obtaining the data saturation of all volumes in the resource pool, and arranging them in ascending order according to the data saturation values ​​to form the storage data information of the volumes.

[0011] In a specific embodiment, the storage data information of the volume is mapped onto a storage device to obtain the data saturation of the storage device associated with the volume, specifically including: mapping the data saturation of each volume onto the storage device associated with the volume to obtain the data saturation of each volume in the storage device; performing weighted calculation on the data saturation of each volume in the storage device to obtain the data saturation of the storage device.

[0012] In a specific embodiment, the storage devices are arranged from low to high according to the data saturation values ​​of the storage devices to form a storage device sequence; the remaining space capacities of the storage devices in the storage device sequence are obtained in turn, and the remaining space capacities of the storage devices are summed up to obtain the total capacity; the capacity threshold to be configured of the storage system is obtained, and when the total capacity exceeds the capacity threshold, it is confirmed that the storage device meets the preset condition.

[0013] In a specific embodiment, after confirming that the storage device meets the preset conditions, the serial number of the last storage device in the total capacity is read; the storage device corresponding to the first serial number in the storage device sequence to the storage device corresponding to the serial number of the last storage device is configured as a selected storage device; the stored data on the selected storage device is transferred to other storage devices, and the selected storage devices are combined to form the sub-resource pool.

[0014] In a specific embodiment, before using the sub-resource pool to store data, the method also includes: detecting the status of the storage device and confirming that the status of all the storage devices is normal; setting the redundancy mode of the sub-resource pool to be closed, and setting all volumes in the sub-resource pool to receive data.

[0015] In a specific embodiment, the preset number of storage devices allowed to be damaged of the storage system is obtained, and the preset allowable damage space corresponding to the storage devices of the preset number of storage devices allowed to be damaged is calculated; and the capacity threshold to be configured is set to be higher than the capacity of the preset allowable damage space.

[0016] In a specific embodiment, the resource pool also includes a main resource pool. Before using the sub-resource pool to store data, the sub-resource pool sends a capacity detection signal to the main resource pool to perform data verification on the data in the sub-resource pool, obtain verification information, and store the verification information in the current sub-resource pool; the data in the sub-resource pool except the verification information is transferred to the main resource pool to release the capacity of the sub-resource pool to the initial capacity.

[0017] In a specific embodiment, after transferring the data in the sub-resource pool except the verification information to the main resource pool, the data processing time under the capacity threshold condition is calculated. If the data processing time meets the preset time, the capacity of the sub-resource pool is set to the capacity threshold; if the data processing time does not meet the preset time, the capacity of the sub-resource pool is set to expand.

[0018] In a specific embodiment, in response to an abnormality in one or more of the storage devices, the sub-resource pool is set to replace the abnormal storage device; the remaining space in the abnormal storage device is obtained, and the sub-resource pool is set to allocate a replacement space with the same capacity as the remaining space, and the replacement space is used to store the abnormal storage data associated with the remaining space.

[0019] In a specific embodiment, the number N of abnormal storage devices is obtained, and the sub-resource pool is divided into N parts, wherein N is a positive integer greater than or equal to 1; all data associated with the abnormal storage device are obtained and integrated to form overall data, and all abnormal storage devices are obtained and integrated to form an abnormal state device; the overall data is divided into N parts, and the abnormal storage data is divided into N+1 parts; the N+1 parts of data are written into the N sub-resource pools and the abnormal state devices respectively; in response to receiving a request to repair data, data repair is performed through the data in the sub-resource pool and the abnormal state device.

[0020] In a specific embodiment, in response to receiving a repair data request, the abnormal storage device is unplugged and replaced with a normal storage device; and data verification is performed on the N copies of data in the sub-resource pool to obtain repair data associated with the abnormal storage device.

[0021] In a second aspect, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements the following steps:

[0022] Step A: in response to receiving a storage service instruction, obtaining storage data information of a volume in the resource pool;

[0023] Step B: mapping the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume;

[0024] Step C: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0025] In a third aspect, a computer device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the following steps are implemented:

[0026] Step A: in response to receiving a storage service instruction, obtaining storage data information of a volume in the resource pool;

[0027] Step B: mapping the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume;

[0028] Step C: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0029] In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0030] Step A: in response to receiving a storage service instruction, obtaining storage data information of a volume in the resource pool;

[0031] Step B: mapping the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume;

[0032] Step C: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0033] The embodiments of the present application have the following beneficial effects:

[0034] 1. The solution provided in this embodiment is used for managing storage resources in a storage system. Specifically, the storage data information of the volume in the resource pool is obtained, and the storage data information of the volume is mapped to the storage device to obtain the storage status information on the storage device, that is, by obtaining the data saturation of the storage device, and obtaining the selected storage device under the preset conditions to form a sub-resource pool, and the constructed sub-resource pool is used for data storage to achieve the coordinated cooperation of the sub-resource pool and the resource pool for data storage, thereby improving storage efficiency.

[0035] 2. When a storage device is abnormal, the sub-resource pool is used as a redundant resource pool to replace the abnormal storage device, so that the sub-resource pool can take over the data services corresponding to the damaged storage device and ensure that subsequent storage services operate normally; and when the damaged storage device may cause data loss, the sub-resource pool is used to verify data with the current abnormal resource pool to restore the data in the abnormal state disk. This method can achieve data recovery without the participation of the system disk. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0037] Figure 1 A schematic diagram of the application environment in this application is shown;

[0038] Figure 2 A schematic diagram showing a method for configuring storage pool resources according to the present application is shown;

[0039] Figure 3 A schematic diagram of a computer device according to the present application is shown. DETAILED DESCRIPTION

[0040] In order to make the purpose, technical solutions and advantages of this application clearer, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0041] The storage pool resource configuration method provided in this application can be applied to Figure 1In the application environment shown. Among them, the terminal 102 communicates with the server 104 through the network. The terminal 102 is configured with a controller, the controller is connected to the storage system, and the storage system includes a resource pool for storing data, and the resource pool is provided with one or more. The server is connected to the controller for sending or receiving signals from the controller. Among them, the terminal 102 can be, but is not limited to, various personal computers, laptops, smart phones, tablet computers and portable wearable devices, and the server 104 can be implemented with an independent server or a server cluster consisting of multiple servers.

[0042] In one embodiment, Figure 2 As shown, a method for configuring storage pool resources is provided. The method is applied to a storage system as an example for explanation. The storage system includes a resource pool for storing data. The resource pool includes one or more storage devices. The storage device in this embodiment is selected and configured as a hard disk. The method includes the following steps:

[0043] Step 101: In response to receiving a storage service instruction, obtain storage data information of a volume in the resource pool.

[0044] In order to improve the storage efficiency of the resource pool for large amounts of data, the establishment of a sub-resource pool is synchronously executed during the initial establishment of the resource pool, and volumes are allocated to the sub-resource pool to ensure data storage through the sub-resource pool. The specific process includes that after the resource pool in the hard disk is established, the controller sends a business instruction to the resource pool. At this time, the hard disk receives the business instruction and obtains the storage data information of the volume in the resource pool to feed back to the controller. Among them, obtaining the storage data information of the volume in the resource pool specifically includes: calculating the data saturation of the volume in the resource pool, wherein the data saturation of the volume is equal to the ratio of the current storage data of the volume to the maximum storage data of the volume; obtaining the data saturation of all volumes in the resource pool, and arranging them in ascending order according to the data saturation values ​​to form the storage data information of the volume.

[0045] Step 102: Map the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume.

[0046] Specifically, the method includes mapping the data saturation of each volume to the storage device associated with the volume to obtain the data saturation of each volume in the storage device; and performing weighted calculation on the data saturation of each volume in the storage device to obtain the data saturation of the storage device.

[0047] In this embodiment, the data saturation of the volumes in the resource pool is obtained through the hard disk end, and this value is fed back to the controller end, so that the controller end calculates the data saturation of each volume in the resource pool, and after the calculation is completed, the data saturation of the volume is internally counted, so as to obtain the storage data information of the volume by sorting the data saturation from low to high. The data saturation of each volume is obtained, and the data saturation is mapped to the corresponding hard disk, so that the data saturation of each volume in the hard disk can be obtained, and the data saturation of each volume in the hard disk can be weighted to obtain the data saturation of each current hard disk.

[0048] Step 103: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0049] After obtaining the data saturation of the storage devices, the storage devices are arranged from low to high according to the data saturation values ​​of the storage devices to form a storage device sequence; the remaining space capacities of the storage devices in the storage device sequence are obtained in turn, and the remaining space capacities of the storage devices are summed up to obtain the total capacity; the capacity threshold to be configured of the storage system is obtained, and when the total capacity exceeds the capacity threshold, it is confirmed that the storage device meets the preset condition.

[0050] Among them, the preset capacity threshold needs to be configured according to the specific scenario of the storage system, specifically, the preset number of storage devices allowed to be damaged of the storage system is obtained, and the preset allowable damage space corresponding to the storage devices with the preset number of storage devices allowed to be damaged is calculated; the capacity threshold to be configured is set to be higher than the capacity of the preset allowable damage space to ensure that the established sub-resource pool can meet the storage needs of the remaining data when other hard disks are damaged.

[0051] Furthermore, after confirming that the storage device meets the preset conditions, the serial number of the last storage device in the total capacity is read; the storage device corresponding to the first serial number in the storage device sequence to the storage device corresponding to the serial number of the last storage device is configured as a selected storage device; the stored data on the selected storage device is transferred to other storage devices, and the selected storage devices are combined to form the sub-resource pool.

[0052] In this embodiment, the corresponding hard disks are selected in order from low to high data saturation, and the remaining space of the selected hard disks is obtained. The remaining space capacity of the hard disks is merged and calculated. After the merger is completed, the sum of the capacities of the current hard disks is obtained until the sum of the capacities exceeds the capacity threshold. Exemplarily, the first hard disk with the lowest saturation is merged, and then merged to the second hard disk with the second highest saturation. When the sum of the capacities is higher than the capacity threshold when merged to the fifth hard disk, the first to fifth hard disks are set as sub-resource pool hard disks to obtain a constructed sub-resource pool.

[0053] It should be noted that before using the selected sub-resource pool for data storage, the capacity resource pool of the current data disk is initialized by transferring the data in the sub-resource pool to other data disks, so as to release the capacity of the sub-resource pool.

[0054] Furthermore, the resource pool also includes a main resource pool, which is set corresponding to the sub-resource pool and occupies different areas in the resource pool respectively. Before the sub-resource pool is actually used, the sub-resource pool sends a capacity detection signal to the main resource pool to verify the data in the sub-resource pool, obtain verification information, and store the verification information in the current sub-resource pool; the data in the sub-resource pool except the verification information is transferred to the main resource pool to release the capacity of the sub-resource pool to the initial capacity.

[0055] After the sub-resource pool is established, an establishment completion signal is sent to the controller end. The controller end receives the establishment completion signal and sends the sub-resource pool establishment completion signal to the server end. The server end sends the business data to be stored to the hard disk end. At this time, the controller of the hard disk end preferentially stores the data in other resource pools other than the sub-resource pool; at the same time, the storage device status is detected, and it is confirmed that the status of all the storage devices is normal. At this time, a normal device indication is sent to the controller. The controller end receives the normal device indication, sets the redundant mode of the sub-resource pool to be closed, and sets all volumes in the sub-resource pool to receive data; and configures all volumes in the sub-resource pool to perform pressurization operations so that the volumes in the sub-resource pool are at the highest read and write efficiency, so as to maximize the efficiency of data storage through the coordinated cooperation of the main resource pool and the sub-resource pool in the resource pool.

[0056] It should be noted that when the server confirms that the current business data processing is complete, it sends an end instruction to the controller. At this time, the controller stops the volume compression operation and realizes that the stored data is evenly stored in each volume of the main resource pool or sub-resource pool.

[0057] Step 104: Obtain the amount of business data to be processed by the storage system, and adjust the capacity of the sub-resource pool according to the amount of business data to be processed.

[0058] For different business scenarios, the amount of business data to be configured is different. In order to make the coordinated storage of the main resource pool and the sub-resource pool in this embodiment applicable to subsequent business data, before receiving the next business data, the capacity of the resource pool is first judged. If the capacity is insufficient, the capacity of the resource pool is expanded, specifically including: after transferring the data except the verification information in the sub-resource pool to the main resource pool, calculating the data processing time under the capacity threshold condition, if the data processing time meets the preset time, setting the capacity of the sub-resource pool to the capacity threshold; if the data processing time does not meet the preset time, setting the capacity of the sub-resource pool to expand.

[0059] Exemplarily, before receiving the next business data, after adjusting the data in the sub-resource pool to be transferred to the main resource, the capacity in the current resource pool is released to the initial capacity, that is, the current resource pool only has the capacity occupied by the verification information.

[0060] If the data processing time does not meet the preset time, the capacity of the sub-resource pool is set to be expanded, specifically including obtaining the preset time required for the next business data based on the capacity of the sub-resource pool, based on the stored verification information and the above-set capacity threshold; if the required data processing time exceeds the preset time, the sub-resource pool is expanded, specifically including obtaining storage devices corresponding to other storage device numbers in the storage device sequence in sequence according to the current storage device number in the sub-resource pool, and calculating the sum of the capacity of the added other storage devices and the capacity of the current sub-resource pool in sequence, and calculating the total capacity once each time a storage device is added, until the data processing time of the sub-resource pool meets the preset time, confirming that the expansion of the sub-resource pool is completed.

[0061] Step 105: In response to an abnormality occurring in the storage device, the sub-resource pool is set to replace the abnormal storage device.

[0062] At the same time, the remaining space in the abnormal storage device is obtained, and the sub-resource pool is set to allocate a replacement space with the same capacity as the remaining space, and the replacement space is used to store the abnormal storage data associated with the remaining space.

[0063] In this embodiment, when one or more hard disks in the storage system are abnormal, a sub-resource pool is set to replace the abnormal hard disk. The controller calculates the remaining data space in the current abnormal hard disk, and sends the data to the sub-resource pool after the calculation is completed. After the sub-resource pool receives the remaining data space data, it allocates space of the same capacity in the sub-resource pool to take over the data service of the damaged hard disk, so as to ensure that after the replacement is completed, subsequent storage services can operate normally.

[0064] In a specific embodiment, when a hard disk abnormality occurs, in order to avoid data loss caused by the abnormal state of the hard disk, data recovery is achieved through the data stored in the sub-resource pool, which specifically includes: obtaining the number N of abnormal storage devices, dividing the sub-resource pool into N parts, where N is a positive integer greater than or equal to 1; obtaining all data associated with the abnormal storage device to integrate to form the overall data, obtaining all the abnormal storage devices to integrate to form an abnormal state device; setting the overall data to be equally divided into N parts, and setting the abnormal storage data to be divided into N+1 parts; setting the N+1 parts of data to be written into the N sub-resource pools and the abnormal state devices respectively; in response to receiving a request to repair data, performing data repair through the data in the sub-resource pool and the abnormal state device.

[0065] Furthermore, in response to receiving a request to repair data, the abnormal storage device is unplugged and replaced with a normal storage device; and data verification is performed on the N copies of data in the sub-resource pool to obtain repair data associated with the abnormal storage device.

[0066] In this embodiment, when a hard disk abnormality occurs, a sub-resource pool and an abnormal state disk are set to form a special RAID5, and the sub-resource pool resources are evenly divided into the same number of copies as the abnormal state disks. The current number of abnormal state disks is N, and the sub-resource pool will be divided into N copies. All resources in the current abnormal disk are integrated into an overall data packet, and the data in the overall data packet is evenly divided into the same number of sub-resource pools. After the division is completed, the current abnormal data is divided into N+1 copies, and the N+1 copies of data are written into N sub-resource pools and abnormal state disks, where the abnormal state disk is regarded as 1 disk in RAID5 as a whole. After the writing is completed, the N sub-resource pools each have N copies of data, and the abnormal state disk contains 1 copy of data. After the verification is completed, the sub-resource pool sends a verification completion instruction to the controller.

[0067] Furthermore, after the sub-resource pool sends a verification completion instruction to the controller end, the data in the abnormal state disk can be restored through the sub-resource pool. At the same time, the controller sends a repair instruction to the UI interface end. At this time, the customer can perform a powered-on repair, that is, directly unplug the disk in the abnormal state and replace it. After the replacement is completed, the controller end sends a data recovery instruction to the sub-resource pool. The N copies of data in the sub-resource pool will undergo RAID5 data verification, and the data in the abnormal state disk will be restored. The method in this embodiment can unplug the abnormal state hard disk and realize data recovery without the need for the system disk to participate in the backup of the dual controllers.

[0068] Through the scheme in this embodiment, the storage content of the sub-storage pool is determined according to the current device status, the storage disk status and the server-side task status. The sub-storage pool cooperates with the main storage pool to ensure that when a large-capacity data storage service arrives, the storage volume can play a role to maximize the efficiency of data placement on the disk; the capacity of the sub-storage pool is dynamically adjustable, and the number of volumes in the storage pool can be dynamically adjusted. The auxiliary storage of the sub-storage pool facilitates the volume management in the storage pool, which improves the storage efficiency. Under the premise of the same hardware equipment, the management allocation of the resource pool is optimized, the overall utilization rate of the resource pool and the data storage efficiency are improved. When an equipment abnormality occurs, there is no need for the dual controller of the storage device to perform system disk backup. The data can be redundantly managed within the resource pool, and the abnormal unit is replaced by the sub-resource pool, and the data in the abnormal process will not be lost.

[0069] Embodiment 2

[0070] In accordance with the above embodiment, a computer program product is provided, including a computer program, which implements the following steps when executed by a processor:

[0071] Step 201: In response to receiving a storage service instruction, obtaining storage data information of a volume in the resource pool;

[0072] Step 202: Map the storage data information of the volume to a storage device to obtain the data saturation of the storage device associated with the volume;

[0073] Step 203: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0074] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0075] Calculate the data saturation of the volumes in the resource pool, where the data saturation of the volumes is equal to the ratio of the current storage data of the volumes to the maximum storage data of the volumes; obtain the data saturation of all volumes in the resource pool, and arrange them in ascending order according to the data saturation values ​​to form storage data information of the volumes.

[0076] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0077] The data saturation of each volume is mapped to the storage device associated with the volume to obtain the data saturation of each volume in the storage device; the data saturation of each volume in the storage device is weightedly calculated to obtain the data saturation of the storage device.

[0078] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0079] Arrange the storage devices from low to high according to the data saturation values ​​of the storage devices to form a storage device sequence; obtain the remaining space capacities of the storage devices in the storage device sequence in turn, and sum up the remaining space capacities of the storage devices to obtain a total capacity; obtain the capacity threshold to be configured of the storage system, and when the total capacity exceeds the capacity threshold, confirm that the storage device meets the preset condition.

[0080] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0081] After confirming that the storage device meets the preset conditions, read the serial number of the last storage device in the total capacity; configure the storage device corresponding to the first serial number in the storage device sequence to the storage device corresponding to the serial number of the last storage device as the selected storage device; transfer the stored data on the selected storage device to other storage devices, and combine the selected storage devices to form the sub-resource pool.

[0082] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0083] Detect the status of the storage device and confirm that the status of all the storage devices is normal; set the redundancy mode of the sub-resource pool to be closed, and set all volumes in the sub-resource pool to receive data.

[0084] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0085] The preset number of storage devices of the storage system that can be allowed to be damaged is obtained, and the preset allowed damage space corresponding to the storage devices of the preset number of storage devices that can be allowed to be damaged is calculated; and the capacity threshold to be configured is set to be higher than the capacity of the preset allowed damage space.

[0086] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0087] The resource pool also includes a main resource pool. Before using the sub-resource pool to store data, the sub-resource pool sends a capacity detection signal to the main resource pool to perform data verification on the data in the sub-resource pool, obtain verification information, and store the verification information in the current sub-resource pool; the data in the sub-resource pool except the verification information is transferred to the main resource pool to release the capacity of the sub-resource pool to the initial capacity.

[0088] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0089] After transferring the data in the sub-resource pool except the verification information to the main resource pool, the data processing time under the capacity threshold condition is calculated. If the data processing time meets the preset time, the capacity of the sub-resource pool is set to the capacity threshold; if the data processing time does not meet the preset time, the capacity of the sub-resource pool is set to expand.

[0090] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0091] In response to an abnormality in one or more of the storage devices, the sub-resource pool is set to replace the abnormal storage device; the remaining space in the abnormal storage device is obtained, and the sub-resource pool is set to allocate a replacement space with the same capacity as the remaining space, and the replacement space is used to store the abnormal storage data associated with the remaining space.

[0092] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0093] Obtain the number N of abnormal storage devices, divide the sub-resource pool into N parts, where N is a positive integer greater than or equal to 1; obtain all data associated with the abnormal storage device and integrate them to form overall data, obtain all abnormal storage devices and integrate them to form abnormal state devices; set the overall data to be equally divided into N parts, and set the abnormal storage data to be divided into N+1 parts; set the N+1 parts of data to be written into the N sub-resource pools and the abnormal state devices respectively; in response to receiving a request to repair data, perform data repair through the data in the sub-resource pool and the abnormal state devices.

[0094] In one embodiment, the computer program, when executed by a processor, implements the following steps:

[0095] In response to receiving a repair data request, the abnormal storage device is unplugged and replaced with a normal storage device; and data verification is performed on the N copies of data in the sub-resource pool to obtain repair data associated with the abnormal storage device.

[0096] Embodiment 3

[0097] A computer device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the following steps when executing the computer program:

[0098] Step 301: In response to receiving a storage service instruction, obtaining storage data information of a volume in the resource pool;

[0099] Step 302: Map the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume;

[0100] Step 303: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0101] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0102] Calculate the data saturation of the volumes in the resource pool, where the data saturation of the volumes is equal to the ratio of the current storage data of the volumes to the maximum storage data of the volumes; obtain the data saturation of all volumes in the resource pool, and arrange them in ascending order according to the data saturation values ​​to form storage data information of the volumes.

[0103] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0104] The data saturation of each volume is mapped to the storage device associated with the volume to obtain the data saturation of each volume in the storage device; the data saturation of each volume in the storage device is weightedly calculated to obtain the data saturation of the storage device.

[0105] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0106] Arrange the storage devices from low to high according to the data saturation values ​​of the storage devices to form a storage device sequence; obtain the remaining space capacities of the storage devices in the storage device sequence in turn, and sum up the remaining space capacities of the storage devices to obtain a total capacity; obtain the capacity threshold to be configured of the storage system, and when the total capacity exceeds the capacity threshold, confirm that the storage device meets the preset condition.

[0107] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0108] After confirming that the storage device meets the preset conditions, read the serial number of the last storage device in the total capacity; configure the storage device corresponding to the first serial number in the storage device sequence to the storage device corresponding to the serial number of the last storage device as the selected storage device; transfer the stored data on the selected storage device to other storage devices, and combine the selected storage devices to form the sub-resource pool.

[0109] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0110] Before using the sub-resource pool to store data, the storage device status is detected and it is confirmed that all storage device statuses are normal; the redundancy mode of the sub-resource pool is set to be closed, and all volumes in the sub-resource pool are set to receive data.

[0111] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0112] The preset number of storage devices of the storage system that can be allowed to be damaged is obtained, and the preset allowed damage space corresponding to the storage devices of the preset number of storage devices that can be allowed to be damaged is calculated; and the capacity threshold to be configured is set to be higher than the capacity of the preset allowed damage space.

[0113] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0114] The resource pool also includes a main resource pool. Before using the sub-resource pool to store data, the sub-resource pool sends a capacity detection signal to the main resource pool to perform data verification on the data in the sub-resource pool, obtain verification information, and store the verification information in the current sub-resource pool; the data in the sub-resource pool except the verification information is transferred to the main resource pool to release the capacity of the sub-resource pool to the initial capacity.

[0115] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0116] After transferring the data in the sub-resource pool except the verification information to the main resource pool, the data processing time under the capacity threshold condition is calculated. If the data processing time meets the preset time, the capacity of the sub-resource pool is set to the capacity threshold; if the data processing time does not meet the preset time, the capacity of the sub-resource pool is set to expand.

[0117] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0118] In response to an abnormality in one or more of the storage devices, the sub-resource pool is set to replace the abnormal storage device; the remaining space in the abnormal storage device is obtained, and the sub-resource pool is set to allocate a replacement space with the same capacity as the remaining space, and the replacement space is used to store the abnormal storage data associated with the remaining space.

[0119] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0120] Obtain the number N of abnormal storage devices, divide the sub-resource pool into N parts, where N is a positive integer greater than or equal to 1; obtain all data associated with the abnormal storage device and integrate them to form overall data, obtain all abnormal storage devices and integrate them to form abnormal state devices; set the overall data to be equally divided into N parts, and set the abnormal storage data to be divided into N+1 parts; set the N+1 parts of data to be written into the N sub-resource pools and the abnormal state devices respectively; in response to receiving a request to repair data, perform data repair through the data in the sub-resource pool and the abnormal state devices.

[0121] In one embodiment, when the processor executes the computer program, the processor further implements the following steps:

[0122] In response to receiving a repair data request, the abnormal storage device is unplugged and replaced with a normal storage device; and data verification is performed on the N copies of data in the sub-resource pool to obtain repair data associated with the abnormal storage device.

[0123] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 3 As shown. The computer device includes a processor, a memory, a network interface and a database connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store storage device queue data. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a method for configuring storage pool resources is implemented.

[0124] Those skilled in the art will understand that Figure 3 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0125] Embodiment 4

[0126] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0127] Step 401: In response to receiving a storage service instruction, obtaining storage data information of a volume in the resource pool;

[0128] Step 402: Map the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume;

[0129] Step 403: Based on the data saturation of the storage device, select storage devices that meet preset conditions to form a sub-resource pool, and use the sub-resource pool to store data.

[0130] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0131] Calculate the data saturation of the volumes in the resource pool, where the data saturation of the volumes is equal to the ratio of the current storage data of the volumes to the maximum storage data of the volumes; obtain the data saturation of all volumes in the resource pool, and arrange them in ascending order according to the data saturation values ​​to form storage data information of the volumes.

[0132] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0133] The data saturation of each volume is mapped to the storage device associated with the volume to obtain the data saturation of each volume in the storage device; the data saturation of each volume in the storage device is weightedly calculated to obtain the data saturation of the storage device.

[0134] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0135] Arrange the storage devices from low to high according to the data saturation values ​​of the storage devices to form a storage device sequence; obtain the remaining space capacities of the storage devices in the storage device sequence in turn, and sum up the remaining space capacities of the storage devices to obtain a total capacity; obtain the capacity threshold to be configured of the storage system, and when the total capacity exceeds the capacity threshold, confirm that the storage device meets the preset condition.

[0136] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0137] After confirming that the storage device meets the preset conditions, read the serial number of the last storage device in the total capacity; configure the storage device corresponding to the first serial number in the storage device sequence to the storage device corresponding to the serial number of the last storage device as the selected storage device; transfer the stored data on the selected storage device to other storage devices, and combine the selected storage devices to form the sub-resource pool.

[0138] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0139] Detect the status of the storage device and confirm that the status of all the storage devices is normal; set the redundancy mode of the sub-resource pool to be closed, and set all volumes in the sub-resource pool to receive data.

[0140] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0141] The preset number of storage devices of the storage system that can be allowed to be damaged is obtained, and the preset allowed damage space corresponding to the storage devices of the preset number of storage devices that can be allowed to be damaged is calculated; and the capacity threshold to be configured is set to be higher than the capacity of the preset allowed damage space.

[0142] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0143] The resource pool also includes a main resource pool. Before using the sub-resource pool to store data, the sub-resource pool sends a capacity detection signal to the main resource pool to perform data verification on the data in the sub-resource pool, obtain verification information, and store the verification information in the current sub-resource pool; the data in the sub-resource pool except the verification information is transferred to the main resource pool to release the capacity of the sub-resource pool to the initial capacity.

[0144] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0145] After transferring the data in the sub-resource pool except the verification information to the main resource pool, the data processing time under the capacity threshold condition is calculated. If the data processing time meets the preset time, the capacity of the sub-resource pool is set to the capacity threshold; if the data processing time does not meet the preset time, the capacity of the sub-resource pool is set to expand.

[0146] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0147] In response to an abnormality in one or more of the storage devices, the sub-resource pool is set to replace the abnormal storage device; the remaining space in the abnormal storage device is obtained, and the sub-resource pool is set to allocate a replacement space with the same capacity as the remaining space, and the replacement space is used to store the abnormal storage data associated with the remaining space.

[0148] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0149] Obtain the number N of abnormal storage devices, divide the sub-resource pool into N parts, where N is a positive integer greater than or equal to 1; obtain all data associated with the abnormal storage device and integrate them to form overall data, obtain all abnormal storage devices and integrate them to form abnormal state devices; set the overall data to be equally divided into N parts, and set the abnormal storage data to be divided into N+1 parts; set the N+1 parts of data to be written into the N sub-resource pools and the abnormal state devices respectively; in response to receiving a request to repair data, perform data repair through the data in the sub-resource pool and the abnormal state devices.

[0150] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0151] In response to receiving a repair data request, the abnormal storage device is unplugged and replaced with a normal storage device; and data verification is performed on the N copies of data in the sub-resource pool to obtain repair data associated with the abnormal storage device.

[0152] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0153] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the embodiments of the present application.

[0154] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

Claims

1. A method for configuring storage pool resources, characterized in that: Applied to a storage system, the storage system includes a resource pool for storing data, the resource pool includes one or more storage devices, the method includes: In response to receiving a storage service instruction, acquiring storage data information of a volume in the resource pool; Mapping the storage data information of the volume to a storage device to obtain data saturation of the storage device associated with the volume; In combination with the data saturation of the storage device, storage devices that meet preset conditions are selected to form a sub-resource pool, and the sub-resource pool is used to store data; The resource pool also includes a main resource pool, which is arranged corresponding to the sub-resource pool and occupies different areas in the resource pool respectively; Before using the sub-resource pool to store data, the sub-resource pool sends a capacity detection signal to the main resource pool to perform data verification on the data in the sub-resource pool, obtain verification information, and store the verification information in the current sub-resource pool; transfer the data in the sub-resource pool except the verification information to the main resource pool to release the capacity of the sub-resource pool to the initial capacity.

2. The method for configuring storage pool resources according to claim 1, characterized in that: Get the storage data information of the volumes in the resource pool, including: Calculating data saturation of a volume in the resource pool, wherein the data saturation of the volume is equal to a ratio of current storage data of the volume to maximum storage data of the volume; The data saturation of all volumes in the resource pool is obtained, and the volumes are arranged in ascending order according to the data saturation values ​​to form storage data information of the volumes.

3. The method for configuring storage pool resources according to claim 2, characterized in that: Mapping the storage data information of the volume to a storage device to obtain the data saturation of the storage device associated with the volume, specifically including: Mapping the data saturation of each volume to a storage device associated with the volume to obtain the data saturation of each volume in the storage device; A weighted calculation is performed on the data saturation of each volume in the storage device to obtain the data saturation of the storage device.

4. The method for configuring storage pool resources according to claim 3, characterized in that: The method further comprises: Arrange the storage devices from low to high according to the data saturation values ​​of the storage devices to form a storage device sequence; Sequentially acquiring the remaining space capacities of the storage devices in the storage device sequence, and summing up the remaining space capacities of the storage devices to obtain a total capacity; A capacity threshold to be configured of the storage system is obtained, and when the total capacity exceeds the capacity threshold, it is confirmed that the storage device meets the preset condition.

5. The method for configuring storage pool resources according to claim 4, characterized in that: The method further comprises: After confirming that the storage device meets the preset condition, reading the sequence number of the last storage device in the total capacity; Configure the storage device corresponding to the first sequence number in the storage device sequence to the storage device corresponding to the sequence number of the last storage device as the selected storage device; The stored data on the selected storage device is transferred to other storage devices, and the selected storage devices are combined to form the sub-resource pool.

6. The method for configuring storage pool resources according to any one of claims 1 to 5, characterized in that: Before using the sub-resource pool to store data, the method further includes: Detecting the status of the storage devices and confirming that the status of all the storage devices are normal; The redundancy mode of the sub-resource pool is set to be closed, and all volumes in the sub-resource pool are set to receive data.

7. The method for configuring storage pool resources according to claim 4 or 5, characterized in that: The method further comprises: Acquire the preset number of storage devices of the storage system that can be damaged, and calculate the preset number of storage devices that can be damaged corresponding to the storage devices of the preset number of storage devices that can be damaged; The capacity threshold to be configured is set to be higher than the capacity of the preset allowed damaged space.

8. The method for configuring storage pool resources according to claim 1, characterized in that: After transferring the data in the sub-resource pool except the verification information to the main resource pool, the method further includes: Calculating the data processing time under the capacity threshold condition, and if the data processing time meets the preset time, setting the capacity of the sub-resource pool to the capacity threshold; If the data processing time does not meet the preset time, the capacity of the sub-resource pool is set to be expanded.

9. The method for configuring storage pool resources according to claim 4 or 5, characterized in that: The method further comprises: In response to an abnormality occurring in one or more of the storage devices, setting the sub-resource pool to replace the abnormal storage device; Remaining space in the abnormal storage device is obtained, and the sub-resource pool is set to allocate replacement space with the same capacity as the remaining space, where the replacement space is used to store the abnormal storage data associated with the remaining space.

10. The method for configuring storage pool resources according to claim 9, characterized in that: The method further comprises: Obtain the number N of the abnormal storage devices, and divide the sub-resource pool into N parts, where N is a positive integer greater than or equal to 1; Acquire all data associated with the abnormal storage device and integrate them to form overall data, and acquire all the abnormal storage devices and integrate them to form abnormal state devices; The overall data is divided into N parts, and the abnormal storage data is divided into N+1 parts; Set N+1 copies of data to be written into the N sub-resource pools and the abnormal state device respectively; In response to receiving a request to repair data, data repair is performed using the sub-resource pool and the data in the abnormal state device.

11. The method for configuring storage pool resources according to claim 10, characterized in that: The method further comprises: In response to receiving a request to repair data, unplugging the abnormal storage device and replacing it with a normal storage device; Data verification is performed on the N copies of data in the sub-resource pool to obtain repair data associated with the abnormal storage device.

12. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method described in any one of claims 1 to 11 are implemented.

13. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method described in any one of claims 1 to 11 are implemented.

14. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 11 are implemented.

Citation Information

Patent Citations

  • METHOD, equipment AND COMPUTER PROGRAM PRODUCT FOR MANAGING A STORAGE SYSTEM

    CN110413198A

  • Volume mapping management method and device, equipment and medium

    CN117539398A