Methods and apparatus for configuring hard disk arrays, storage media and electronic devices
By acquiring reference performance data of the hard disk array and dynamically adjusting candidate decision conditions to adapt to the current configuration, the problem of low storage efficiency of hard disk arrays is solved, and efficient and flexible configuration of the storage system is achieved.
Patent Information
- Application Number
- CN202511167331.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-20
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2045-08-20
AI Technical Summary
Existing hard disk array configuration methods suffer from low storage efficiency and cannot be flexibly adjusted to adapt to dynamic business needs.
By acquiring reference performance data of the hard disk array, candidate decision conditions are identified and configured as the target configuration to adapt to changes in the current configuration and achieve dynamic adjustment.
It improves the storage efficiency of the storage system, enabling it to adapt to changes in business needs in real time and enhance performance and reliability.
Smart Images

Figure CN120669927B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of storage systems, and more particularly to a method and apparatus for configuring a hard disk array, a storage medium, and electronic equipment. Background Technology
[0002] In today's rapidly evolving era of cloud computing and big data, enterprise-level storage systems face unprecedented challenges and opportunities. With the explosive growth of data volume, the demand for storage performance and reliability is constantly increasing, especially in scenarios involving high concurrency, large data transfer, mixed workloads, and real-time data processing. In these scenarios, Redundant Array of Independent Disks (RAID) configurations can provide performance and data redundancy.
[0003] However, the RAID system configuration in related technologies is a one-time setup, configured based on expected workload and needs. Once the RAID configuration is set, it becomes the foundation of the system's operation and is not easily changed. These configurations cannot be flexibly adjusted to meet real-time changing business demands. This rigid configuration limits the system's responsiveness to dynamic business needs and reduces overall storage efficiency. In other words, the disk array configuration methods in related technologies suffer from low storage efficiency. Summary of the Invention
[0004] This application provides a method and apparatus for configuring a hard disk array, a storage medium and an electronic device, to at least solve the problem of low storage efficiency in the configuration methods of hard disk arrays in the related art.
[0005] This application provides a method for configuring a hard disk array, including: obtaining reference performance data of the hard disk array, wherein the reference performance data is used to indicate the performance data of the hard disk array within a time period;
[0006] The candidate decision condition that meets the reference performance data among at least one candidate decision condition is determined as the target decision condition, wherein the candidate decision condition is used to indicate the range of performance data of the hard disk array, and each of the at least one candidate decision condition corresponds to a candidate configuration of the hard disk array.
[0007] The candidate configurations corresponding to the target decision conditions are identified as the target configurations.
[0008] If the current configuration of the hard disk array is inconsistent with the target configuration, configure the hard disk array to the target configuration.
[0009] This application also provides a configuration device for a hard disk array, including: a performance data acquisition module for acquiring reference performance data of the hard disk array, wherein the reference performance data is used to indicate the performance data of the hard disk array within a time period;
[0010] The decision condition determination module is used to determine the candidate decision condition that the reference performance data meets among at least one candidate decision condition as the target decision condition, wherein the candidate decision condition is used to indicate the range of the performance data of the hard disk array, and each of the at least one candidate decision condition corresponds to a candidate configuration of the hard disk array.
[0011] The target configuration determination module is used to determine the candidate configurations corresponding to the target decision conditions as the target configurations;
[0012] The configuration module is used to configure the hard disk array to the target configuration when the current configuration of the hard disk array is inconsistent with the target configuration.
[0013] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for executing the computer program to implement the steps of any of the above-described hard disk array configuration methods.
[0014] This application also provides a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the steps of any of the above-described disk array configuration methods.
[0015] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described hard disk array configuration methods.
[0016] This application obtains reference performance data for a hard disk array, which indicates the performance data of the hard disk array within a time period. It identifies at least one candidate decision condition that matches the reference performance data as a target decision condition, where the candidate decision condition indicates the range of the hard disk array's performance data, and each candidate decision condition corresponds to a candidate configuration of the hard disk array. The application then determines the candidate configuration corresponding to the target decision condition as the target configuration. If the current configuration of the hard disk array differs from the target configuration, the hard disk array is configured to the target configuration. The application processes the performance data of the currently running hard disk array to obtain reference performance data, determines the candidate decision conditions that match the reference performance data, and then determines the candidate configuration corresponding to the candidate decision condition as the target configuration. The target configuration is the configuration that the hard disk array is expected to convert to. Therefore, if the current configuration of the hard disk array differs from the target configuration, the hard disk array is configured to the target configuration. In this way, a suitable configuration for the hard disk array can be determined in real time and configuration changes can be made. Therefore, this solves the technical problem of low storage efficiency in current hard disk array configuration methods, achieving the technical effect of improving the storage efficiency of the storage system. Attached Figure Description
[0017] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a schematic diagram of the hardware environment for an optional hard disk array configuration method according to an embodiment of this application;
[0019] Figure 2 This is a flowchart of an optional hard disk array configuration method according to an embodiment of this application;
[0020] Figure 3 This is a schematic diagram of a first target configuration of an optional hard disk array according to an embodiment of this application;
[0021] Figure 4 This is a schematic diagram of a first target configuration of another optional hard disk array according to an embodiment of this application;
[0022] Figure 5 This is a schematic diagram of an optional second target configuration of a hard disk array according to an embodiment of this application;
[0023] Figure 6 This is a schematic diagram of another optional target configuration of a hard disk array according to an embodiment of this application;
[0024] Figure 7 This is a schematic diagram of an optional hard disk array configuration method according to an embodiment of this application;
[0025] Figure 8 This is a structural block diagram of an optional hard disk array configuration device according to an embodiment of this application. Detailed Implementation
[0026] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0027] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0028] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0029] According to one aspect of the embodiments of this application, a method for configuring a hard disk array is provided. As an optional implementation, the above-described method for configuring a hard disk array can be applied to, but is not limited to, [examples of other methods]. Figure 1 The configuration system for the hard disk array in the hardware environment shown. This configuration system may include, but is not limited to, terminal device 102, network 110, and hard disk array 112. Terminal device 102 runs a target client (such as...). Figure 1 As shown, taking a target client as an example that can configure a hard disk array. The terminal device 102 includes a display 108, a processor 106, and a memory 104. The display 108 can be used to display performance data of the hard disk array, and also to provide a human-computer interaction interface to receive human-computer interaction operations on the interface and touch operations on different controls. The processor is used to generate interaction instructions in response to the above-mentioned human-computer interaction operations and send the interaction instructions to the server. The memory is used to store performance data.
[0030] Assumption Figure 1 The terminal device 102 runs a client for configuring the hard disk array. The specific process in this embodiment is as follows: As in step S102, the terminal device 102 receives performance data from the hard disk array 112 via network 110. Then, the terminal device executes steps S104-S108 to obtain reference performance data of the hard disk array, wherein the reference performance data indicates the performance data of the hard disk array within a time period; at least one candidate decision condition is determined as the target decision condition if the reference performance data is met, wherein the candidate decision condition indicates the range of the hard disk array's performance data, and each of the at least one candidate decision condition corresponds to a candidate configuration of the hard disk array; the candidate configuration corresponding to the target decision condition is determined as the target configuration; if the current configuration of the hard disk array is inconsistent with the target configuration, the hard disk array is configured as the target configuration. Afterwards, the terminal device 102 executes step S110 to configure the hard disk array 112 according to the target configuration via network 110.
[0031] Optionally, in this embodiment, the terminal device 102 may be a terminal device configured with a target client, which may include, but is not limited to, at least one of the following: mobile phone (such as Android phone, iOS phone, etc.), laptop computer, tablet computer, PDA, MID (Mobile Internet Device), PAD, desktop computer, smart TV, etc. The network may include, but is not limited to, wired network and wireless network. The wired network includes: local area network, metropolitan area network and wide area network. The wireless network includes: Bluetooth, WIFI and other networks that enable wireless communication. The network may also refer to the physical connection between the terminal device 102 and the hard disk array 112.
[0032] Optionally, the aforementioned terminal device 102 can be a RAID controller. Although the RAID controller is a hardware device, it can be located inside or outside the hard disk array, undertaking core responsibilities such as executing policy control layer instructions, managing RAID level migration, striping size adjustment, and monitoring hard disk health status. The RAID controller is the physical execution of intelligent policies.
[0033] Terminal device 102 can also be a software management system on a storage server. This software management system typically runs on the storage server, rather than directly on the hard disk array. It is a key component of the policy control layer, responsible for data monitoring, pattern recognition, predictive modeling, and decision generation. The software management system indirectly controls the storage operations within the array by communicating with the RAID controller, enabling dynamic RAID configuration adjustments.
[0034] Terminal device 102 can also be a cloud storage service. Cloud storage services are not part of the hard disk array themselves, but they can be connected to the data center's storage system via a network as additional storage resources. When local storage resources are scarce or in response to potential failures, the intelligent dynamic RAID system can automatically call upon resources from the cloud storage service to achieve temporary data migration or redundant storage.
[0035] It should be noted that the terminal device 102 may appear to be the same product as the hard disk array 112 in terms of product presentation; that is, the terminal device 102 may be located within the hard disk array 112 as part of it to control a single hard disk array. The terminal device 102 may also be a separate external terminal responsible for configuring different hard disk arrays.
[0036] Optionally, the aforementioned hard disk array 112 (RAID) refers to a method of providing higher performance, larger storage capacity, and / or enhanced data reliability by combining multiple physical hard disks through specific data distribution and redundancy strategies to form a logically single storage device. It can be an array of disks or an array of hard disks.
[0037] The hard disk array 112 includes physical hard disks, which can be traditional hard disk drives (HDDs) or solid-state drives (SSDs), which are connected to the RAID controller via data cables and jointly undertake data storage functions.
[0038] Embodiments of this application provide a method for configuring a hard disk array. Figure 2 This is a flowchart of an optional hard disk array configuration method according to an embodiment of this application; as follows: Figure 2 As shown, the configuration method of this hard disk array includes:
[0039] Step S202: Obtain reference performance data of the hard disk array, wherein the reference performance data is used to indicate the performance data of the hard disk array within a time period;
[0040] It's important to note that a hard drive array is a collection of multiple hard drives that offers faster read / write speeds, larger storage capacity, or data redundancy; a common form is a RAID array. Reference performance data is a collection of performance metrics exhibited by a hard drive array within a specific time period. This can include IOPS (Input / Output Operations Per Second), throughput, latency, SMART data, and other key metrics for measuring hard drive or array performance. The time period is a window used to collect and analyze performance data; it can be a few seconds, minutes, hours, or longer, depending on the monitoring and management system settings.
[0041] In an optional implementation, the system periodically collects performance data from the hard drive array to reflect its operational status over a specific period. This data includes not only basic read / write performance metrics but may also cover disk health information, such as SMART data, as well as data access patterns and frequencies. The collection of performance data is fundamental for subsequent analysis and prediction, providing information about the array's current state and past performance. This information is used in decision-making algorithms to determine whether and how to adjust the RAID configuration.
[0042] It should be noted that the reference performance data may include the following: IOPS (Input / Output Operations Per Second): Reflects the hard drive array's ability and intensity in handling read and write operations. Throughput: Measures the total amount of data transferred per unit of time, typically measured in MB / s or GB / s. Latency: The time required for a data request to complete a response, used to evaluate the speed of the hard drive array in processing I / O requests. SMART data: Hard drive health metrics provided by Self-Monitoring, Analysis and Reporting Technology, including error rate, read-ahead errors, head flight time, etc., used to monitor potential hard drive failures. Cache hit rate: Reflects the effectiveness of the storage system's cache. A higher cache hit rate means that more data requests can be retrieved directly from the cache, reducing disk access and improving response speed.
[0043] In an optional implementation, the reference performance data can be predicted data derived from the performance data of the hard disk array. After acquiring the performance data of the hard disk array for various time periods, the collected data can be classified and analyzed. For example, based on real-time data within 15 minutes and the results of pattern recognition, historical data and prediction algorithms, such as time series analysis, regression analysis, or prediction models in machine learning (such as ARIMA, LSTM, etc.), can be used to predict the load trend and hard disk health status for the next 5 minutes. This prediction can include two prediction methods:
[0044] Load trend prediction: Predicts the intensity and type of future I / O operations, helping the system prepare in advance for possible high loads or pattern changes, such as increasing stripe size to accommodate continuous reads and writes, or switching to a more redundant RAID configuration to cope with possible failures.
[0045] Hard drive health prediction: By analyzing SMART data and other performance metrics, the health status of the hard drive is assessed, and the probability of failure is predicted. For example, if the hard drive's error rate is found to be gradually increasing, even if it is currently within the normal range, it may indicate a risk of failure in the next few hours.
[0046] It's important to note that using historical and current data for analysis and decision-making in intelligent storage systems is entirely feasible; prediction is not always necessary. Predictive data is primarily used for forward-looking decision-making, such as forecasting future load and failure risks to respond proactively. However, this does not mean that prediction is the only or necessary means of intelligent storage system management.
[0047] In an optional implementation, the reference performance data can be historical and current data, which can provide information about the past and present operating status of the storage system, including I / O patterns, performance metrics, data access frequency, disk health status, etc. This data, through monitoring and collection, can be analyzed without the need for prediction to optimize the system's current configuration and performance.
[0048] By conducting statistical analysis on historical data, we can identify the system's typical workload patterns, performance bottlenecks, and common failure points, thereby developing more effective storage strategies and fault recovery plans.
[0049] Real-time monitoring of the storage system's current status, including IOPS, throughput, latency, and disk error rate, allows for immediate response to sudden performance degradation or failures. Measures such as isolation, adjusting stripe size, and switching RAID levels can be taken to optimize performance and ensure data security.
[0050] In alternative implementations, combining forecast, historical, and current data can provide a more comprehensive basis for decision-making in certain scenarios. For example, forecast data can be used to anticipate potential future load changes or failure risks, allowing the system to adjust its configuration in advance; while historical and current data can be used to verify the accuracy of the forecasts and to optimize the system in real time based on its status, ensuring the real-time nature and accuracy of the decisions.
[0051] Step S204: Determine the candidate decision condition that the reference performance data meets from at least one candidate decision condition as the target decision condition, wherein the candidate decision condition is used to indicate the range of the performance data of the hard disk array, and each of the at least one candidate decision condition corresponds to a candidate configuration of the hard disk array.
[0052] It should be noted that candidate decision conditions are a set of possible decision conditions pre-defined during the system optimization or decision-making process, based on current performance indicators and system status. These conditions specify the range within which data should trigger corresponding actions. For example, when read / write latency is below a certain threshold, the system may tend towards a more efficient RAID configuration; conversely, it may choose a configuration that emphasizes data redundancy and security.
[0053] The target decision condition is those conditions that the system determines are most suitable for decision-making under the current state, from a series of candidate decision conditions. Once determined, the system will make corresponding configuration adjustments according to the guiding principles under this condition.
[0054] Candidate configurations for a hard drive array can include RAID level, stripe size, redundancy mechanisms, etc., which directly determine the array's performance, reliability, and storage efficiency. The following is a detailed analysis of these factors:
[0055] RAID levels define how data is stored and redundant in a hard drive array. Different RAID levels cater to different performance and reliability requirements, for example:
[0056] RAID 0: Data striping, no redundancy, provides the highest read and write performance, but the failure of any single hard drive will result in the loss of all data in the array.
[0057] RAID1: Mirroring, data is completely copied to two hard drives, providing data redundancy and ensuring high data reliability, but the storage capacity is only half of the total capacity of the hard drives in the array.
[0058] RAID5: Striping with distributed parity, requires at least 3 hard drives, provides data redundancy and high read / write performance, and can continue to operate when a single hard drive fails.
[0059] RAID6: Similar to RAID5, but provides dual parity checking, increasing fault tolerance and protecting data when two hard drives fail simultaneously.
[0060] RAID10: A combination of RAID1 and RAID0, providing striping and mirroring to ensure high read / write performance and data redundancy, suitable for high-performance scenarios requiring high reliability.
[0061] Stripe size refers to the unit size of data blocks distributed across different hard drives in a RAID array. The choice of stripe size has a direct impact on performance: smaller stripe sizes (such as 8KB or 16KB) are beneficial for random read and write operations because they can read or write small data blocks from multiple hard drives faster, reducing seek time. Larger stripe sizes (such as 256KB or larger) are suitable for sequential read and write of large data blocks because they can reduce data transfer latency per I / O operation, improving data throughput.
[0062] Data redundancy mechanisms involve storing additional data in a hard drive array to prevent data loss. Redundancy methods include: Parity checking: used in RAID 5 and RAID 6, this ensures that lost data can be reconstructed in the event of a hard drive failure by calculating parity blocks and distributing them throughout the array. Mirroring: used in RAID 1, this provides data redundancy by completely replicating data across two hard drives. This method allows for immediate switching to the mirrored drive in the event of a single hard drive failure, ensuring continuous data access.
[0063] In an optional implementation, the system examines all candidate decision conditions to see which conditions' performance data ranges match the currently collected reference performance data. Those candidate decision conditions that successfully match are considered the target decision conditions, i.e., the optimal decision scheme the system should subsequently base its decision on.
[0064] Candidate decision conditions can cover various workloads and performance states that the hard drive array may face, with each condition corresponding to a possible optimization configuration or strategy. For example, if the current read / write latency is low, the system may determine that now is a good time to upgrade the RAID level or adjust striping parameters to improve performance; conversely, if the detected disk error rate increases, the system will tend to choose a RAID configuration with added redundancy protection, such as RAID5 or RAID6, to ensure data security and system stability.
[0065] This process embodies dynamic adaptation and optimization. Through real-time analysis and decision-making, the system can flexibly adjust storage configurations based on actual load and performance requirements, maximizing storage resource utilization while ensuring data reliability and business continuity. This mechanism is particularly suitable for scenarios with frequently changing workloads or performance requirements, such as data centers, cloud computing environments, or high-performance computing clusters.
[0066] Step S206: Determine the candidate configuration corresponding to the target decision condition as the target configuration;
[0067] As mentioned earlier, target decision conditions refer to the specific criteria or circumstances upon which the system makes RAID configuration selections. These conditions may include factors such as real-time I / O mode, load conditions, and failure rate. The target configuration can be the RAID configuration that the system determines as the best or most suitable for the current decision conditions after evaluation by a policy processing model and priority calculation among multiple candidate configurations.
[0068] In an optional implementation, the system analyzes and compares all candidate configurations, determining the optimal RAID configuration as the target configuration based on current decision conditions such as disk error rate, I / O optimization requirements, storage utilization, or write latency, and the priority of these conditions. The system can quantify and compare the potential benefits and costs of each candidate configuration. Ultimately, the system identifies the RAID configuration that best balances performance, security, and cost under the current decision conditions and designates it as the target configuration. This configuration will then be applied to the virtualized storage layer to achieve intelligent adjustment and optimization of storage resources, thereby improving overall system performance and data redundancy while reducing resource consumption and maintenance costs.
[0069] Step S208: If the current configuration of the hard disk array is inconsistent with the target configuration, configure the hard disk array to the target configuration.
[0070] It's important to note that when the current hard disk array configuration cannot meet predicted performance demands or business continuity requirements, the system will proactively adjust the configuration to the target configuration. This means that if monitoring and analysis reveal that the current hard disk array configuration cannot achieve the expected performance level, or if there are potential data security risks, the system will automatically or manually initiate a configuration change process to ensure that the storage system can adapt to changing environments, providing optimal performance and ensuring data security.
[0071] In an optional implementation, before initiating any configuration changes, the details of the target configuration must first be clearly defined, including but not limited to RAID level, stripe size, redundancy mechanisms, etc. These parameters should be determined based on real-time analysis of I / O patterns, load conditions, disk health status, and business requirements, i.e., the target configuration should be determined.
[0072] Once the target configuration is determined, RAID level migration can be performed, such as migrating from RAID5 to RAID6, or switching from RAID0 to RAID10. This typically involves data redistribution and parity block reconstruction. During the migration process, the system may restrict data write operations to prevent data inconsistency while ensuring sufficient free space to store the generated parity data.
[0073] If the stripe size needs to be adjusted, the system will reorganize the data blocks through a background task, ensuring that each data block is distributed across different hard drives according to the new stripe size. This may affect data read and write performance, so it needs to be scheduled reasonably and executed during periods of low load.
[0074] When adjusting redundancy mechanisms, such as adding redundant hard drives or changing parity policies, a balance between data integrity and storage efficiency needs to be considered. The system may require: ensuring dual-write or triple-write mechanisms during data migration to maintain redundancy and data consistency; and initializing and synchronizing newly added hard drives or modified parity policies to ensure all data is stored correctly.
[0075] Example 1:
[0076] Suppose that in step S202, through continuous performance data acquisition, the system detects a sudden increase in the write latency of the current hard disk array (RAID5), exceeding the 100ms threshold, and according to the prediction model, this high latency state is expected to continue for some time. Furthermore, the system identifies that the current I / O mode is primarily continuous large-scale data writes, with sequential writes accounting for over 80%, and this trend is not expected to change within the next ten minutes.
[0077] In steps S204 to S206, the system performed in-depth data analysis, including assessing disk health status, considering business priority, and calculating migration costs. Based on the above, the system determined that switching to RAID0 configuration and increasing the stripe size to 1MB would significantly improve write performance, and that the current disk health status and business continuity requirements could withstand such a configuration change.
[0078] In step S208, the system confirms that the current configuration (RAID5) is inconsistent with the target configuration (RAID0 + 1MB stripe), and thus initiates the configuration migration process. The system gradually adjusts the hard disk array from RAID5 to RAID0 while increasing the stripe size. During this process, the system monitors the performance impact on services to ensure that the migration operation does not lead to data inconsistency or service interruption. For example, the system may limit the migration rate to ensure data continuity and consistency during peak business periods.
[0079] After the configuration migration is complete, the system continues to monitor the performance of the hard drive array under the new RAID configuration to ensure that the target configuration has indeed improved performance and resolved the initial issues. If, over the next few hours, monitoring data shows a significant reduction in write latency and no data inconsistencies occur, it indicates that the system has successfully optimized the hard drive array, achieving the expected performance improvement and stability enhancement goals. Conversely, if the monitoring results are unsatisfactory, the system may need to readjust its strategy, or even roll back to the previous configuration, to find a better solution.
[0080] This application obtains reference performance data for a hard disk array, which indicates the performance data of the hard disk array within a time period. It identifies at least one candidate decision condition that matches the reference performance data as a target decision condition, where the candidate decision condition indicates the range of the hard disk array's performance data, and each candidate decision condition corresponds to a candidate configuration of the hard disk array. The application then determines the candidate configuration corresponding to the target decision condition as the target configuration. If the current configuration of the hard disk array differs from the target configuration, the hard disk array is configured to the target configuration. The application processes the performance data of the currently running hard disk array to obtain reference performance data, determines the candidate decision conditions that match the reference performance data, and then determines the candidate configuration corresponding to the candidate decision condition as the target configuration. The target configuration is the configuration that the hard disk array is expected to convert to. Therefore, if the current configuration of the hard disk array differs from the target configuration, the hard disk array is configured to the target configuration. In this way, a suitable configuration for the hard disk array can be determined in real time and configuration changes can be made. Therefore, this solves the technical problem of low storage efficiency in current hard disk array configuration methods, achieving the technical effect of improving the storage efficiency of the storage system.
[0081] In an optional implementation, determining the candidate decision condition that meets the reference performance data among at least one candidate decision condition as the target decision condition includes: determining the target decision condition as the first candidate decision condition when the reference performance data indicates that the reliability index of the hard disk array does not meet the first index range; and determining the target decision condition as the second candidate decision condition when the reference performance data indicates that the efficiency index of the hard disk array does not meet the second index range.
[0082] It's important to note that the first set of metrics typically refers to a series of standards or thresholds set for the reliability of the storage system. This might include disk error rate, failure prediction metrics, and data redundancy levels to ensure data security and the stability of the storage system. The second set of metrics can be related to the efficiency of the storage system, involving key indicators such as read / write speed, I / O operation performance, and data throughput, aiming to optimize the storage system's efficiency and response speed.
[0083] In an optional implementation, the system will select decision conditions that match the current performance characteristics from a set of pre-set candidate strategies based on collected reference performance data, and use these as the next execution strategy. When a decline in reliability metrics is detected, such as the disk error rate exceeding a pre-set first metric range, the system will select the first candidate decision condition that focuses on improving reliability as the target decision condition. Conversely, if efficiency metrics such as IOPS or throughput are below a second metric range, the system tends to select the second candidate decision condition that focuses on improving efficiency.
[0084] The key to step S204 is determining the target decision conditions based on reference performance data, thereby guiding adjustments to the system configuration. This involves checking whether the hard disk array's reliability metrics are in an ideal state, monitoring the array's health status through signals such as SMART data and disk error rates. If the metrics are found to be below a first set range, the system infers a potential risk of data loss or service interruption. In this case, measures to enhance reliability should be prioritized, such as switching to a RAID6 configuration or increasing disk redundancy, to ensure data security.
[0085] On the other hand, if the monitored efficiency metrics, such as IOPS, throughput, or latency, fail to reach the preset second metric range, it indicates that the storage system's response speed or data processing capabilities may not meet business needs. The system will then shift its focus to improving efficiency. This might include adjusting the RAID configuration to improve read / write speeds, such as switching from RAID5 to RAID0, or adjusting the stripe size to optimize data access patterns, especially when the system identifies that the primary data reads and writes are large, consecutive blocks of data.
[0086] Through the above-described embodiments of this application, based on real-time performance data and preset policy conditions, the system dynamically selects the most suitable target decision conditions and makes configuration adjustments. Under the premise of maintaining data integrity and system stability, the system can dynamically adjust the RAID configuration to meet the ever-changing business needs and performance challenges, thereby ensuring that the storage system is both efficient and stable.
[0087] In an optional implementation, if the reference performance data indicates that the reliability index of the hard disk array does not meet the first index range, a target decision condition is determined as a first candidate decision condition, including at least one of the following:
[0088] 1) The error rate of the hard disk array is greater than the preset error rate, where the error rate is used to indicate the ratio of the number of read / write errors per unit time to the total number of read / write operations;
[0089] 2) The number of errors in the hard disk array is greater than the preset number of errors, where the number of errors indicates the total number of operational errors that occurred in the hard disk array within a certain period of time;
[0090] 3) The number of hard drives sending alert messages in the hard drive array is greater than the preset number of hard drives. The alert messages are used to indicate that a hard drive has failed.
[0091] It's important to note that the preset error rate can be a system-defined error rate threshold, used to determine whether the hard drive array needs to be configured for a higher redundancy RAID level (such as RAID 6). The preset error count can be the maximum allowed error count threshold per unit time, used to trigger system adjustments to the hard drive array configuration. Warning messages can be alerts sent by the hard drives, typically displayed in SMART data, indicating that the hard drives may be starting to fail and require attention or preventative measures. The preset number of hard drives can be a system-set hard drive failure warning threshold; when this number is reached or exceeded, the system considers the reliability of the hard drive array to be threatened.
[0092] In an optional implementation, the system continuously monitors the performance data of the hard disk array. In particular, when real-time reliability metrics fall below a preset first metric range, the focus shifts to strategies that enhance data redundancy and improve fault tolerance. This typically means the system needs to switch from the current RAID configuration (e.g., RAID 5) to a more reliable RAID level (e.g., RAID 6), or take other measures to address potential hard disk failure risks, ensuring the security of stored data and the continuous operation of the system.
[0093] When the system detects an excessively high error rate in the hard drive array, an error count exceeding safety limits, or signs of too many hard drive failures, it automatically selects the first candidate decision condition as the target decision condition, prioritizing increased storage redundancy and security. This decision may trigger adjustments to the RAID configuration, such as switching from a low-redundancy RAID level to a high-redundancy RAID level, or initiating a faulty hard drive replacement mechanism. Through real-time analysis and dynamic strategy adjustment, the system can find the optimal balance between data security and storage efficiency, effectively addressing potential storage failures, reducing the risk of data loss, and ensuring business continuity and data integrity.
[0094] In an optional implementation, if the reference performance data indicates that the efficiency metric of the hard disk array does not meet the second metric range, the target decision condition is determined as the second candidate decision condition, including at least one of the following:
[0095] 1) The percentage of sequential read / write operations in the hard disk array is greater than the preset percentage, where sequential read / write indicates that the hard disk array reads or writes data continuously;
[0096] 2) The latency of the hard disk array is greater than the preset latency, where the latency is used to indicate the time it takes for the hard disk array to complete one write operation.
[0097] It's important to note that the preset percentage is used to determine whether sequential read / write operations are currently dominant. If the current percentage of sequential read / write operations is higher than this ratio, it may indicate that the storage system should be configured to better support these operations. Latency refers to the time required from issuing a data access request to receiving a response, including but not limited to the time for data retrieval, processing, and return to the requester. High latency may indicate a performance bottleneck in the storage system when handling the current workload. The preset latency is a system-set standard or threshold used to determine whether the current latency is within an acceptable range. If the actual latency exceeds the preset value, the system may need to take measures to improve storage efficiency or reduce latency, such as adjusting the RAID configuration.
[0098] In an alternative implementation, if the efficiency metrics of the storage system, such as the latency of I / O operations or the performance of sequential read / write operations, are below the expected standard or threshold, then the system needs to take measures to improve efficiency.
[0099] When the system observes that sequential read / write operations constitute the majority of total operations, and if this proportion exceeds a preset threshold, the system will tend to optimize the configuration to support continuous data access. For example, this might include switching to a RAID 0 configuration or increasing the stripe size, as these configurations typically improve the efficiency of sequential read / write operations.
[0100] If the average time to complete a write operation exceeds the system's set latency threshold, the system will also consider the efficiency metric to be unsatisfactory. In this case, the system may need to be reconfigured to reduce latency, such as switching to a more efficient but potentially less redundant RAID configuration, or reducing the load on storage nodes by optimizing data distribution strategies.
[0101] Through the above-described embodiments of this application, storage strategies can be flexibly adjusted based on real-time efficiency indicators, reliability indicators, and preset thresholds to adapt to different business scenarios and performance requirements, ensuring smooth service and optimized user experience.
[0102] In an optional implementation, after determining the target decision condition as the first candidate decision condition, the method includes: configuring the hard disk array as the first target configuration, wherein the first target configuration is the configuration corresponding to the first candidate decision condition;
[0103] After configuring the hard disk array as the first target configuration, include one of the following:
[0104] 1) Send the target data to the first hard drive in the hard drive array, and create a mirror image of the target data on the second hard drive in the hard drive array;
[0105] 2) Send the target data to the third hard drive in the hard drive array, and send the verification information of the target data to the third hard drive.
[0106] It should be noted that the target data can be a specific dataset that needs to be stored or processed in the RAID array, and it is the main object of system management and optimization.
[0107] In a RAID configuration, mirroring refers to a complete copy of data between two or more disks. Mirroring is the foundation of RAID 1 (Mirrored Array) and is used for data redundancy, fast fault recovery, and faster read speeds. Parity information is used as checksums or metadata for data integrity and consistency. In RAID configurations, especially RAID 5 or RAID 6, parity information is used to detect or repair data errors, ensuring data integrity.
[0108] In an alternative implementation, if the new configuration is a mirrored pair, such as RAID 1, the system will ensure that data is written to both hard drives simultaneously to guarantee data consistency and redundancy. If the configuration involves parity, such as RAID 5 or RAID 6, the system will calculate and store parity information based on the location of the data blocks and the parity policy to prevent data corruption or loss and to enable rapid data recovery when needed.
[0109] When a serious reliability challenge is identified in the hard drive array, the system converts the array to a primary target configuration. This may include switching to RAID 1 (mirrored array) or RAID 6 (striped array with dual parity) to adapt to the current high-risk environment. After the configuration conversion, the system begins implementing specific redundancy and protection strategies. In the case of a mirrored array (such as RAID 1), the system ensures that data is written synchronously to at least two copies—the first and second hard drives. This ensures that even if one hard drive fails, the data on the other remains available, and services are unaffected. For RAID configurations using parity (such as RAID 5 or RAID 6), the system stores parity information on a separate hard drive (the third hard drive). This allows the system to recover lost data and prevent data loss or service interruption even if one or more hard drives in the array fail.
[0110] Figure 3 This is a schematic diagram of a first target configuration of an optional hard disk array according to an embodiment of this application; Figure 3 The architecture shown writes data to two or more disks simultaneously upon receiving the target data (e.g., ...). Figure 3 The first and second hard drives shown each contain a complete copy of the data.
[0111] This architecture provides data redundancy; if one disk fails, data can be read from another, enabling immediate data recovery. However, disk space utilization is low because the data is completely copied, requiring two or more times the storage space of the original data. It is suitable for applications with extremely high data security requirements and frequent read operations, such as financial trading systems and critical data backups.
[0112] Figure 4 This is a schematic diagram of a first target configuration of another optional hard disk array according to an embodiment of this application; as shown Figure 4 As shown, the target data (data 1 to data 15) can be stored on five third hard drives, each of which can store the corresponding data and verification information. For example, data 1 to data 3 can be sub-data of a data block, and verification information 1 and verification information 2 can be two verification messages generated based on data 1 to data 3.
[0113] This architecture uses two sets of parity information, allowing data recovery even when two disks fail simultaneously. It provides higher data redundancy and fault tolerance, ensuring data recovery even if two disks fail at the same time. However, disk space utilization is further reduced. It is suitable for applications with extremely high data security requirements, such as disaster recovery systems and high-availability server clusters.
[0114] In an optional implementation, after determining the target decision condition as the second candidate decision condition, the method includes: configuring the hard disk array as the second target configuration, wherein the second target configuration is the configuration corresponding to the second candidate decision condition;
[0115] After configuring the hard disk array as the second target configuration, include one of the following:
[0116] 1) Divide the target data into multiple sub-data according to the preset stripes, and send the multiple sub-data to the multiple hard drives contained in the hard disk array one by one;
[0117] 2) Divide the target data into multiple sub-data according to the preset stripes; send the multiple sub-data to the fifth hard disk in the hard disk array one by one, and create a mirror of the sub-data on the sixth hard disk in the hard disk array.
[0118] It's important to note that the preset stripe size is a predefined stripe size used to determine how data is divided and distributed across the disks in the hard disk array. Larger preset stripes are suitable for continuous large-block data reads and writes, while smaller stripes are suitable for high-frequency random access. Subdata are smaller data units formed after data has been divided by the preset stripe size; these subdata will be allocated to different disks in the hard disk array for storage.
[0119] After identifying the second candidate decision condition as the target decision condition, the system adjusts the configuration of the hard disk array to match this second target configuration to optimize storage efficiency or responsiveness. Once the configuration is adjusted, the system will reorganize the data storage method according to the new configuration parameters, such as stripe size, to ensure that data can be read and written more efficiently.
[0120] In an optional implementation, after identifying that efficiency metrics (such as read / write speed and I / O latency) are below a preset second metric range, a target decision condition is determined as the second candidate decision condition. This typically means that the system needs to take measures to improve storage efficiency, such as switching to a RAID 0 configuration to take advantage of parallel read / write operations and reduce data access latency. After determining the second target configuration, the system will perform configuration changes, including adjusting stripe size and changing data distribution rules, to adapt to the new RAID level.
[0121] After configuration adjustments are complete, the system needs to reorganize the data storage method to ensure that data can be effectively divided and distributed across the disks in the array according to the preset stripe size. This step is crucial for maximizing read and write performance because proper data allocation reduces single points of bottleneck and fully utilizes the read and write capabilities of all disks. If the system selects a RAID 0 configuration, this typically means that data will be divided into multiple sub-data, which will then be sent in parallel to multiple disks in the array to achieve fast data read and write.
[0122] Figure 5 This is a schematic diagram of an optional second target configuration of a hard disk array according to an embodiment of this application; as shown Figure 5 As shown, this architecture can use data partitioning technology, where data is divided into blocks of the same size and written to at least two disks simultaneously. Figure 5 As shown, the target data can be divided into data 1 to data 6, and each data 6 is stored on the hard disk.
[0123] This architecture offers the fastest read and write speeds because data is distributed across multiple disks, allowing read and write operations to be performed in parallel. However, the failure of any single disk will cause the entire RAID array to fail, resulting in a high risk of data loss. It is suitable for applications with high performance requirements but low data security requirements, such as temporary data processing and caching.
[0124] Figure 6 This is a schematic diagram of a second target configuration of an alternative hard disk array according to an embodiment of this application; as shown Figure 6 As shown, this architecture combines mirroring and striping technologies. The target data (data 1 to data 6) are stored on the fifth hard drive, and the image files are stored on the corresponding sixth hard drive.
[0125] This architecture offers high-performance read / write operations and data redundancy because mirroring provides data protection, while striping improves data access speed. However, disk space utilization is low because mirroring requires additional storage space. It is suitable for applications with high performance and redundancy requirements, such as high-end servers, database storage, and virtualization platforms.
[0126] The above-described embodiments of this application enable dynamic adjustment of storage configuration based on actual performance requirements and business scenarios, achieving both efficient and secure data storage and access. This capability is particularly important for environments that require handling a large number of concurrent read / write operations, high-frequency data access, or where there is a potential risk of hardware failure. It can significantly improve the overall performance and reliability of the storage system and enhance its disaster recovery capabilities.
[0127] Example 2:
[0128] Candidate decision conditions can be pre-set, and the corresponding candidate configurations are also pre-determined. Specifically, the relationship between decision conditions and configurations can be as follows:
[0129] 1. The target decision condition is: when the hard disk error frequency exceeds 5 times per minute, or the number of I / O (input / output) operation errors exceeds 30 times per second.
[0130] The target configuration is: the system will automatically initiate a RAID6-level migration to increase redundancy and fault tolerance. To prevent business disruptions during the data migration process, the system speed will be limited to 500MB / s to ensure a smooth migration.
[0131] 2. The target decision condition is: when the system detects that sequential read and write operations (such as continuous file reading) account for more than 80% of the total I / O operations within 300 consecutive seconds.
[0132] The target configuration is to switch the hard drive array to RAID 0 level and increase the stripe size to 1MB to maximize the performance of continuous data access and improve read and write speeds.
[0133] 3. The target decision condition is: when the system detects that the utilization rate of the storage space is consistently below 40% and this state continues for more than 1 hour.
[0134] The target configuration is: the system will initiate RAID array consolidation, reduce the number of RAID groups, and perform defragmentation to improve storage space utilization and clean up useless or scattered data.
[0135] It's important to note that RAID group consolidation refers to combining multiple existing RAID arrays into a larger RAID group to improve storage efficiency and resource utilization. When multiple RAID groups exist, but their independent configurations result in underutilized storage space, consolidation can reduce unused space and improve overall storage utilization. The existence of multiple RAID groups increases management complexity, especially during data backup, recovery, and troubleshooting. Consolidating RAID groups can simplify storage architecture and reduce operational costs.
[0136] In an optional implementation, consolidating RAID groups may involve analyzing the load, data distribution, and health status of existing RAID groups. A new consolidation scheme is designed based on business needs and projected load adjustments. Data migration is performed, redistributing data scattered across different RAID groups to a new, larger RAID group, which typically requires additional storage space and processing time. The configuration of the RAID controller or software RAID manager is updated to ensure data is distributed according to the new structure. The consolidation process is monitored to ensure data consistency and to promptly address any data anomalies or performance fluctuations.
[0137] It's important to note that hard drive defragmentation is a maintenance operation designed to optimize data storage layout, reduce seek time during reads and writes, and thus improve performance. In hard drive arrays, due to the wide distribution of data, random write operations can lead to data fragmentation, meaning data blocks are scattered across different locations on the hard drive instead of being stored contiguously. Excessive fragmentation reduces read and write efficiency because each I / O operation may require accessing multiple discrete locations, increasing seek time and I / O latency.
[0138] 4. The target decision condition is: when the latency of writing data to the hard disk array exceeds 100 milliseconds, this usually indicates that the system is facing complex I / O operations or bottlenecks.
[0139] The target configuration is: the system enables a strategy that coordinates RAID0 and RAID1, that is, on the one hand, RAID0 improves read and write speed, and on the other hand, RAID1 provides data redundancy and fast recovery to cope with the performance challenges of mixed read and write modes.
[0140] Example 3:
[0141] Candidate decision conditions can be descriptions of scenarios, such as determining the preset scenario of the hard disk array by referring to performance data.
[0142] 1. Unexpected random writing scenarios;
[0143] Target configuration: Since random write operations require high disk distribution for read and write operations, a RAID10 configuration is selected with a small stripe size to ensure that data can be quickly and evenly distributed across multiple disks, thereby improving random write speed and efficiency.
[0144] 2. Long-term sequential read scenarios;
[0145] Target configuration: In scenarios where a large number of continuous read operations need to be processed over a long period of time, the system switches to RAID0 and increases the stripe size. This is beneficial for high-speed reading of continuous data, reduces disk seek time, and improves read performance.
[0146] 3. Scenarios where bandwidth utilization is at 30%;
[0147] Target configuration: When the storage system's bandwidth utilization is detected to be at a low level (30%) and concurrent write operations are present, the system considers reducing the number of RAID groups to improve data processing efficiency and bandwidth utilization, and attempts to adjust the write mode from concurrent to sequential to reduce disk seek operations and optimize write performance.
[0148] 4. Multi-disk early warning scenario;
[0149] Target Configuration: When the system receives multiple warning signals from hard drives indicating potential failure risks, to ensure data security and system availability, the system immediately switches to RAID 6 configuration and initiates the array rebuild process. RAID 6 provides a higher level of data redundancy; even if two hard drives fail simultaneously, data will not be lost, providing stronger protection in multi-drive warning situations.
[0150] In an optional implementation, configuring the hard disk array as the target configuration includes: calculating the target priority of the target configuration based on the current configuration of the hard disk array; determining the target configuration time according to the target priority; and configuring the hard disk array as the target configuration within the target configuration time if the current configuration of the hard disk array is inconsistent with the target configuration.
[0151] It should be noted that the target priority can be the result of a quantitative assessment of the importance and urgency of the configuration change based on various factors. These factors may include data redundancy requirements, current I / O operation types, business continuity requirements, and resource consumption estimates. The target configuration time can be the time window within which the system plans to complete the transition of the hard disk array from its current configuration to the target configuration. The length of this time window needs to be carefully planned to ensure that the impact of the configuration change on business is minimized while achieving the new configuration as quickly as possible to improve performance or enhance data protection.
[0152] In an optional implementation, the system first analyzes the current status of the hard disk array, including the current RAID level, stripe size, read / write load patterns, etc. Then, based on this information and business requirements, it calculates the importance ranking of the target configuration. This step ensures the rationality of the configuration change and avoids unnecessary adjustments or resource waste. Based on the priority calculation results, it determines when to execute the configuration change. This may be done immediately in an emergency or scheduled during off-peak hours to minimize the impact on running services.
[0153] In an optional implementation, the target configuration can be determined by preset weights based on the target priority. If the target priority is greater than the first weight (e.g., 0.9), the urgency of the hard disk array configuration is considered "critical," with high performance and high reliability impact. If the target priority is greater than the second weight (e.g., 0.7) and less than or equal to the first weight, the urgency of the hard disk array configuration is considered "serious," with medium performance and high reliability impact. If the target priority is greater than the third weight (e.g., 0.4) and less than or equal to the second weight, the urgency of the hard disk array configuration is considered "moderate," with low performance and medium reliability impact. If the target priority is greater than the fourth weight (e.g., 0.2) and less than or equal to the third weight, the urgency of the hard disk array configuration is considered "hint," with low performance and low reliability impact. If the target priority is less than or equal to the fourth weight, the configuration task can be temporarily suspended.
[0154] Regarding urgency levels: Critical indicates the event has a very serious impact on performance and reliability, requiring immediate action to prevent data loss or system crashes. Severe indicates the event has a minor impact on performance but a significant impact on reliability; action should be taken within 15 minutes to prevent potentially serious consequences. Normal indicates the event has a low impact on both performance and reliability, but should be addressed within 1 hour for long-term system health. Alert indicates the event has a minor impact, primarily serving as a reminder; action can be taken within 24 hours depending on system resource availability.
[0155] Determining the urgency level allows you to determine the corresponding timeframe, and the target configuration time can be pre-set. For example, when the urgency level reaches "critical," the system should immediately execute recovery measures whenever the problem is detected, typically within seconds to minutes. For "critical" level events, which may pose a significant threat to data integrity, the system should execute the corresponding processing procedures within 15 minutes to mitigate risk. Tasks marked as "general," although having little impact on current operations, should be handled within one hour as preventative maintenance to maintain long-term system stability. For "hint" level events, which are usually minor changes in system state or low-priority resource requirements, they can be scheduled for processing within 24 hours without affecting high-priority tasks, providing sufficient flexibility for the system. The above configuration times (immediate execution, 15 minutes, 1 hour, 24 hours) can all be pre-set according to needs, simply by differentiating tasks of different urgency levels.
[0156] In an optional implementation, the first to fourth weights can be determined based on performance data, including but not limited to key indicators such as disk error rate, data access frequency, service level, and migration cost. Using this historical data, an adaptive curve can be constructed that automatically adjusts according to actual operating conditions, thereby determining the target priority threshold (first weight, second weight, third weight, and fourth weight) for the current moment.
[0157] In an optional implementation, the system continuously monitors the performance and health status of the hard disk array, collecting real-time data on various metrics, such as disk error rate, I / O operation type and frequency, storage utilization, and business demand level. This data is periodically aggregated to form a historical dataset. Based on this historical dataset, the system uses data analysis methods (such as time series analysis and regression analysis) to identify data trends and patterns. For example, using an ARIMA model, the system can predict the trend of disk error rate changes over a future period, which helps to prevent potential hardware failures in advance. Similarly, models can be built regarding data access frequency and other performance metrics to predict their dynamic changes.
[0158] In an optional implementation, calculating the target priority of the target configuration based on the current configuration of the hard disk array includes: determining a first parameter based on the current configuration of the hard disk array, wherein the first parameter is used to indicate the level of error in the current configuration; determining the importance of the data currently being processed by the hard disk array as a second parameter; predicting the bandwidth utilization rate used by the target configuration and determining the negative value of the bandwidth utilization rate as a third parameter; and weighted summing the first parameter, the second parameter, the third parameter and the data access frequency of the hard disk array to obtain the target priority.
[0159] It's important to note that the first parameter indicates the severity of potential problems or errors in the current configuration. This parameter directly reflects the current health level and potential risks of the system, serving as a crucial basis for assessing the necessity of configuration adjustments. The second parameter can represent the importance of the data, measuring the criticality of the data stored on the hard disk array to business operations or system performance. When determining configuration priorities, high-importance data will encourage the system to take measures to protect data integrity and availability. The third parameter can represent the predicted bandwidth utilization of the configuration, typically expressed as a negative number to reflect the positive value of bandwidth savings in weighted summation. Assessing bandwidth utilization helps the system avoid making configuration changes that might increase the burden when resources are scarce.
[0160] For example, target priority = α * first parameter (range can be 0-1) + β * data access frequency + γ * second parameter (e.g., level 1-5) - δ * migration cost (bandwidth utilization);
[0161] Based on the current configuration of the hard disk array, the system determines the order and importance of configuration adjustments by calculating the target priority of the target configuration. This process involves determining three key parameters: the error level of the current configuration, the importance of the data being processed, and the predicted bandwidth utilization of the configuration. Finally, by weighting and summing these parameters along with the data access frequency, the system derives the target priority, an indicator that helps the system intelligently select and execute the optimal configuration adjustment strategy.
[0162] In an optional implementation, the first parameter can indicate the fault risk level of the current configuration. For a given configuration, its fault risk level can also be determined, and the correspondence between the fault risk level and the configuration can be stored by setting a corresponding table or other means.
[0163] In an optional implementation, the second parameter (business level) can indicate the importance of the business to which the data currently being processed by the disk array belongs. The second parameter can be graded based on the importance of the business within the project. Critical businesses, such as online transaction systems, customer relationship management systems (CRM), and data warehouses, are typically assigned a higher business level because they are directly related to customer service quality and decision support. The level can also be determined based on the business's performance requirements, such as required IOPS, bandwidth, latency, and throughput. For example, real-time data analytics and video streaming services require low latency and high bandwidth, and should therefore have a higher business level than simple data storage or backup.
[0164] In an optional implementation, communication can be conducted with business units to understand the basic requirements of each business, including performance, reliability, cost, and legal compliance. These requirements are then translated into specific quantitative indicators, such as required IOPS, throughput, latency, redundancy levels, and fault recovery time. Based on the collected information, businesses are categorized and assigned priority levels. For example, business priority levels can be defined from 1 to 5, where 5 represents the highest priority and 1 represents the lowest priority. Level settings should consider the direct economic benefits, long-term value, potential risks, and legal compliance requirements of the business.
[0165] Example 4:
[0166] Suppose a financial trading system is running under a RAID5 configuration, but recent performance monitoring has found that the disk error rate is gradually increasing, reaching 0.05%, which exceeds the preset error rate threshold of 0.02%. This indicates that the stability and reliability of the current configuration have decreased, and the high first parameter indicates that the existing RAID configuration has a high risk of failure.
[0167] Meanwhile, considering that the transaction data stored in the system is extremely critical to business operations, the importance of the data is determined as the second parameter, and this parameter is also set to a high value, which means that the system should prioritize protecting the integrity and availability of this data when making decisions.
[0168] The system predicts that if the configuration is migrated from RAID5 to RAID6 to improve data redundancy, the expected bandwidth utilization will be 65%. Therefore, the negative value of the predicted bandwidth utilization is used as the third parameter for weighting, which reflects the positive contribution of bandwidth savings to the configuration priority calculation.
[0169] By weighting and summing the first, second, and third parameters, along with the data access frequency (assuming a high average of 100,000 I / O operations per day), the system determined that the target had a high priority. This meant that the RAID configuration upgrade to RAID 6 should be executed first. The system then switched the hard drive array configuration from RAID 5 to RAID 6, and through dynamic striping and data migration strategies, minimized the impact on existing services while significantly enhancing data redundancy and reliability.
[0170] The above-described embodiments of this application enable efficient and accurate management of storage tasks, ensuring that the system can prioritize responding to the most important needs when handling events of various natures.
[0171] When a disk failure or other event that could immediately impact data integrity and system stability is detected, the system marks it as "critical" urgency. This means the system will immediately execute predefined response measures, such as data migration, fault isolation, or redundancy rebuilding, to ensure data security and business continuity. This immediate response mechanism significantly reduces the risk of data loss and accelerates fault recovery time.
[0172] For events marked as "critical" in terms of urgency, such as a sharp performance drop or deterioration in disk health, the system requires action to be taken within 15 minutes. This ensures that in the event of a major performance bottleneck or impending failure, resources can be allocated promptly, such as switching RAID levels, adjusting stripe sizes, or initiating backup strategies, thereby quickly mitigating performance issues and reducing the risk of system downtime or data recovery delays.
[0173] Tasks marked as "general," such as storage utilization optimization, stripe size adjustment, or disk health monitoring, will be executed within one hour. These tasks typically have a minimal impact on current business operations but are crucial for long-term system efficiency and data security. By executing these tasks within a reasonable timeframe, storage configuration can be continuously optimized without disrupting normal business operations, keeping the system in optimal condition.
[0174] Tasks at the "hint" level, such as routine maintenance, performance tuning, or data cleanup, can be completed within 24 hours. These tasks contribute to long-term system maintenance and performance optimization but do not require immediate execution. Giving such tasks a relatively flexible time window allows the system to execute automatically during low-load periods, avoiding interference with real-time business operations while ensuring the continuity and effectiveness of system maintenance.
[0175] Through the above mechanisms, dynamic optimization and fault prevention of storage resources can be achieved while maintaining business continuity and high performance. This efficient resource scheduling and task priority management can significantly improve the overall performance of the storage system, reduce manual intervention by maintenance personnel, lower operating costs, and enhance data reliability and security.
[0176] In an optional implementation, configuring the hard disk array as the target configuration includes: acquiring the current performance data of the hard disk array, and isolating the target configuration if the current performance data meets the prompting conditions;
[0177] If the current performance data meets the prompting conditions, isolate the target configuration, including at least one of the following:
[0178] 1) Isolate the target configuration if the time period during which the configuration progress deviation exceeds the first deviation meets the preset period;
[0179] 2) Isolate the target configuration if the number of verification failures of the hard disk array exceeds the preset number;
[0180] 3) Isolate the target configuration if the hard disk array latency exceeds the preset latency;
[0181] 4) Isolate the target configuration if the bandwidth utilization of the hard disk array does not meet the preset range.
[0182] It should be noted that the alert conditions can be a set of predefined performance thresholds. When the actual performance data of the hard disk array reaches or exceeds these thresholds, the system will trigger specific alarms or actions. These conditions are the basis for the system to decide whether to take emergency measures, such as isolating the target configuration, to protect data or restore performance.
[0183] In an optional implementation, the system first acquires real-time performance data, such as disk error rate, read / write speed, latency, and number of checksum errors, and then compares this data with preset warning conditions. If the current performance data meets or exceeds the warning conditions, it indicates that the system faces potential performance risks or failures. In this case, the system will take measures to isolate the target configuration to prevent the configuration adjustment from having a greater impact on business operations.
[0184] In an optional implementation, a configuration progress deviation (migration progress deviation) of less than 5% is considered normal, indicating that the data migration process from one RAID level to another is proceeding as expected without significant delays. If the migration progress deviation exceeds 10% (first deviation) for three consecutive monitoring periods (preset periods), this may indicate resource contention, hardware performance degradation, or software issues, requiring immediate intervention for inspection and adjustment to avoid data migration failure or unnecessary business impact.
[0185] In an optional implementation, a verification failure rate below 0.001% indicates that the data verification mechanism in the RAID group is functioning well, and data consistency and integrity are effectively guaranteed. If a single verification task fails more than 3 times, this usually indicates a potential problem with the storage media, such as bad sectors appearing on the disk or a RAID controller failure. In this case, the system should automatically initiate troubleshooting and data recovery processes to prevent further data corruption and ensure data security.
[0186] In an optional implementation, the impact of service latency should be less than 20% of the baseline, which refers to the average latency of the system under normal conditions. This means the system should be able to maintain a relatively stable performance level, even during resource adjustments or optimizations. Once service latency increases by more than 50%, this may be a performance bottleneck caused by data migration, RAID reconstruction, or disk health issues. In this case, immediate measures should be taken, such as pausing data migration, adjusting stripe size, or increasing redundancy, to reduce latency and avoid a severe deterioration in service experience.
[0187] In optional implementations, the ideal bandwidth utilization range is 70%-90%. Too high or too low a utilization rate is detrimental to stable system operation and efficient resource utilization. If bandwidth utilization consistently exceeds 95%, it indicates the system may be overloaded, with data transmission or processing capacity reaching its limit, potentially impacting storage performance and other services dependent on storage resources. Conversely, if utilization is below 50%, resource waste may exist, indicating underutilization of storage capacity. In both cases, the policy control layer should dynamically adjust striping strategies, RAID levels, or load balancing to achieve optimal resource balance and utilization efficiency.
[0188] Through the above-described implementation methods of this application, a sophisticated monitoring and early warning mechanism, combined with intelligent dynamic strategies, automatically optimizes and adjusts the system to ensure immediate response to performance anomalies during RAID configuration adjustments, thus avoiding negative impacts on business operations. In abnormal situations, the target configuration is quickly isolated, preventing configuration changes under unstable conditions and ensuring data security, system performance stability, and maximized resource utilization. This provides robust storage support and service guarantees for various business scenarios.
[0189] In an optional implementation, during the target configuration of the hard disk array, 5% of the bandwidth can be reserved as a dedicated emergency channel to handle unexpected events such as large-scale data migration, sudden read / write spikes, or data recovery operations. This reserved bandwidth ensures that the system has sufficient resources to respond and handle problems quickly in emergencies, preventing data processing speed reduction or increased latency due to resource constraints. When the system detects a service latency increase exceeding 30% compared to normal conditions, it will automatically abort the ongoing RAID configuration migration. This is done to prevent potential instability during configuration changes from further deteriorating service performance, while giving system and operations personnel time to diagnose and resolve issues.
[0190] In an alternative implementation, if a problem occurs after configuring the hard disk array using the target configuration, the hard disk array can be rolled back.
[0191] Specifically, when an abnormal state or configuration change causes performance degradation or data consistency issues, the system automatically or manually restores to a previously known healthy or stable state. When the system automatically or manually attempts to change RAID levels, striping strategies, or data distribution modes, if the change results in significant performance degradation or system instability, the rollback mechanism will quickly activate, restoring the system to its pre-change state to ensure uninterrupted business operations. During data migration from one RAID group to another, if data loss, verification failure, or abnormal migration progress is detected, the system will immediately stop the migration and perform data recovery or rollback to the pre-migration configuration state to ensure data security. If a hard drive or RAID controller failure is detected during dynamic health monitoring, and the system attempts to replace or rebuild data, if problems arise with the new hardware or reconstruction process, the rollback mechanism will ensure that a backup hard drive or data backup is used to restore the system to its pre-failure state until the problem is completely resolved.
[0192] In an optional implementation, if problems arise during the migration process, such as data consistency verification failure or worsening disk failure, the system can immediately activate the dual-write verification mechanism. This means that all data write operations will be simultaneously recorded on both the original RAID configuration and the new RAID configuration until it is confirmed that the data is fully synchronized and consistency is guaranteed. If the new configuration is found to be unsuitable or causes additional problems, the system can seamlessly roll back to the original RAID configuration without losing any data.
[0193] In an optional implementation, if the system switches to a RAID 0 configuration with 1MB stripes due to a high percentage of sequential I / O operations, but performance subsequently fails to improve or even declines (e.g., due to an unexpected increase in random I / O), the system will automatically monitor performance changes and automatically revert to the previous RAID configuration within a certain time window (e.g., 24 hours) based on the monitoring results. This mechanism relies on continuous performance monitoring; when performance deviates from the normal range, the system will automatically initiate a rollback process, ensuring data consistency and integrity during the rollback.
[0194] In an optional implementation, when storage utilization remains low, the system initiates RAID consolidation and defragmentation to optimize storage space usage. However, if during execution, such as after RAID consolidation or defragmentation, there is a sudden surge in business demand, causing a sharp increase in storage pressure, the system will retain the original configuration settings for at least 24 hours. This means that even if a capacity reclamation strategy is implemented, the system will provide a buffer period to ensure that it can quickly roll back to the original RAID configuration if necessary to cope with a sudden increase in storage space demand.
[0195] In an optional implementation, the system enables coordinated use of RAID 0 and RAID 1 based on detected write latency to address performance challenges in mixed read / write modes. However, if the load pattern changes again, such as switching to a pure read mode, the system's built-in dynamic load balancing algorithm will adjust the RAID configuration usage ratio according to the latest load status. The system automatically detects changes in load pattern and reconfigures RAID levels as necessary to adapt to the new workload, ensuring optimal performance. This mechanism guarantees that the system maintains its most efficient operation even under extreme load changes.
[0196] Figure 7 This is a schematic diagram of an optional hard disk array configuration method according to an embodiment of this application; as shown Figure 7 As shown, the configuration method for hard disk arrays can be applied to... Figure 7 The environment within this can include: a policy control layer, a virtualized storage layer, and physical layer devices. Specifically:
[0197] The strategy control layer is responsible for driving the intelligent decision-making and response mechanisms of the entire system. At this layer, there are two key components: a data monitoring, identification, and prediction model, and a dynamic strategy engine.
[0198] The data monitoring, identification, and prediction model is responsible for collecting and analyzing real-time performance data of the hard disk array, such as IOPS, throughput, response time, SMART data (disk health metrics), and cache hit rate. Through pattern recognition technology, the model can distinguish different I / O types (sequential or random) and data block sizes, providing detailed data support for subsequent decision-making. The prediction module, based on collected historical data, uses machine learning or statistical prediction methods to predict future load trends and hard disk health status, generating adaptive curve dynamic thresholds. This provides a forward-looking perspective for real-time decision-making at the policy control layer.
[0199] The dynamic policy engine dynamically generates and executes storage policies based on the output of a data monitoring and prediction model, and a comprehensive assessment of three dimensions (first parameter, second parameter, and third parameter): fault risk level, business priority, and migration cost. Fault risk assessment helps identify potential failure points in the disk array; business priority adjusts storage configuration according to current business priorities and needs; and the migration cost dimension considers the impact of configuration changes on system performance and resources. Through decisions across these three dimensions, the dynamic policy engine intelligently selects the most suitable RAID level, stripe size, and redundancy mechanism (target configuration), ensuring that storage efficiency and data security are optimized while meeting business needs.
[0200] The virtualized storage layer acts as a bridge between the policy control layer and the physical device layer. Its primary responsibility is to execute the decisions of the policy control layer, enabling seamless migration of RAID levels, distributed object storage management, and dynamic striping policies. When the policy control layer decides to switch RAID configurations, the virtualized storage layer is responsible for the actual data reconstruction and migration process, ensuring a smooth transition from one RAID level to another while minimizing the impact on business operations. This module allows data to be distributed across multiple physical disks, supporting large-scale datasets and high-concurrency read / write demands. It enhances the overall performance and scalability of the storage system through data sharding and parallel processing. The dynamic striping engine is responsible for dynamically adjusting the stripe size based on the current workload and access patterns to optimize the efficiency of read / write operations. For example, in scenarios with intensive concurrent read / write operations, the striping engine may choose a smaller stripe size to speed up data location; while during a large number of sequential read / write operations, it may increase the stripe size to reduce seek time and improve throughput.
[0201] The physical layer devices, including RAID / SAS controllers and connected hard drives, form the hardware foundation for implementing intelligent dynamic RAID strategies. At this layer, dynamic health monitoring and early warning systems are crucial.
[0202] The dynamic health monitoring engine monitors the health status of the RAID controller and hard drives in real time, including key indicators such as controller voltage stability, hard drive bad sector rate, temperature changes, and disk rotation speed. Dynamic health monitoring not only monitors the current status but also predicts future health trends through data analysis, providing a more comprehensive basis for decision-making at the policy control layer. The physical layer monitoring system consists of the dynamic health monitoring engine and an early warning system, used to detect controller voltage fluctuations, increases in hard drive bad sector rate, etc., in real time to ensure that hardware devices are in optimal operating condition. The early warning system can predict equipment failures up to 48 hours in advance, providing system administrators with ample time for preventative maintenance or resource allocation adjustments to avoid data loss and business interruption.
[0203] In optional implementations, deep learning and multi-dimensional sensor technologies can be introduced, which can not only monitor and predict hard drive health status and I / O behavior in real time, but also proactively identify potential system-level faults, such as power fluctuations and temperature anomalies, to further optimize resource management and fault response strategies.
[0204] An environmental awareness layer is added above the physical device layer, integrating temperature sensors, humidity sensors, smoke detectors, vibration sensors, and power status monitoring modules. These sensors not only monitor the health status of hard drives and RAID controllers but also detect the data center environment and power conditions, providing a more comprehensive view of system health. Using historical performance data, environmental monitoring data, and system event logs, deep neural network models, such as convolutional neural networks (CNNs) and long short-term memory networks (LSTMs), are trained to accurately predict the impact of hard drive failures, power instability, and other environmental factors on the storage system. This model can identify complex correlations and patterns, achieving higher prediction accuracy than traditional statistical models.
[0205] When the deep learning model predicts a potential failure, the system automatically triggers a self-healing mechanism. In addition to the existing RAID level adjustment, dynamic striping, and data migration strategies, the new self-healing strategies include automatic power supply regulation, environmental condition control (such as activating the cooling system), and isolation and replacement of faulty hardware units.
[0206] The system can also learn the storage resource requirements of different time periods and business types by collecting data on business operation patterns. This allows the intelligent dynamic RAID system to adjust configurations more finely. For example, before predicting a peak period for video-on-demand, it can switch the relevant storage pools to RAID0 in advance to improve read and write speeds; when a data backup period is expected, it can automatically switch to RAID1 to enhance data security.
[0207] Example 5:
[0208] Suppose that in a large company's data center, power grid fluctuations caused by nearby construction are predicted to affect the stability of the storage system. Based on this prediction, the system automatically activates the UPS voltage stabilization function and reduces the bandwidth utilization of RAID configuration migration to minimize power dependence and potential latency impact. Simultaneously, the environmental sensing layer detects a slight increase in the server room temperature, and the system immediately activates the cooling system to prevent storage hardware performance degradation or failure due to excessive temperature.
[0209] The intelligent operations and maintenance platform received an early warning indicating that a large-scale data backup operation was expected within 48 hours, which could put pressure on storage bandwidth and hard drive wear. By learning from user behavior and business patterns, the system proactively migrated some non-critical data to cloud storage, freeing up local storage resources to prepare for the upcoming peak load. When the storage resources in the data center reached the warning threshold, the intelligent system also automatically pulled resources from cloud storage to provide additional storage space, ensuring business continuity was not affected.
[0210] This solution, through the integration of deep learning, environmental awareness, and an intelligent operation and maintenance platform, not only improves the robustness and response speed of the storage system but also enhances its resistance to environmental factors, providing a solid foundation for the efficient operation of the data center.
[0211] 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.
[0212] Embodiments of this application also provide a configuration apparatus for a hard disk array. Figure 8 This is a structural block diagram of an optional hard disk array configuration device according to an embodiment of this application, such as... Figure 8 As shown, the device includes:
[0213] The performance data acquisition module 802 is used to acquire reference performance data of the hard disk array, wherein the reference performance data is used to indicate the performance data of the hard disk array within a time period.
[0214] The decision condition determination module 804 is used to determine the candidate decision condition that the reference performance data meets among at least one candidate decision condition as the target decision condition, wherein the candidate decision condition is used to indicate the range of the performance data of the hard disk array, and each of the at least one candidate decision condition corresponds to a candidate configuration of the hard disk array.
[0215] The target configuration determination module 806 is used to determine the candidate configurations corresponding to the target decision conditions as the target configurations;
[0216] Configuration module 808 is used to configure the hard disk array to the target configuration when the current configuration of the hard disk array is inconsistent with the target configuration.
[0217] Optionally, the decision condition determination module 804 is further configured to: determine the target decision condition as the first candidate decision condition when the reference performance data indicates that the reliability index of the hard disk array does not meet the first index range; and determine the target decision condition as the second candidate decision condition when the reference performance data indicates that the efficiency index of the hard disk array does not meet the second index range.
[0218] Optionally, the decision condition determination module 804 is further configured to: have an error rate greater than a preset error rate, wherein the error rate indicates the ratio of the number of read / write errors to the total number of read / write operations per unit time; have a number of errors greater than a preset number of errors, wherein the number of errors indicates the total number of operational errors that occur in the hard disk array within a certain period; have a number of hard disks in the hard disk array that send alert messages greater than a preset number of hard disks, wherein the alert messages indicate that a hard disk has failed; have a proportion of sequential read / write operations greater than a preset proportion, wherein sequential read / write indicates that the hard disk array continuously reads or writes data; and have a latency greater than a preset latency, wherein the latency indicates the time it takes for the hard disk array to complete one write operation.
[0219] Optionally, the decision condition determination module 804 is further configured to: configure the hard disk array as a first target configuration, wherein the first target configuration is the configuration corresponding to the first candidate decision condition; send the target data to the first hard disk in the hard disk array, and establish a mirror image of the target data on the second hard disk in the hard disk array; send the target data to the third hard disk in the hard disk array, and send the verification information of the target data to the third hard disk.
[0220] Optionally, the decision condition determination module 804 is further configured to: configure the hard disk array as a second target configuration, wherein the second target configuration is the configuration corresponding to the second candidate decision condition; divide the target data into multiple sub-data according to a preset stripe, and send the multiple sub-data to the multiple hard disks included in the hard disk array one by one; divide the target data into multiple sub-data according to a preset stripe; send the multiple sub-data to the fifth hard disk included in the hard disk array one by one, and establish a mirror image of the sub-data on the sixth hard disk in the hard disk array.
[0221] Optionally, the configuration module 808 is further configured to: calculate the target priority of the target configuration based on the current configuration of the hard disk array; determine the target configuration time according to the target priority; and configure the hard disk array as the target configuration within the target configuration time if the current configuration of the hard disk array is inconsistent with the target configuration.
[0222] Optionally, the configuration module 808 is further configured to: determine a first parameter based on the current configuration of the hard disk array, wherein the first parameter is used to indicate the level of error in the current configuration; determine the importance of the data currently being processed by the hard disk array as a second parameter; predict the bandwidth utilization rate used by the target configuration and determine the negative value of the bandwidth utilization rate as a third parameter; and obtain the target priority by weighted summation of the first parameter, the second parameter, the third parameter and the data access frequency of the hard disk array.
[0223] Optionally, the configuration module 808 is further configured to: acquire the current performance data of the hard disk array, and isolate the target configuration if the current performance data meets the prompting conditions; isolate the target configuration if the time for the configuration progress deviation to be greater than the first deviation meets the preset period; isolate the target configuration if the number of verification failures of the hard disk array is greater than the preset number; isolate the target configuration if the latency of the hard disk array is greater than the preset latency; and isolate the target configuration if the bandwidth utilization of the hard disk array does not meet the preset range.
[0224] For a description of the features in the embodiment corresponding to the configuration device of the hard disk array, please refer to the relevant description in the embodiment corresponding to the configuration method of the hard disk array, which will not be repeated here.
[0225] Embodiments of this application 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 above embodiments of the hard disk array configuration method.
[0226] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above-described embodiments of the configuration method for a hard disk array.
[0227] 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.
[0228] Embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above-described embodiments of the hard disk array configuration method.
[0229] Embodiments of this application 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 above-described embodiments of the hard disk array configuration method.
[0230] 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 implementation should not be considered beyond the scope of this application.
[0231] The foregoing has provided a detailed description of a hard disk array configuration method and apparatus, storage medium, and electronic device provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A method for configuring a hard disk array, characterized in that, include: Obtain reference performance data for the hard disk array, wherein the reference performance data is used to indicate the performance data of the hard disk array within a time period; The candidate decision condition that the reference performance data meets in at least one candidate decision condition is determined as the target decision condition, wherein the candidate decision condition is used to indicate the range of the performance data of the hard disk array, and each of the at least one candidate decision condition corresponds to a candidate configuration of the hard disk array; The candidate configuration corresponding to the target decision condition is determined as the target configuration; If the current configuration of the hard disk array is inconsistent with the target configuration, the hard disk array shall be configured to the target configuration; The step of configuring the hard disk array as the target configuration includes: Calculate the target priority of the target configuration based on the current configuration of the hard disk array; The target configuration time is determined based on the target priority. If the current configuration of the hard disk array is inconsistent with the target configuration, the hard disk array will be configured to the target configuration within the target configuration time period.
2. The method according to claim 1, characterized in that, The step of determining the candidate decision condition that the reference performance data meets among at least one candidate decision condition as the target decision condition includes: If the reference performance data indicates that the reliability index of the hard disk array does not meet the first index range, the target decision condition is determined as the first candidate decision condition. If the reference performance data indicates that the efficiency index of the hard disk array does not meet the second index range, the target decision condition is determined as the second candidate decision condition.
3. The method according to claim 2, characterized in that, When the reference performance data indicates that the reliability index of the hard disk array does not meet the first index range, the target decision condition is determined as the first candidate decision condition, including at least one of the following: The error rate of the hard disk array is greater than a preset error rate, wherein the error rate is used to indicate the ratio of the number of read / write errors of the hard disk array per unit time to the total number of read / write operations; The number of errors in the hard disk array is greater than a preset number of errors, wherein the number of errors is used to indicate the total number of operational errors that occur in the hard disk array within a certain period of time; The number of hard drives sending prompt messages in the hard drive array is greater than the preset number of hard drives, wherein the prompt messages are used to indicate that a hard drive has failed; When the reference performance data indicates that the efficiency index of the hard disk array does not meet the second index range, the target decision condition is determined as the second candidate decision condition, including at least one of the following: The proportion of sequential read / write operations of the hard disk array is greater than a preset proportion, wherein the sequential read / write indicates that the hard disk array continuously reads or writes data; The latency of the hard disk array is greater than a preset latency, wherein the latency is used to indicate the time it takes for the hard disk array to complete one write operation.
4. The method according to claim 3, characterized in that, After determining the target decision condition as the first candidate decision condition, the process includes: The hard disk array is configured as a first target configuration, wherein the first target configuration is the configuration corresponding to the first candidate decision condition; After configuring the hard disk array as the first target configuration, one of the following is included: The target data is sent to the first hard drive in the hard drive array, and a mirror image of the target data is created on the second hard drive in the hard drive array; The target data is sent to the third hard drive in the hard drive array, and the verification information of the target data is also sent to the third hard drive.
5. The method according to claim 3, characterized in that, After determining the target decision condition as the second candidate decision condition, the process includes: The hard disk array is configured as a second target configuration, wherein the second target configuration is the configuration corresponding to the second candidate decision condition; After configuring the hard disk array to the second target configuration, one of the following is included: The target data is divided into multiple sub-data according to a preset stripe, and the multiple sub-data are sent one by one to the multiple hard drives contained in the hard disk array; The target data is divided into multiple sub-data according to a preset stripe; the multiple sub-data are sent one by one to the fifth hard disk in the hard disk array, and a mirror image of the sub-data is created on the sixth hard disk in the hard disk array.
6. The method according to claim 1, characterized in that, The calculation of the target priority of the target configuration based on the current configuration of the hard disk array includes: A first parameter is determined based on the current configuration of the hard disk array, wherein the first parameter is used to indicate the level of error in the current configuration; The importance of the data currently being processed by the hard disk array is determined as the second parameter; Predict the bandwidth utilization rate used by the target configuration, and determine the negative value of the bandwidth utilization rate as the third parameter; The target priority is obtained by weighted summation of the first parameter, the second parameter, the third parameter, and the data access frequency of the hard disk array.
7. The method according to any one of claims 1 to 5, characterized in that, The step of configuring the hard disk array as the target configuration includes: Obtain the current performance data of the hard disk array, and isolate the target configuration if the current performance data meets the prompt conditions; The step of isolating the target configuration when the current performance data meets the prompting conditions includes at least one of the following: If the time period during which the configuration progress deviation is greater than the first deviation meets a preset period, the target configuration is isolated. If the number of verification failures of the hard disk array exceeds a preset number, the target configuration is isolated. If the latency of the hard disk array is greater than a preset latency, the target configuration is isolated; If the bandwidth utilization of the hard disk array does not meet the preset range, the target configuration is isolated.
8. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the configuration method for a hard disk array as claimed in any one of claims 1 to 7 when executing the computer program.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the configuration method of the hard disk array as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Data recovery method for data storage device, its device, data restoration method for disk array system and its device
JP2009217408A