A method for reconstructing a redundant array of independent disks and an electronic device
By monitoring physical disk and service I/O performance metrics, and dynamically adjusting RAID reconstruction mode and resource allocation, the problem of resource contention during RAID reconstruction was solved, reconstruction efficiency was improved, and service continuity was ensured.
Patent Information
- Application Number
- CN202511423226.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-30
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2045-09-30
AI Technical Summary
Existing RAID reconstruction technology lacks intelligent adjustment strategies when reconstructing I/O and competing for business I/O resources, which affects business continuity in response time-sensitive scenarios such as financial databases.
By monitoring physical disk performance metrics, business I/O performance metrics are obtained, a target reconstruction mode is selected, and resource allocation decisions are generated based on the real-time collected reconstruction performance metrics. The input/output bandwidth and processor usage during the reconstruction process are dynamically adjusted to balance reconstruction efficiency and business service quality.
It enables dynamic and precise adjustment of RAID reconstruction resources under different business conditions, improving reconstruction efficiency and reducing business performance loss, thus ensuring the stability of business service quality.
Smart Images

Figure CN120892264B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of storage, in particular to a redundant array of independent disks reconstruction method and electronic equipment. BACKGROUND
[0002] Redundant array of independent disks (RAID) reconstruction is a process of recovering lost data to a hot spare disk or a new disk using redundant information after a member disk fails, and its speed and efficiency directly affect the data availability window period, which is a key indicator of measuring the reliability of a storage system.
[0003] However, existing RAID reconstruction techniques mainly focus on accelerating the reconstruction process, but ignore the resource competition problem between reconstruction input / output (I / O) and business I / O, and lack a fine-grained dynamic control mechanism to guarantee business service quality during reconstruction. In particular, in financial databases and other scenarios sensitive to response time, the reconstruction peak period may cause a significant increase in the response time of critical transactions, seriously affecting business continuity. There is currently no intelligent strategy to adjust the reconstruction speed based on business priority and system load in real time to effectively balance the relationship between reconstruction efficiency and business performance.
[0004] In view of the above, how to solve the problems of the current RAID reconstruction technology, such as resource competition between reconstruction I / O and business I / O, lack of business service quality guarantee and intelligent adjustment strategy, is a problem that technicians in this field need to solve urgently. SUMMARY
[0005] The present application provides a redundant array of independent disks reconstruction method and electronic equipment to at least solve the problems of the current RAID reconstruction technology, such as resource competition between reconstruction I / O and business I / O, lack of business service quality guarantee and intelligent adjustment strategy.
[0006] The present application provides a redundant array of independent disks reconstruction method, comprising:
[0007] monitoring performance indicators of each physical disk and determining whether there is a faulty physical disk in each physical disk according to each performance indicator;
[0008] if so, obtaining a business input / output performance indicator; wherein the business input / output performance indicator at least includes total throughput, average delay and quantile delay of business input / output;
[0009] select a target reconstruction mode from the reconstruction modes according to a size relationship between a total throughput, an average delay and a quantile delay of the service input / output and a corresponding threshold value; wherein the resource occupation of the service is in a negative correlation with the resource occupation in the target reconstruction mode; the reconstruction mode is used to determine an input / output bandwidth occupation and a processor occupation in a reconstruction process; the reconstruction mode comprises a first reconstruction mode, a second reconstruction mode and a third reconstruction mode; a reconstruction maximum input / output bandwidth in the first reconstruction mode is less than a reconstruction maximum input / output bandwidth in the third reconstruction mode, and the reconstruction maximum input / output bandwidth in the third reconstruction mode is less than a reconstruction maximum input / output bandwidth in the second reconstruction mode; a processor priority weight in the first reconstruction mode is less than a processor priority weight in the third reconstruction mode, and the processor priority weight in the third reconstruction mode is less than a processor priority weight in the second reconstruction mode;
[0010] generate a reconstruction resource allocation decision according to the target reconstruction mode and a real-time collected reconstruction performance index;
[0011] execute reconstruction on each stripe in the faulty physical disk based on the reconstruction resource allocation decision.
[0012] The application further provides an electronic device, comprising a memory for storing a computer program and a processor for executing the computer program to realize the steps of any one of the RAID reconstruction methods.
[0013] The application has the advantages that multiple reconstruction modes are set in advance, different input / output bandwidth occupation and processor occupation in the reconstruction process are limited respectively, multiple resource occupation options are provided for the RAID reconstruction, and the application is suitable for different service conditions; when it is confirmed that there is a faulty physical disk in the RAID according to the performance index of the physical disk, a target reconstruction mode is selected from the reconstruction modes based on the current service input / output performance index, the influence of the RAID reconstruction on the current service is considered, the best reconstruction mode is selected according to the actual service demand, the reconstruction efficiency is improved, and the service performance loss is reduced; the reconstruction resource allocation decision is generated according to the target reconstruction mode and the real-time collected reconstruction performance index, and the reconstruction is executed according to the decision, the system resources allocated to the reconstruction task are dynamically and accurately fine-tuned, the RAID reconstruction efficiency and the service quality are effectively balanced.
[0014] In addition, the application further provides an electronic device, and the effects are the same. BRIEF DESCRIPTION OF DRAWINGS
[0015] In order to illustrate the embodiments of the present application more clearly, the following will briefly introduce the drawings needed in the embodiments. Obviously, the drawings described in the following are only some of the embodiments of the present application, and other drawings can be obtained by those skilled in the art without any creative effort on the basis of these drawings.
[0016] Figure 1 A flow chart of a redundant array of independent disks reconstruction method provided by the embodiment of the present application;
[0017] Figure 2 A schematic diagram of a redundant array of independent disks reconstruction device provided by the embodiment of the present application. DETAILED DESCRIPTION
[0018] The technical solutions in the embodiments of the present application will be described clearly and completely in the following with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without any creative effort belong to the protection scope of the present application.
[0019] It should be noted that, in the description of the present application, the terms “comprise”, “contain” or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device comprising a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device. The terms “first”, “second” and the like in the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence.
[0020] In order to make the technical personnel in the technical field better understand the present application, the present application will be further described in detail in the following with reference to the drawings and specific embodiments.
[0021] At present, the RAID reconstruction technology mainly focuses on accelerating the reconstruction process, but ignores the resource competition problem between reconstruction I / O and business I / O, and lacks a fine dynamic control mechanism to guarantee the quality of service during reconstruction. Especially in the financial database and other scenarios sensitive to response time, the reconstruction peak period may cause the response time of key transactions to increase significantly, which seriously affects business continuity. At present, there is no intelligent strategy to adjust the reconstruction speed in real time based on business priority and system load to effectively balance the relationship between reconstruction efficiency and business performance. Therefore, in order to solve the above problems, the present application provides a redundant array of independent disks reconstruction method.
[0022] Figure 1 A flow chart of a redundant array of independent disks reconstruction method provided by the embodiment of the present application. As shown in FIG. 1, the method comprises the following steps.Figure 1 The method comprises the following steps:
[0023] S10: Monitor the performance indicators of each physical disk, and determine whether there is a faulty physical disk in each physical disk according to the performance indicators; if yes, go to step S11; if no, end.
[0024] Specifically, the storage system is mainly composed of multiple physical disks and a RAID controller. During system operation, the performance indicators of each physical disk are monitored in real time, including but not limited to the I / O utilization rate, read-write bandwidth, average response time and queue depth of the physical disk, etc.
[0025] In order to determine whether to trigger RAID reconstruction, in this embodiment, it is determined whether there is a faulty physical disk in each physical disk according to the performance indicators of each physical disk. It can be understood that the present application mainly reconstructs the stripes in the faulty physical disk, and the offline of the faulty physical disk is the core condition for triggering reconstruction. Therefore, in order to determine whether RAID reconstruction needs to be performed, it is necessary to first determine whether there is a faulty physical disk. Specifically, the physical disk with abnormal performance indicators in each physical disk can be determined as a faulty physical disk through self-monitoring analysis and reporting technology (Self-Monitoring, Analysis, and Reporting Technology, SMART). In this embodiment, the specific content of the abnormal performance indicators is not limited, for example, when the average response time of a physical disk is continuously timed out, or the disk I / O utilization rate is abnormally zeroed or stuck and the read-write bandwidth is simultaneously reduced to 0 MB / s, or the disk queue depth is abnormally stacked and not released, the physical disk can be considered as a faulty physical disk. In addition, the offline physical disk in each physical disk can also be directly or through I / O timeout detection technology determined as a faulty physical disk.
[0026] S11: Obtain service input / output performance indicators.
[0027] The service input / output performance indicators at least include total throughput, average delay and quantile delay of service input / output.
[0028] It should be noted that the quantile delay includes 95 quantile delay and 99 quantile delay, which are two key indicators for measuring system performance, representing that 95% and 99% of all requests are completed within the time in all requests. In short, they represent the response speed of the system in most cases, helping to understand the performance of the system under high load or extreme conditions. In this embodiment, the specific selected quantile delay is not limited.
[0029] S12: Select a target reconstruction mode from the reconstruction modes according to the size relationship between the total throughput, average delay and quantile delay of the service input / output and the corresponding threshold value respectively.
[0030] When it is confirmed that there is a faulty physical disk, the RAID reconstruction process is started. Specifically, a target reconstruction mode is selected from the reconstruction modes according to the size relationship between the total throughput, average delay and quantile delay of the service input / output and the corresponding threshold value respectively.
[0031] It should be noted that the reconstruction mode is used to determine the I / O bandwidth occupation and the Central Processing Unit (CPU) occupation of the reconstruction process, that is, the reconstruction mode indicates the allowed I / O bandwidth occupation and CPU resource occupation when the reconstruction is performed using the mode, and the resource occupation of the service is negatively correlated with the resource occupation in the target reconstruction mode. It should be noted that the I / O bandwidth occupation and the processor occupation corresponding to each reconstruction mode are different, that is, the amount of reconstruction resources allowed to be used in each reconstruction mode is different. In this embodiment, the reconstruction mode includes a first reconstruction mode, a second reconstruction mode and a third reconstruction mode; the maximum input / output bandwidth for reconstruction in the first reconstruction mode is less than the maximum input / output bandwidth for reconstruction in the third reconstruction mode, and the maximum input / output bandwidth for reconstruction in the third reconstruction mode is less than the maximum input / output bandwidth for reconstruction in the second reconstruction mode; the processor priority weight in the first reconstruction mode is less than the processor priority weight in the third reconstruction mode, and the processor priority weight in the third reconstruction mode is less than the processor priority weight in the second reconstruction mode. The specific setting mode of the three reconstruction modes in this embodiment is not limited.
[0032] In order to take into account the normal service I / O and realize intelligent adjustment of the service resource occupation and the RAID reconstruction resource occupation, in this embodiment, the target reconstruction mode is selected from the pre-configured reconstruction modes according to the collected service I / O performance indicators, so as to reduce the influence of the RAID reconstruction process on the service. The specific selection mode of the target reconstruction mode in this embodiment is not limited, and is determined according to the specific implementation.
[0033] S13: Generate a reconstruction resource allocation decision according to the target reconstruction mode and the real-time collected reconstruction performance indicators.
[0034] S14: Perform reconstruction on each stripe in the faulty physical disk based on the reconstruction resource allocation decision.
[0035] Subsequently, in order to adapt to the real-time change of the resource amount in the reconstruction process, while improving the reconstruction efficiency and further reducing the impact of reconstruction on the service, the embodiment also needs to generate a reconstruction resource allocation decision according to the target reconstruction mode and the real-time collected reconstruction performance index. The reconstruction resource allocation decision is actually the final determination of the I / O bandwidth occupancy and the CPU resource occupancy used for reconstruction. It should be noted that the specific content of the reconstruction performance index in the embodiment is not limited, for example, it can include reconstruction progress, throughput, resource consumption (CPU resource consumption, memory resource consumption and I / O bandwidth consumption) and the like; the generation process of the reconstruction resource allocation decision is also not limited, which is determined according to the specific implementation. Finally, based on the reconstruction resource allocation decision, the reconstruction of each stripe in the failed physical disk is executed, which realizes the dynamic and accurate fine-tuning of the system resources allocated to the reconstruction task, effectively balancing the RAID reconstruction efficiency and the service quality. The specific process of the reconstruction of each stripe in the failed physical disk in the embodiment is not limited, which is determined according to the specific implementation.
[0036] In the embodiment, a plurality of reconstruction modes are set in advance, which limit different input / output bandwidth occupancy and processor occupancy in the reconstruction process, provide a plurality of resource occupancy options for RAID reconstruction, and are suitable for different service conditions; when it is confirmed that there is a failed physical disk in the RAID according to the performance index of the physical disk, the target reconstruction mode is selected among the reconstruction modes based on the current service input / output performance index, the impact of RAID reconstruction on the current service is considered, the best reconstruction mode is selected according to the actual service demand, the reconstruction efficiency is improved, and the service performance loss is reduced; the reconstruction resource allocation decision is generated according to the target reconstruction mode and the real-time collected reconstruction performance index, and the reconstruction is executed accordingly, which realizes the dynamic and accurate fine-tuning of the system resources allocated to the reconstruction task, effectively balancing the RAID reconstruction efficiency and the service quality.
[0037] In order to better manage each stripe in the RAID and adapt to the RAID reconstruction mechanism, on the basis of the above embodiment, in some embodiments, before monitoring the performance index of each physical disk, it also includes:
[0038] S101: dividing the logical volume space into a plurality of continuous stripes according to the data access heat information.
[0039] S102: collecting the disk real-time utilization rate of each physical disk.
[0040] S103: determining the disk weight of each physical disk according to the disk real-time utilization rate and the standard extensible hash controlled copy weight.
[0041] S104: Store the data blocks and the parity blocks in each strip in different physical disks according to the disk weight of each disk.
[0042] S105: Obtain the position information of each strip.
[0043] The position information at least includes a strip identifier, a physical disk identifier of a physical disk where the strip is located, a logical block range, and a status marker. The logical block range is a starting logical block address and a size of the strip on the corresponding physical disk.
[0044] S106: Generate a dynamic strip mapping table according to the position information of each strip.
[0045] Specifically, in the embodiment, the logical volume space is divided into a plurality of continuous strips according to the data access heat information. The strips are different from the fixed-size strips, and the size range of the strips is 16 KB to 1 MB. The specific size is dynamically adjusted based on the data access heat. For example, a hot area uses a smaller strip (such as 16 KB) to improve the random access efficiency; and a cold data area uses a larger strip (such as 1 MB) to reduce the metadata overhead.
[0046] Further, for each strip, the data blocks (Data Blocks) and the parity blocks (Parity Block) contained therein are stored on different physical disks according to the RAID level (such as RAID5). It should be noted that, in order to avoid that the associated data (data blocks and parity blocks) of the same strip are concentrated on the disks that may be overloaded at the same time, the improved controlled replication under scalable hashing (CRUSH) algorithm is used to store the strip data in the embodiment.
[0047] Specifically, the real-time utilization of each physical disk is collected, and the disk weight of each physical disk is determined according to the real-time utilization of each disk and the standard CRUSH weight. The formula is as follows:
[0048] Disk weight = standard CRUSH weight × (1 - real-time utilization of disk / 100);
[0049] From the above formula, the higher the real-time utilization of the disk, the lower the corresponding disk weight, thereby avoiding data allocation, i.e., preferentially storing data in a physical disk with low real-time utilization. Finally, the data blocks and the check blocks in each strip are stored in different physical disks according to the weights of the disks. It should be noted that in the data allocation process, the data blocks + check blocks of the same strip must satisfy: physical dispersion (RAID standard), and the real-time utilization of all disks is less than the disk utilization threshold. In this way, the traditional fixed-size strip is subdivided into smaller and dynamically adjustable strips, each of which independently contains its data blocks and redundant information, and the improved CRUSH algorithm is used to store them on multiple physical disks, greatly reducing the basic granularity of reconstruction and increasing the parallel potential.
[0050] At the same time, in order to clearly determine the position information and usage state of each strip in the RAID, after storing the data blocks and the check blocks in each strip in different physical disks according to the weights of the disks, the position information of each strip also needs to be obtained. It should be noted that the position information at least includes a strip identifier (ID), a physical disk ID of a physical disk where the strip is located, a logical block address (LBA) range, and a state flag. Among them, the logical block address range is the starting LBA and size of the strip on the corresponding physical disk, and the state flag represents whether the strip is in a normal state or a frozen state. It can be understood that after a fault is triggered, all strip of the fault disk are marked as frozen and prohibited from writing. Finally, a dynamic strip mapping table is generated according to the position information of each strip, which is stored in the RAID controller memory and persisted to the metadata area. In this way, based on the position information of each strip, the dynamic strip mapping table can be generated, which can clearly determine the position information and usage state of each strip in the RAID, and is beneficial to the unified management of each strip.
[0051] On the basis of the above embodiment, in some embodiments, the configuration process of the reconstruction mode includes:
[0052] S111: setting the maximum input / output bandwidth for reconstruction in the first reconstruction mode to be not greater than a first percentage of the total bandwidth, and the processor priority weight to be not greater than a second percentage of the total processor occupancy.
[0053] S112: setting the maximum input / output bandwidth for reconstruction in the second reconstruction mode to be not less than a third percentage of the total bandwidth, and the processor priority weight to be not less than a fourth percentage of the total processor occupancy.
[0054] S113: setting the maximum input / output bandwidth for reconstruction in the third reconstruction mode to be within a first range, and the processor priority weight to be within a second range.
[0055] The first percentage is less than the third percentage, and the second percentage is less than the fourth percentage; the first range is determined based on the first percentage and the third percentage of the total bandwidth, and the second range is determined based on the second percentage and the fourth percentage of the total processor utilization.
[0056] The core of the refactoring mode is the correspondence rule between the mode objective and the resource allocation threshold, ensuring that resource allocation does not deviate from the core requirements of the mode. This embodiment sets three refactoring modes, and for each mode, sets fixed upper and lower limits for the maximum refactoring I / O bandwidth and CPU priority weight to avoid extreme resource allocation. It can be understood that the maximum refactoring I / O bandwidth is the maximum I / O bandwidth allowed during the refactoring process. The CPU priority weight is a proportional parameter that measures the "priority" of the refactoring task in CPU resource contention; essentially, it is the "proportion of CPU time slices that the refactoring task can occupy." Its value ranges from 0% to 100%, and its sum with the CPU weight of the business task is 100%. Simultaneously, the lower the CPU priority weight, the lower the CPU scheduling priority. That is, when CPU resources are scarce, the operating system will prioritize allocating time slices to business tasks, and the refactoring task will only occupy resources when the business CPU is idle.
[0057] Specifically, in this embodiment, the maximum I / O bandwidth for reconstruction in the first reconstruction mode is set to no more than a first percentage of the total bandwidth, and the processor priority weight is set to no more than a second percentage of the total processor utilization. The first reconstruction mode can be considered a high-performance service mode, in which service CPU and bandwidth are prioritized. In the second reconstruction mode, the maximum I / O bandwidth for reconstruction is set to no less than a third percentage of the total bandwidth, and the processor priority weight is set to no less than a fourth percentage of the total processor utilization. The second reconstruction mode can be considered a fast reconstruction mode, in which reconstruction resources are prioritized. In the third reconstruction mode, the maximum I / O bandwidth for reconstruction is set to a first range, and the processor priority weight is set to a second range. The third reconstruction mode can be considered a balanced mode, that is, balancing service resource utilization and reconstruction resource utilization.
[0058] It should be noted that this embodiment does not impose restrictions on the magnitude of the first, second, third, and fourth percentages, but it must be ensured that the first percentage is less than the third percentage, and the second percentage is less than the fourth percentage. For example, if the first percentage is 30%, the second percentage is 20%, the third percentage is 60%, and the fourth percentage is 50%, then: the maximum I / O bandwidth for reconstruction in the first reconstruction mode is set to be no greater than 30% of the total bandwidth, and the processor priority weight is set to be no greater than 20% of the total processor utilization; the maximum I / O bandwidth for reconstruction in the second reconstruction mode is set to be no less than 60% of the total bandwidth, and the processor priority weight is set to be no less than 50% of the total processor utilization.
[0059] Meanwhile, the first range is determined based on a first percentage and a third percentage of the total bandwidth, and the second range is determined based on a second percentage and a fourth percentage of the total processor utilization. In other words, the maximum I / O bandwidth and CPU priority weight in the third refactoring mode can be selected within corresponding ranges. For example, the maximum refactoring I / O bandwidth can be set to be adjustable from 20% to 50%, and the CPU priority weight can be adjusted from 20% to 40%.
[0060] In this embodiment, by setting three different reconstruction modes, different resource usage options are provided for the reconstruction process, which can be applied to different business situations.
[0061] Based on the above embodiments, in some embodiments, a target reconstruction mode is selected from each reconstruction mode according to the magnitude relationship between the total throughput, average latency, and quantile latency of the service input / output and their corresponding thresholds, including:
[0062] S121: When the total throughput of business input / output is not less than the first daily throughput threshold, or the per-unit delay is greater than the per-unit delay threshold, the first reconstruction mode is selected as the target reconstruction mode.
[0063] S122: When the total throughput of business input / output is not greater than the second daily throughput threshold and the average latency is less than the first average latency threshold, the second reconstruction mode is selected as the target reconstruction mode.
[0064] S123: When the average latency is less than the second average latency threshold and the disk I / O utilization of each physical disk is less than the disk I / O utilization threshold, the third reconstruction mode is selected as the target reconstruction mode.
[0065] Among them, the first daily throughput threshold is greater than the second daily throughput threshold; the first average latency threshold is less than the second average latency threshold.
[0066] To accurately select the target refactoring mode, it is first necessary to clarify the core requirements of the current business. These requirements are preset by users or the system. Then, by collecting real-time performance indicators, it is determined which mode can be implemented under these requirements, forming a closed loop of requirement-parameter verification-mode matching.
[0067] Therefore, when the total throughput of service I / O is not less than the first daily throughput threshold, or the quantile latency is greater than the quantile latency threshold (95th percentile latency greater than the 95th percentile latency threshold, or 99th percentile latency greater than the 99th percentile latency threshold), the first reconstruction mode is selected as the target reconstruction mode, i.e., the service high-performance mode is selected. This mode is applicable when the service is extremely sensitive to latency / throughput, the core requirement is that the service cannot be interrupted during reconstruction, and an extended reconstruction time is acceptable. In this embodiment, there are no restrictions on the magnitude of the first daily throughput threshold, the 95th percentile latency threshold, and the 99th percentile latency threshold. For example, the first daily throughput threshold is 80% of the daily peak, and the 95th percentile latency threshold and the 99th percentile latency threshold are both 2.8ms.
[0068] When the total throughput of business I / O is not greater than the second daily throughput threshold and the average latency is less than the first average latency threshold, the second reconstruction mode is selected as the target reconstruction mode, i.e., the fast reconstruction mode is selected. This mode is applicable when the business is in a "low period" or when data security requirements are extremely high, such as medical data or core backups; the core requirement is to get out of the degraded state as soon as possible to avoid data loss due to dual-disk failure, and a slight decrease in business performance is acceptable. In this embodiment, there are no restrictions on the size of the second daily throughput threshold and the first average latency threshold, but it is necessary to ensure that the first daily throughput threshold is greater than the second daily throughput threshold. For example, the second daily throughput threshold is 30% of the daily peak, and the first average latency threshold is 1.2ms.
[0069] When the average latency is less than the second average latency threshold, and the disk I / O utilization of each physical disk is less than the disk I / O utilization threshold, the third reconstruction mode is selected as the target reconstruction mode, i.e., the balanced mode is selected. This mode is suitable for scenarios where business needs are not extreme, that is, neither absolute smoothness nor the fastest reconstruction is required; the core objective is that the reconstruction does not significantly affect business operations. In this embodiment, there are no restrictions on the second average latency threshold and the disk I / O utilization threshold; it is only necessary to ensure that the first average latency threshold is less than the second average latency threshold. For example, the second average latency threshold is 3ms, and the disk I / O utilization threshold is 85%.
[0070] In this embodiment, selecting the target reconstruction mode based on actual business needs can ensure that business performance loss is within a controllable range.
[0071] Based on the above embodiments, in some embodiments, after selecting the target reconstruction mode, the method further includes:
[0072] S131: Update business input / output performance metrics according to a preset cycle.
[0073] S132: Based on the updated business input / output performance metrics, select a new target refactoring mode in the refactoring mode.
[0074] It should be noted that the target reconstruction mode selected in the above embodiments is not fixed, but rather dynamically switches modes based on real-time changes in service I / O performance metrics to ensure it always adapts to the current state. Specifically, service input / output performance metrics are updated according to a preset period, including but not limited to total service I / O throughput, average latency, and percentile latency (95th percentile or 99th percentile latency). Subsequently, based on the updated service input / output performance metrics, a new target reconstruction mode is selected from the reconstruction modes.
[0075] For example, in the third reconstruction mode, if the business suddenly enters a peak period and the latency increases from 1.8ms to 2.9ms, approaching the threshold, it will switch to the first reconstruction mode, reducing the reconstruction bandwidth to 30% to ensure uninterrupted business operations. In the second reconstruction mode, if the business suddenly experiences a temporary high load, with throughput increasing from 100MB / s to 500MB / s, it will temporarily switch to the third reconstruction mode to avoid a performance loss exceeding 10%.
[0076] In this embodiment, a new target reconstruction mode is selected based on the real-time changes in service I / O performance indicators to ensure the adaptability of reconstruction to services.
[0077] Based on the above embodiments, in some embodiments, after selecting the target reconstruction mode, the method further includes:
[0078] S133: When the third reconstruction mode is selected as the target reconstruction mode, determine whether the average latency is less than the second average latency threshold after a preset time, and whether the disk input / output utilization of each physical disk is less than the disk input / output utilization threshold; if so, increase the maximum reconstruction input / output bandwidth; if not, decrease the maximum reconstruction input / output bandwidth.
[0079] In practical implementation, when the third reconstruction mode (i.e. balanced mode) is selected as the target reconstruction mode, since the maximum reconstruction I / O bandwidth in the third reconstruction mode is in the first range and the CPU priority weight is in the second range, specific resource adjustments can also be made based on this mode in order to determine the specific maximum reconstruction I / O bandwidth and CPU priority weight.
[0080] Specifically, it determines whether the average latency is less than a second average latency threshold after a preset time, and whether the disk I / O utilization of each physical disk is less than a disk I / O utilization threshold. If so, the maximum reconstruction I / O bandwidth is gradually increased, for example, by 10%. If not, the maximum reconstruction I / O bandwidth is immediately reduced, for example, by 20%. This dedicated adjustment strategy added to the third reconstruction mode is the core of the "dynamic balancing" of the third reconstruction mode, achieving scenario-based adaptation between reconstruction acceleration and business assurance through real-time business performance indicator feedback.
[0081] Based on the above embodiments, in some embodiments, a reconstruction resource allocation decision is generated according to the target reconstruction mode and the real-time collected reconstruction performance indicators, including:
[0082] S141: Obtain the initial maximum input / output bandwidth and initial processor priority weights specified by the target refactoring mode.
[0083] S142: Determine the fine-tuning amount of the maximum input / output bandwidth of the reconstruction based on the reconstruction performance indicators acquired in real time.
[0084] S143: Calculate the target maximum input / output bandwidth based on the initial maximum reconstructed input / output bandwidth and the fine-tuning amount.
[0085] S144: Calculate the target processor priority weight based on the target reconstructed maximum input / output bandwidth and the initial processor priority weight.
[0086] To generate reconfiguration resource allocation decisions, this embodiment specifically obtains the initial maximum reconfiguration I / O bandwidth and initial CPU priority weight specified by the target reconfiguration mode. Subsequently, adjustment rules are triggered, and the fine-tuning amount of the maximum reconfiguration I / O bandwidth is determined based on the real-time collected reconfiguration performance indicators. Then, the target maximum reconfiguration I / O bandwidth is calculated based on the initial maximum reconfiguration I / O bandwidth and the fine-tuning amount.
[0087] For example, if the initial maximum I / O bandwidth for reconstruction is 30% of the total bandwidth, and the real-time detection shows that the average latency of the service is less than the average latency threshold and the current disk utilization is less than the disk utilization threshold, then it meets the rule of increasing bandwidth, and the fine-tuning amount is determined to be +10%, with the final target maximum I / O bandwidth for reconstruction being 40% of the total bandwidth. If the real-time detection shows that the average latency of the service is greater than the average latency threshold and the single disk utilization is 88%, which is greater than the disk utilization threshold, then it meets the rule of decreasing bandwidth, and the fine-tuning is done in steps of decreasing by 20%, with the final target maximum I / O bandwidth quota for reconstruction being 10% of the total bandwidth.
[0088] Finally, based on the target maximum I / O bandwidth for reconstruction and the initial CPU priority weight, the target CPU priority weight is calculated using the following formula: Target CPU priority weight = (Target maximum I / O bandwidth for reconstruction / Total bandwidth) × CPU weight coefficient of the current reconstruction mode. In this embodiment, there is no limitation on the size of the CPU weight coefficient for different reconstruction modes. For example, the CPU weight coefficient for the first reconstruction mode is 0.8, the CPU weight coefficient for the second reconstruction mode is 1.5, and the CPU weight coefficient for the third reconstruction mode is 1.2.
[0089] In this embodiment, the initial maximum input / output bandwidth and initial processor priority weight specified for the target reconstruction mode are fine-tuned to generate the final target maximum input / output bandwidth and target processor priority weight used for reconstruction, ensuring that resource allocation satisfies both the mode objective and adapts to the real-time system state.
[0090] Based on the above embodiments, in some embodiments, the reconstruction of each stripe in the failed physical disk is performed based on the reconstruction resource allocation decision, including:
[0091] S151: Determine the location information of each stripe in the faulty physical disk based on the dynamic stripe mapping table, and generate the corresponding list of stripes to be reconstructed.
[0092] S152: Based on the list of stripes to be reconstructed, identify the source physical disks that have data associations with the faulty physical disk.
[0093] S153: Determine the target disk among the physical disks based on various performance metrics.
[0094] S154: Based on the load information of the source physical disk and the target disk, divide the list of stripes to be reconstructed into multiple task groups; each task group contains a preset number of stripes to be reconstructed.
[0095] S155: Decompose each task group into multiple subtasks and put each subtask into a shared task queue.
[0096] S156: Multiple processing units acquire and execute each subtask in the shared task queue in parallel, calculate the corresponding reconstructed data block through the independent disk redundancy array algorithm, and store it in the buffer.
[0097] S157: When the data in the buffer reaches the corresponding storage threshold, write each reconstructed data block in the buffer sequentially to the target disk.
[0098] To achieve RAID reconstruction, this embodiment first determines the location information of each stripe in the failed physical disk based on the dynamic stripe mapping table, and generates a corresponding list of stripes to be reconstructed. It can be understood that the list of stripes to be reconstructed contains the location information of the stripes to be reconstructed, specifically including the stripe, its associated failed disk ID, LBA range, and stripe size.
[0099] Furthermore, based on the list of stripes to be reconstructed, the source physical disks that have data associations with the failed physical disks are identified. It should be noted that the source physical disks are the associated live disks of the stripe to be reconstructed within the RAID. To determine the source physical disks, in some embodiments, a dynamic stripe mapping table is used to query the corresponding non-failed physical disks. It is important to note that data blocks in the non-failed physical disks and data blocks in the failed physical disks are mutually associated; abnormal physical disks, such as offline or failed disks, are removed from the non-failed physical disks to determine the source physical disks. For example, if stripe M001 was originally stored on the failed physical disk Disk3, its associated data blocks are on Disk0, and its parity blocks are on Disk4, then Disk0 and Disk4 are the source physical disks.
[0100] Subsequently, based on various performance metrics, the target disk is determined from among the physical disks. It should be noted that the target disk is the physical disk used to store the reconstructed data of the stripe to be reconstructed. To determine the target disk, in some embodiments, non-faulty physical disks other than the faulty physical disk are specifically identified from among the physical disks; the disk I / O utilization and remaining storage space of each non-faulty physical disk are determined, and the non-faulty physical disks whose disk I / O utilization is less than the disk I / O utilization threshold, whose remaining storage space is greater than the remaining storage space threshold, and which are not in the same load domain as the source physical disk are identified as the target disks.
[0101] Furthermore, based on the load information of the source and target physical disks, the list of stripes to be reconstructed is divided into multiple task groups. It should be noted that each task group contains a preset number of stripes to be reconstructed, for example, 32. Each task group is further decomposed into multiple sub-tasks, and each sub-task is placed in a shared task queue. It can be understood that each sub-task contains the location information of the corresponding stripe to be reconstructed, information about the source physical disk, and information about the target disk.
[0102] Finally, multiple processing units acquire and execute subtasks from a shared task queue in parallel, calculate the corresponding reconstructed data blocks using the RAID algorithm, and store them in a buffer. When the data in the buffer reaches the corresponding storage threshold, the reconstructed data blocks in the buffer are sequentially written to the target disk, thus completing the RAID reconstruction process.
[0103] It should be noted that this embodiment does not restrict the specific process of calculating the corresponding reconstructed data blocks using the RAID algorithm. For example, when using RAID5, the XOR algorithm is used to calculate the reconstructed data blocks; when using RAID6, the Reed-Solomon algorithm is used to calculate the reconstructed data blocks, depending on the specific implementation.
[0104] Furthermore, upon successful execution of a subtask, the system automatically triggers a series of critical operations to ensure data consistency and optimize reconstruction efficiency. First, the system enforces data integrity verification by calculating the CRC value of the target disk data and comparing it with the source data and the expected value of the RAID algorithm, ensuring the reconstructed data is consistent with the original data. This real-time verification at the subtask level avoids the error accumulation that can occur with traditional full-scale post-verification in RAID. After successful verification, the system dynamically updates the stripe mapping table, updating the original stripe location information on the failed physical disk to the new physical address of the target disk and marking the micro-strip status as "available," thereby shortening system degradation time. Simultaneously, successful feedback updates the reconstruction progress and dynamically adjusts the I / O bandwidth quota based on the remaining reconstruction volume, optimizing disk selection for subsequent subtasks. Finally, the system releases resources such as the pre-fetch cache and write merging buffer to maintain continuous pipeline operation.
[0105] When a subtask fails, the system triggers an automatic retry mechanism, placing the subtask back into the tail of the shared task queue and potentially adjusting the target disk to reduce invalid I / O. If the number of retries exceeds a threshold, the system triggers an alarm and freezes the relevant stripe. Subsequently, based on continuous failure feedback, the system reassesses the load, reducing the load weight of high-load disks and dynamically adjusting resource quotas to prioritize business I / O. If the failure rate within the same task group exceeds a threshold, the task group is re-divided, and the source / target disk combination is adjusted to reduce the impact of a single failure. Regarding fault isolation and logging, the system freezes the logical addresses of associated stripes and records failure logs for subsequent analysis.
[0106] In summary, both success and failure of a subtask trigger the aforementioned closed-loop optimization process, including load model updates, shared task queue scheduling optimization, and business performance assurance. This achieves a closed loop of execution-verification-optimization, dynamically optimizing reconstruction efficiency and business performance while ensuring data consistency. It offers greater intelligence and flexibility.
[0107] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.
[0108] Figure 2 This is a schematic diagram of an independent disk redundancy array reconfiguration device provided in an embodiment of the present invention. Figure 2 As shown, the device includes:
[0109] The judgment module 10 is used to monitor the performance indicators of each physical disk and determine whether there is a faulty physical disk in each physical disk based on the performance indicators; if so, the acquisition module 11 is triggered.
[0110] The acquisition module 11 is used to acquire service input / output performance indicators; wherein, the service input / output performance indicators include at least the total throughput, average latency, and quantile latency of the service input / output.
[0111] Module 12 is used to select a target reconstruction mode from among the various reconstruction modes based on the relationship between the total throughput, average latency, and quantile latency of the service input / output and their corresponding thresholds. The resource consumption of the service is negatively correlated with the resource consumption under the target reconstruction mode. The reconstruction mode is used to determine the input / output bandwidth consumption and processor consumption during the reconstruction process. The reconstruction modes include a first reconstruction mode, a second reconstruction mode, and a third reconstruction mode. The maximum reconstruction input / output bandwidth under the first reconstruction mode is less than that under the third reconstruction mode, and the maximum reconstruction input / output bandwidth under the third reconstruction mode is less than that under the second reconstruction mode. The processor priority weight under the first reconstruction mode is less than that under the third reconstruction mode, and the processor priority weight under the third reconstruction mode is less than that under the second reconstruction mode.
[0112] The generation module 13 is used to generate a reconstruction resource allocation decision based on the target reconstruction mode and the reconstruction performance indicators collected in real time.
[0113] Execution module 14 is used to perform reconstruction of each stripe in the faulty physical disk based on the reconstruction resource allocation decision.
[0114] In some embodiments, it also includes:
[0115] The partitioning module is used to divide the logical volume space into multiple consecutive stripes based on data access frequency information;
[0116] The disk real-time utilization acquisition module is used to collect the real-time disk utilization of each physical disk.
[0117] The disk weight determination module is used to determine the disk weight of each physical disk based on the real-time utilization of each disk and the standard scalable hash-controlled replication weight.
[0118] The storage module is used to store the data blocks and parity blocks in each stripe on different physical disks according to the weight of each disk;
[0119] The location information acquisition module is used to acquire the location information of each stripe; wherein, the location information includes at least the stripe identifier, the physical disk identifier of the physical disk where the stripe is located, the logical block range, and the status flag; the logical block range is the starting logical block address and size of the stripe on the corresponding physical disk;
[0120] The mapping table generation module is used to generate a dynamic stripe mapping table based on the position information of each stripe.
[0121] In some embodiments, the configuration process of the refactoring mode includes: setting the maximum refactoring input / output bandwidth in the first refactoring mode to be no greater than a first percentage of the total bandwidth, and the processor priority weight to be no greater than a second percentage of the total processor utilization; setting the maximum refactoring input / output bandwidth in the second refactoring mode to be no less than a third percentage of the total bandwidth, and the processor priority weight to be no less than a fourth percentage of the total processor utilization; setting the maximum refactoring input / output bandwidth in the third refactoring mode to be within a first range, and the processor priority weight to be within a second range; wherein the first percentage is less than the third percentage, and the second percentage is less than the fourth percentage; the first range is determined based on the first percentage and the third percentage of the total bandwidth, and the second range is determined based on the second percentage and the fourth percentage of the total processor utilization.
[0122] In some embodiments, module 12 is selected, including:
[0123] The first selection submodule is used to select the first reconstruction mode as the target reconstruction mode when the total throughput of business input / output is not less than the first daily throughput threshold, or the quantile delay is greater than the quantile delay threshold.
[0124] The second selection submodule is used to select the second reconstruction mode as the target reconstruction mode when the total throughput of business input / output is not greater than the second daily throughput threshold and the average latency is less than the first average latency threshold.
[0125] The third selection submodule is used to select the third reconstruction mode as the target reconstruction mode when the average latency is less than the second average latency threshold and the disk input / output utilization of each physical disk is less than the disk input / output utilization threshold.
[0126] Among them, the first daily throughput threshold is greater than the second daily throughput threshold; the first average latency threshold is less than the second average latency threshold.
[0127] In some embodiments, it also includes:
[0128] The update submodule is used to update business input / output performance metrics according to a preset period.
[0129] The reselection submodule is used to select a new target refactoring mode in the refactoring mode based on the updated business input / output performance metrics.
[0130] In some embodiments, it also includes:
[0131] The fine-tuning submodule is used to determine whether, after a preset time, the average latency is less than the second average latency threshold and the disk input / output utilization of each physical disk is less than the disk input / output utilization threshold when the third reconstruction mode is selected as the target reconstruction mode. If yes, the maximum reconstruction input / output bandwidth is increased; if no, the maximum reconstruction input / output bandwidth is decreased.
[0132] In some embodiments, the generation module 13 includes:
[0133] The `get` submodule is used to obtain the initial maximum input / output bandwidth and initial processor priority weights specified by the target refactoring mode.
[0134] The fine-tuning determination submodule is used to determine the fine-tuning amount of the maximum input / output bandwidth of the reconstruction based on the reconstruction performance indicators collected in real time.
[0135] The target reconstruction maximum input / output bandwidth calculation submodule is used to calculate the target reconstruction maximum input / output bandwidth based on the initial reconstruction maximum input / output bandwidth and the fine-tuning amount;
[0136] The target processor priority weight calculation submodule is used to calculate the target processor priority weight based on the target reconstructed maximum input / output bandwidth and the initial processor priority weight.
[0137] In some embodiments, the execution module 14 includes:
[0138] The stripe list generation module is used to determine the location information of each stripe in the faulty physical disk according to the dynamic stripe mapping table, and generate the corresponding stripe list to be reconstructed.
[0139] The source physical disk determination module is used to determine the source physical disks that have data association with the faulty physical disks based on the list of stripes to be reconstructed;
[0140] The target disk determination module is used to determine the target disk among various physical disks based on various performance indicators;
[0141] The task group partitioning module is used to divide the list of stripes to be reconstructed into multiple task groups based on the load information of the source physical disk and the target disk; each task group contains a preset number of stripes to be reconstructed.
[0142] The subtask partitioning module is used to decompose each task group into multiple subtasks and put each subtask into a shared task queue.
[0143] The reconstructed data block calculation module is used to acquire and execute each subtask in the shared task queue in parallel through multiple processing units, calculate the corresponding reconstructed data block through the independent disk redundancy array algorithm, and store it in the buffer;
[0144] The write module is used to sequentially write the reconstructed data blocks of the buffer to the target disk when the data in the buffer reaches the corresponding storage threshold.
[0145] In some embodiments, the source physical disk determination module includes:
[0146] The query module is used to query the non-faulty physical disks corresponding to the faulty physical disks based on the dynamic stripe mapping table; where the data blocks in the non-faulty physical disks and the data blocks in the faulty physical disks are related data.
[0147] The processing module is used to remove abnormal physical disks from each non-faulty physical disk in order to identify the source physical disk.
[0148] The target disk determination module includes:
[0149] The third determination submodule is used to determine the non-faulty physical disks in each physical disk, excluding the faulty physical disks.
[0150] The fourth determination submodule is used to determine the disk input / output utilization and remaining storage space of each non-faulty physical disk;
[0151] The fifth determination submodule is used to determine the non-faulty physical disks that have a disk input / output utilization rate less than the disk input / output utilization threshold, a remaining storage space greater than the remaining storage space threshold, and are not in the same load domain as the source physical disk as the target disk.
[0152] For a description of the features in the embodiment of the independent disk redundant array reconstruction device, please refer to the relevant description of the embodiment of the independent disk redundant array reconstruction method, which will not be repeated here.
[0153] Embodiments of the present invention also provide an electronic device, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the embodiments of the independent disk redundant array reconfiguration method described above.
[0154] Embodiments of the present invention also provide a computer-readable storage medium storing a computer program configured to execute the steps in any of the embodiments of the independent disk redundant array reconstruction method described above.
[0155] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0156] Embodiments of the present invention also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the embodiments of the independent disk redundant array reconstruction method described above.
[0157] Embodiments of the present invention also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the embodiments of the independent disk redundant array reconfiguration method described above.
[0158] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0159] The present invention has provided a detailed description of an independent disk redundant array reconstruction method and electronic device. Specific examples have been used to illustrate the principles and implementation methods of the invention. The descriptions of the embodiments above are only intended to help understand the method and core ideas of the present invention. It should be noted that those skilled in the art can make various improvements and modifications to the present invention without departing from its principles, and these improvements and modifications also fall within the protection scope of the present invention.
Claims
1. A method for reconstructing an independent disk redundant array, characterized in that, include: Monitor the performance metrics of each physical disk, and determine whether there are any faulty physical disks among them based on the performance metrics. If so, then obtain the service input / output performance metrics; wherein, the service input / output performance metrics include at least the total throughput, average latency, and quantile latency of the service input / output; Based on the relationship between the total throughput of the service input / output, the average latency, and the quantile latency and their corresponding thresholds, a target reconstruction mode is selected from each reconstruction mode. The resource consumption of the service is negatively correlated with the resource consumption under the target reconstruction mode. The reconstruction mode is used to determine the input / output bandwidth consumption and processor consumption during the reconstruction process. The reconstruction modes include a first reconstruction mode, a second reconstruction mode, and a third reconstruction mode. The maximum reconstruction input / output bandwidth under the first reconstruction mode is less than that under the third reconstruction mode, and the maximum reconstruction input / output bandwidth under the third reconstruction mode is less than that under the second reconstruction mode. The processor priority weight under the first reconstruction mode is less than that under the third reconstruction mode, and the processor priority weight under the third reconstruction mode is less than that under the second reconstruction mode. Based on the target reconstruction mode and the real-time collected reconstruction performance indicators, a reconstruction resource allocation decision is generated; Based on the aforementioned resource allocation decision, the reconstruction of each stripe in the faulty physical disk is performed; Based on the relationships between the total throughput of the service input / output, the average latency, and the quantile latency and their corresponding thresholds, a target reconstruction mode is selected from each reconstruction mode, including: When the total throughput of the business input / output is not less than the first daily throughput threshold, or the quantile delay is greater than the quantile delay threshold, the first reconstruction mode is selected as the target reconstruction mode. When the total throughput of the business input / output is not greater than the second daily throughput threshold and the average latency is less than the first average latency threshold, the second reconstruction mode is selected as the target reconstruction mode. When the average latency is less than the second average latency threshold and the disk input / output utilization of each physical disk is less than the disk input / output utilization threshold, the third reconstruction mode is selected as the target reconstruction mode. Among them, the first daily throughput threshold is greater than the second daily throughput threshold; the first average latency threshold is less than the second average latency threshold. Based on the reconstructed resource allocation decision, the reconstructing of each stripe in the faulty physical disk is performed, including: The location information of each stripe in the faulty physical disk is determined according to the dynamic stripe mapping table, and a corresponding list of stripes to be reconstructed is generated. Based on the list of stripes to be reconstructed, the source physical disks that have data associations with the faulty physical disks are identified; Based on the aforementioned performance metrics, the target disk is determined from among the aforementioned physical disks; Based on the load information of the source physical disk and the target disk, the list of stripes to be reconstructed is divided into multiple task groups; wherein, each task group contains a preset number of stripes to be reconstructed. Each of the task groups is decomposed into multiple subtasks, and each subtask is placed into a shared task queue; The subtasks in the shared task queue are acquired and executed in parallel by multiple processing units, and the corresponding reconstructed data blocks are calculated by the independent disk redundancy array algorithm and stored in the buffer. When the data in the buffer reaches the corresponding storage threshold, each of the reconstructed data blocks in the buffer is sequentially written to the target disk; Based on the list of stripes to be reconstructed, source physical disks that have data associations with the faulty physical disk are identified, including: Based on the dynamic stripe mapping table, query the non-faulty physical disk corresponding to the faulty physical disk; wherein, the data blocks in the non-faulty physical disk and the data blocks in the faulty physical disk are related data; Remove the abnormal physical disks from each of the non-faulty physical disks to determine the source physical disk; Correspondingly, based on the aforementioned performance metrics, the target disk is determined among the aforementioned physical disks, including: Identify the non-faulty physical disks among the physical disks, excluding the faulty physical disk; Determine the disk I / O utilization and remaining storage space of each of the non-faulty physical disks; The non-faulty physical disk that corresponds to a disk input / output utilization rate less than the disk input / output utilization threshold, a remaining storage space greater than the remaining storage space threshold, and is not in the same load domain as the source physical disk is identified as the target disk.
2. The independent disk redundancy array reconstruction method according to claim 1, characterized in that, Before monitoring the performance metrics of each physical disk, the following is also included: The logical volume space is divided into multiple consecutive stripes based on data access frequency information; Collect the real-time disk utilization rate of each physical disk; The disk weight of each physical disk is determined based on the real-time utilization of each disk and the standard scalable hash-controlled replication weight. According to the disk weights, the data blocks and check blocks in each stripe are stored on different physical disks respectively; Obtain the location information of each stripe; wherein, the location information includes at least a stripe identifier, a physical disk identifier of the physical disk where the stripe is located, a logical block range, and a status flag; the logical block range is the starting logical block address and size of the stripe on the corresponding physical disk; A dynamic strip mapping table is generated based on the position information of each strip.
3. The independent disk redundancy array reconfiguration method according to claim 1, characterized in that, The configuration process for the refactoring mode includes: In the first reconstruction mode, the maximum input / output bandwidth of reconstruction is set to be no greater than the first percentage of the total bandwidth, and the processor priority weight is set to be no greater than the second percentage of the total processor utilization. In the second refactoring mode, the maximum input / output bandwidth of the refactoring is set to be no less than the third percent of the total bandwidth, and the processor priority weight is set to be no less than the fourth percent of the total processor utilization. In the third refactoring mode, the maximum input / output bandwidth for refactoring is set to the first range, and the processor priority weight is set to the second range. The first percentage is less than the third percentage, and the second percentage is less than the fourth percentage; the first range is determined based on the first percentage and the third percentage of the total bandwidth, and the second range is determined based on the second percentage and the fourth percentage of the total processor utilization.
4. The independent disk redundancy array reconfiguration method according to claim 1, characterized in that, After selecting the target reconstruction mode, the following is also included: The service input / output performance metrics are updated according to a preset period. Based on the updated business input / output performance metrics, a new target reconstruction mode is selected from each of the reconstruction modes.
5. The independent disk redundancy array reconfiguration method according to claim 1, characterized in that, After selecting the target reconstruction mode, the following is also included: When the third reconstruction mode is selected as the target reconstruction mode, it is determined whether the average latency is less than the second average latency threshold after a preset time, and whether the disk input / output utilization of each physical disk is less than the disk input / output utilization threshold. If so, then increase the maximum input / output bandwidth of the reconstruction; If not, then reduce the maximum input / output bandwidth of the reconstruction.
6. The independent disk redundancy array reconfiguration method according to claim 3, characterized in that, Based on the target reconstruction mode and the real-time collected reconstruction performance indicators, a reconstruction resource allocation decision is generated, including: Obtain the initial maximum input / output bandwidth and the initial processor priority weight specified by the target reconstruction mode; The fine-tuning amount of the maximum input / output bandwidth of the reconstruction is determined based on the reconstruction performance indicators collected in real time; Calculate the target reconstructed maximum input / output bandwidth based on the initial reconstructed maximum input / output bandwidth and the fine-tuning amount; The target processor priority weight is calculated based on the target reconstructed maximum input / output bandwidth and the initial processor priority weight.
7. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the independent disk redundant array reconfiguration method as described in any one of claims 1 to 6 when executing the computer program.
Citation Information
Patent Citations
Controlling data storage in an array of storage devices
CN104123100A
Server disk RAID state monitoring method and device and readable storage medium
CN120687322A