Multi-control array storage control method and device
By collecting and analyzing the controller indicator information stored in the multi-control array, predicting the probability of abnormality, and adjusting the cache strategy according to the load information and request type, the performance degradation caused by controller failure in the multi-control array storage is solved, and the availability of the system is improved and response speed.
Patent Information
- Application Number
- CN202411384756.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2024-12-20
- Estimated Expiration
- 2044-09-30
AI Technical Summary
In multi-control array storage, when a controller fails, the system will trigger instructions that prohibit writing cache, resulting in a significant decline in performance and affecting the normal operation of front-end services. The existing technology has failed to effectively balance system performance and reliability.
By collecting the multi-control array to store the indicator information of each controller, predict the abnormal probability of the target controller, and dynamically adjust the cache strategy according to the load information and request type of the business system to flexibly adjust the write cache strategy in case of controller failure, ensuring that Data integrity and performance.
It realizes flexible adjustment of cache policies in the event of controller failure, ensures the balance of data integrity and performance, improves the overall availability and response speed of multi-controlled array storage, and ensures the continuity and user experience of front-end services.
Smart Images

Figure CN118897657B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computers, and more specifically, to a method and device for controlling multi-control array storage. Background Art
[0002] In array storage, especially high-end multi-controller array storage, when one or several controllers fail, the storage cluster will disable the system write cache immediately or after a period of time to ensure that the remaining controllers will not cause data loss after the exception. However, disabling the write cache will cause a significant drop in cluster performance. If the write cache is not disabled, the controller will be at risk of losing data. The existing storage controller fault handling mechanism does not fully consider the balance between system performance and reliability when a fault occurs. Under the pressure of a complex business model with high load, the write cache policy adjustment caused by the controller exception is easy to affect the system performance and even affect the cluster's inability to respond to front-end business in a timely manner, thereby affecting the availability of the entire system.
[0003] In view of the problem in the related art that when a controller in a multi-controller array storage fails, the multi-controller array storage will trigger an instruction to prohibit write caching, causing the multi-controller array storage performance to drop significantly and resulting in the front-end business being unable to operate normally, no effective solution has been proposed yet. Summary of the invention
[0004] The embodiments of the present application provide a control method and device for a multi-controller array storage, so as to at least solve the problem in the related art that when a controller in the multi-controller array storage fails, the multi-controller array storage triggers an instruction to disable write cache, causing the multi-controller array storage performance to drop significantly, resulting in the inability of front-end services to operate normally.
[0005] According to an embodiment of the present application, a control method for a multi-control array storage is provided, comprising: collecting indicator information of each controller among a plurality of controllers included in the multi-control array storage; predicting an abnormal probability of a target controller based on the indicator information of each controller; receiving a data processing request sent by a business system, determining a request type corresponding to the data processing request, and determining load information of the business system; determining a target cache strategy based on the abnormal probability of the target controller, the request type, and the load information, and controlling the multi-control array storage to execute the target cache strategy.
[0006] In an exemplary embodiment, the target controller is a controller other than the first controller among the multiple controllers, the first controller is a controller that currently has an abnormality, and the abnormality probability of the target controller is predicted based on the indicator information of each controller, including: determining a target database containing historical abnormality information of the controller, wherein the target database includes multiple types of historical abnormality information; determining the first controller and abnormality information of the first controller based on the target database and the indicator information of each controller; and predicting the abnormality probability of the target controller based on the indicator information of the target controller and the abnormality information of the first controller.
[0007] In an exemplary embodiment, the first controller and the abnormal information of the first controller are determined based on the target database and the indicator information of each controller, including: for the indicator information of each controller, using the indicator information to match each type of historical abnormal information in the target database respectively to obtain a matching result; when the matching result is not empty, determining the first controller that hits the historical abnormal information, and determining the first indicator information that hits the historical abnormal information; determining the abnormal information of the first controller based on the first indicator information.
[0008] In an exemplary embodiment, predicting the abnormal probability of the target controller based on the indicator information of the target controller and the abnormal information of the first controller includes: determining at least one second indicator information of the target controller, wherein the second indicator information is indicator information associated with the abnormal information of the first controller; judging whether each second indicator information in the at least one second indicator information is abnormal based on the target database, and obtaining a target number of second indicator information with abnormalities; and determining the abnormal probability of the target controller based on the target number.
[0009] In an exemplary embodiment, predicting the abnormality probability of a target controller based on the indicator information of each controller includes: obtaining the indicator information with abnormalities within a target time period from the indicator information of each controller based on a target database to obtain at least one third indicator information, wherein the target database includes multiple types of historical abnormality information; determining the target controller based on the controller corresponding to each third indicator information in the at least one third indicator information; determining the generation time of each third indicator information, and sorting the generation time of each third indicator information in chronological order to obtain a first sequence; and determining the abnormality probability of the target controller based on the difference between adjacent generation times in the first sequence.
[0010] In an exemplary embodiment, the abnormal probability of the target controller is determined based on the difference between adjacent generation moments in the first sequence, including: when there is third indicator information corresponding to the same indicator in the at least one third indicator information and the difference is less than a preset difference, the abnormal probability is determined in a first numerical interval; when there is no third indicator information corresponding to the same indicator in the at least one third indicator information and the difference is less than the preset difference, the abnormal probability is determined in a second numerical interval, wherein the minimum value in the first numerical interval is greater than the maximum value in the second numerical interval.
[0011] In an exemplary embodiment, when there is no third indicator information corresponding to the same indicator in the at least one third indicator information, and the difference is less than the preset difference, the abnormal probability is determined in the second numerical interval, including: classifying the at least one third indicator information according to the multiple types of historical abnormal information to obtain multiple types of third indicator information; determining the number of each type of third indicator information in the multiple types of third indicator information; and determining the abnormal probability of the target controller corresponding to each type of third indicator information according to the number of each type of third indicator information and the second numerical interval.
[0012] In an exemplary embodiment, controlling the multi-controller array storage to execute the target cache strategy includes: obtaining a first cache strategy of the target controller in the current multi-controller array storage; and adjusting the first cache strategy of the target controller according to the target cache strategy to control the multi-controller array storage to execute the target cache strategy.
[0013] In an exemplary embodiment, the first cache policy of the target controller is adjusted according to the target cache policy, including: determining a target distance between the target controller and the first controller; determining a controller type of the target controller according to the target distance and a preset distance, wherein the controller type includes at least a first type and a second type; and adjusting the first cache policy of the target controller according to the controller type of the target controller and the target cache policy.
[0014] In an exemplary embodiment, determining the request type corresponding to the data processing request includes: determining a target data capacity of the data to be processed in the data processing request; determining a target processing operation to be performed based on the data processing request, wherein the target processing operation includes at least one of the following: read, write; determining a data processing order for the data processing request, wherein the data processing order includes at least one of the following: random processing, sequential processing; determining the request type based on the target data capacity, the target processing operation and the data processing order.
[0015] In an exemplary embodiment, determining the load information of the business system includes: collecting indicator information of the business system based on preset indicators, wherein the business system is a system that generates data processing requests based on user requests, and the preset indicators include at least one of the following: the number of read and write operations performed per second, bandwidth information, CPU occupancy, and request response delay; determining the load information of the business system based on the indicator information of the business system.
[0016] In an exemplary embodiment, a target cache strategy is determined based on the abnormal probability of the target controller, the request type and the load information, including: determining a target probability value based on the request type and the load information; when the abnormal probability of the target controller is greater than the target probability value, determining a first strategy as the target cache strategy, wherein the first strategy is a strategy for prohibiting data from being written to the cache; when the abnormal probability of the target controller is less than or equal to the target probability value, determining a second strategy as the target cache strategy, wherein the second strategy is a strategy for writing data to the cache, and then writing the data to the multi-control array storage through the cache.
[0017] In an exemplary embodiment, a target probability value is determined based on the request type and the load information, including: when the indicator value of each preset indicator in the load information is greater than the preset value and the request type is the third type, the target probability value is determined within a numerical range of a third numerical interval, wherein the third type represents a request type in which the target data capacity is greater than the preset data capacity, or the target processing operation is write, or the data processing order is random processing; when the indicator value of any preset indicator in the load information is less than or equal to the preset value and the request type is not the third type, the target probability value is determined within a numerical range of a fourth numerical interval, wherein the minimum value in the third numerical interval is greater than the maximum value in the fourth numerical interval.
[0018] In an exemplary embodiment, after determining the target cache strategy based on the abnormal probability of the target controller, the request type and the load information, the method further includes: receiving a target file, and adjusting the target probability value based on parameter information in the target file to obtain an adjusted target probability value; adjusting the target cache strategy based on the adjusted target probability value and the abnormal probability of the target controller to obtain an adjusted target cache strategy; and controlling the multi-control array storage to execute the adjusted target cache strategy.
[0019] In an exemplary embodiment, before receiving the target file, the method further includes: receiving target parameter information input by the target object, wherein the target parameter information includes at least one of the following: a target probability value, a target time period; writing the target parameter information into the target file, and writing the target file into a parameter module, wherein the parameter module is connected to the multi-control array storage via a serial port; and sending the target file from the parameter module to the multi-control array storage via the serial port.
[0020] In an exemplary embodiment, the indicator information includes at least one of the following: the working status of the controller, the connection status of the controller, the physical status of the controller, and the pressure status of the controller. The physical status includes at least one of the following: power status, temperature, and fan operation status. The pressure status includes at least one of the following: load information, amount of data processed, and number of requests.
[0021] According to another embodiment of the present application, a control device for a multi-control array storage is provided, comprising: a collection unit, used to collect indicator information of each controller among a plurality of controllers included in the multi-control array storage; a prediction unit, used to predict the abnormal probability of a target controller based on the indicator information of each controller; a determination unit, used to receive a data processing request sent by a business system, determine a request type corresponding to the data processing request, and determine load information of the business system; a first control unit, used to determine a target cache strategy based on the abnormal probability of the target controller, the request type and the load information, and control the multi-control array storage to execute the target cache strategy.
[0022] Furthermore, the target controller is other controllers among the multiple controllers except the first controller, the first controller is the controller that currently has an abnormality, and the prediction unit includes: a first determination subunit, used to determine a target database containing historical abnormality information of the controller, wherein the target database includes multiple types of historical abnormality information; a second determination subunit, used to determine the first controller and abnormality information of the first controller based on the target database and indicator information of each controller; a prediction subunit, used to predict the abnormality probability of the target controller based on the indicator information of the target controller and the abnormality information of the first controller.
[0023] Furthermore, the second determination subunit includes: a matching module, which is used to match the indicator information of each controller with each type of historical abnormal information in the target database using the indicator information to obtain a matching result; a first determination module, which is used to determine the first controller that hits the historical abnormal information and determine the first indicator information that hits the historical abnormal information when the matching result is not empty; and a second determination module, which is used to determine the abnormal information of the first controller based on the first indicator information.
[0024] Furthermore, the prediction subunit includes: a third determination module, used to determine at least one second indicator information of the target controller, wherein the second indicator information is indicator information that is associated with abnormal information of the first controller; a judgment module, used to judge whether each second indicator information in the at least one second indicator information is abnormal based on the target database, and obtain a target number of second indicator information with abnormalities; and a fourth determination module, used to determine the abnormal probability of the target controller based on the target number.
[0025] Further, the prediction unit includes: a first acquisition sub-unit, used to acquire indicator information of abnormalities within a target time period from the indicator information of each controller according to a target database, and obtain at least one third indicator information, wherein the target database includes multiple types of historical abnormality information; a third determination sub-unit, used to determine the target controller according to the controller corresponding to each third indicator information in the at least one third indicator information; a sorting sub-unit, used to determine the generation time of each third indicator information, and sort the generation time of each third indicator information in order to obtain a first sequence; a fourth determination sub-unit, used to determine the abnormal probability of the target controller based on the difference between adjacent generation times in the first sequence.
[0026] Further, the fourth determination subunit includes: a fifth determination module, used to determine the abnormal probability in a first numerical interval when there is third indicator information corresponding to the same indicator in the at least one third indicator information and the difference is less than a preset difference; a sixth determination module, used to determine the abnormal probability in a second numerical interval when there is no third indicator information corresponding to the same indicator in the at least one third indicator information and the difference is less than the preset difference, wherein the minimum value in the first numerical interval is greater than the maximum value in the second numerical interval.
[0027] Furthermore, the sixth determination module includes: a classification submodule, used to classify the at least one third indicator information according to the multiple types of the historical abnormal information to obtain multiple types of third indicator information; a first determination submodule, used to determine the number of each type of third indicator information in the multiple types of third indicator information; and a second determination submodule, used to determine the abnormal probability of the target controller corresponding to each type of third indicator information based on the number of each type of third indicator information and the second numerical range.
[0028] Furthermore, the first control unit includes: a second acquisition subunit, used to acquire the first cache strategy of the target controller in the current multi-controller array storage; an adjustment subunit, used to adjust the first cache strategy of the target controller according to the target cache strategy to control the multi-controller array storage to execute the target cache strategy.
[0029] Furthermore, the adjustment subunit includes: a seventh determination module, used to determine the target distance between the target controller and the first controller; an eighth determination module, used to determine the controller type of the target controller based on the target distance and the preset distance, wherein the controller type includes at least: a first type, a second type; an adjustment module, used to adjust the first cache strategy of the target controller based on the controller type of the target controller and the target cache strategy.
[0030] Further, the determination unit includes: a fifth determination subunit, used to determine the target data capacity of the data to be processed in the data processing request; a sixth determination subunit, used to determine the target processing operation to be executed based on the data processing request, wherein the target processing operation includes at least one of the following: read, write; a seventh determination subunit, used to determine the data processing order of the data processing request, wherein the data processing order includes at least one of the following: random processing, sequential processing; an eighth determination subunit, used to determine the request type based on the target data capacity, the target processing operation and the data processing order.
[0031] Furthermore, the determination unit includes: a collection subunit, used to collect indicator information of the business system based on preset indicators, wherein the business system is a system that generates data processing requests based on user requests, and the preset indicators include at least one of the following: the number of read and write operations performed per second, bandwidth information, CPU occupancy, and request response delay; a ninth determination subunit, used to determine the load information of the business system based on the indicator information of the business system.
[0032] Further, the first control unit includes: a tenth determination subunit, used to determine a target probability value based on the request type and the load information; an eleventh determination subunit, used to determine a first strategy as the target cache strategy when the abnormal probability of the target controller is greater than the target probability value, wherein the first strategy is a strategy for prohibiting data from being written to the cache; a twelfth determination subunit, used to determine a second strategy as the target cache strategy when the abnormal probability of the target controller is less than or equal to the target probability value, wherein the second strategy is a strategy for writing data to the cache and then writing the data to the multi-control array storage through the cache.
[0033] Further, the tenth determination subunit includes: a ninth determination module, used to determine the target probability value within a numerical range of a third numerical interval when the indicator value of each preset indicator in the load information is greater than the preset value and the request type is of the third type, wherein the third type represents a request type in which the target data capacity is greater than the preset data capacity, or the target processing operation is write, or the data processing order is random processing; a tenth determination module, used to determine the target probability value within a numerical range of a fourth numerical interval when the indicator value of any preset indicator in the load information is less than or equal to the preset value and the request type is not of the third type, wherein the minimum value in the third numerical interval is greater than the maximum value in the fourth numerical interval.
[0034] Furthermore, the device also includes: a first receiving unit, which is used to receive a target file after determining a target cache strategy based on the abnormal probability of the target controller, the request type and the load information, and adjust the target probability value based on the parameter information in the target file to obtain an adjusted target probability value; an adjusting unit, which is used to adjust the target cache strategy based on the adjusted target probability value and the abnormal probability of the target controller to obtain an adjusted target cache strategy; and a second control unit, which is used to control the multi-control array storage to execute the adjusted target cache strategy.
[0035] Furthermore, the device also includes: a second receiving unit, used to receive target parameter information input by the target object before receiving the target file, wherein the target parameter information includes at least one of the following: a target probability value, a target time period; a writing unit, used to write the target parameter information into the target file, and write the target file into a parameter module, wherein the parameter module is connected to the multi-control array storage via a serial port; and a sending unit, used to send the target file from the parameter module to the multi-control array storage via the serial port.
[0036] Furthermore, the indicator information includes at least one of the following: the working status of the controller, the connection status of the controller, the physical status of the controller, and the pressure status of the controller. The physical status includes at least one of the following: power status, temperature, and fan operation status. The pressure status includes at least one of the following: load information, amount of data processed, and number of requests.
[0037] According to another embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when run.
[0038] According to another embodiment of the present application, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0039] According to another embodiment of the present application, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0040] Through the present application, by collecting the indicator information of each controller in the multi-controller array storage, the current state of the controller can be reflected in time, the target controller that needs to adjust the cache strategy can be determined, and the abnormal probability of the target controller can be predicted. Then, by analyzing the request type and the load information of the business system, the urgency of the current business needs and the complexity of data processing can be evaluated, so as to make an intelligent decision on the target cache strategy according to the predicted abnormal probability, request type and load information of the target controller, and then the multi-controller array storage can be controlled to execute the target cache strategy according to the target cache strategy, so as to achieve the technical purpose of being able to flexibly adjust the cache strategy when the controller fails, which not only ensures the integrity of the data but also minimizes the performance loss. Therefore, the problem in the related technology that when a controller in the multi-controller array storage fails, the multi-controller array storage will trigger an instruction to prohibit writing the cache, which greatly reduces the performance of the multi-controller array storage and makes it impossible for the front-end business to operate normally can be solved, so as to improve the overall availability and response speed of the multi-controller array storage under abnormal conditions, and ensure the continuity of the front-end business and the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] Figure 1 It is a hardware structure block diagram of a server device of a multi-control array storage control method according to an embodiment of the present application;
[0042] Figure 2 is a flow chart of a control method for multi-control array storage according to an embodiment of the present application;
[0043] Figure 3 is a functional topology diagram of a control method for multi-control array storage according to an embodiment of the present application;
[0044] Figure 4 It is a structural block diagram of a control device for multi-control array storage according to an embodiment of the present application. DETAILED DESCRIPTION
[0045] The embodiments of the present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0046] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0047] The method embodiments provided in the embodiments of the present application can be executed in a server device or a similar computing device. Taking running on a server device as an example, Figure 1 1 is a hardware structure block diagram of a server device of a multi-control array storage control method according to an embodiment of the present application. Figure 1 As shown, the server device may include one or more ( Figure 1 Only one is shown in the figure) a processor 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data, wherein the above-mentioned server device may also include a transmission device 106 and an input / output device 108 for communication functions. It can be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the above server device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.
[0048] The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the control method stored in the multi-control array in the embodiment of the present application. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, to implement the above method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the server device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0049] The transmission device 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the server device. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, referred to as NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0050] In this embodiment, a control method for multi-control array storage is provided. Figure 2 is a flow chart of a control method for multi-control array storage according to an embodiment of the present application. Figure 2 As shown, the process includes the following steps:
[0051] Step S202: collecting indicator information of each controller in a plurality of controllers stored in the multi-control array.
[0052] In the first embodiment, in order to monitor the status of multiple controllers in real time, it is necessary to collect and monitor the operating status and performance parameters of each controller in a multi-controller (multi-controller) array storage system. Multi-controller array storage is usually used in enterprise or data center environments to provide high availability, high performance and large-scale data storage capabilities. By distributing disk read and write loads among multiple controllers, load balancing of multi-controller array storage is achieved.
[0053] The collected indicator information includes but is not limited to: on-site status, operating status, pressure status, temperature information, fault records, health status and other information.
[0054] Step S204: predicting the abnormal probability of the target controller according to the indicator information of each controller.
[0055] In the first embodiment, it is necessary to predict the target controller that may fail in the future and the probability of failure of the target controller based on historical data and the current indicator information of each controller, that is, the above-mentioned abnormal probability. The level of abnormal probability directly affects the system's choice of cache strategy. A high probability may trigger a more conservative cache strategy (for example, write-through) to ensure data security, while a low probability may maintain a high-performance cache strategy (for example, write-back) to optimize system performance.
[0056] The target controller refers to the controller that needs to adjust the cache policy after prediction analysis. In a multi-controller system, each controller may be a prediction target, and the prediction results can be used to guide the maintenance, replacement or cache policy adjustment of the controller after failure.
[0057] By collecting and analyzing the operating indicators of all controllers in the storage system and estimating the abnormal probability of the target controller, decisions can be made in advance, cache policies can be adjusted, and system performance and data reliability can be balanced. This approach helps to minimize the impact on business when a failure occurs and improve the overall availability and response speed of the system.
[0058] Step S206, receiving a data processing request sent by the business system, determining a request type corresponding to the data processing request, and determining load information of the business system.
[0059] In modern information technology systems, especially those involving big data, cloud computing, or high-performance computing, business systems frequently send various types of data processing requests to data processing or storage systems (e.g., the multi-controller array storage mentioned above), such as reading data, writing data, updating data, deleting data, etc. In order to effectively process these data processing requests and optimize the overall performance of the system, the multi-controller array storage needs to be able to intelligently analyze and respond to these requests.
[0060] In the first embodiment of the present invention, the business system may be any front-end application that generates or requires data processing, such as a trading system, a database query system, a user interface operation, etc. The types of data processing requests may include operations such as read, write, update, and delete. The request type is determined in order to be able to execute the corresponding data processing logic in a targeted manner. Load information refers to the operating status of the business system when sending a data processing request, including but not limited to: system resource usage (for example, CPU usage, memory usage, disk I / O, etc.), the number of requests currently being processed, the length of the waiting queue, etc.
[0061] By receiving and parsing data processing requests sent by business systems, identifying request types, and evaluating the load of business systems, it is possible to flexibly adjust its processing strategy to ensure that it can serve the business system efficiently and stably under any circumstances, while improving system performance and reliability.
[0062] Step S208, determining a target cache strategy according to the abnormal probability, request type and load information of the target controller, and controlling the multi-control array storage to execute the target cache strategy.
[0063] In the first embodiment, a target cache strategy suitable for the current situation needs to be determined based on the above three factors (abnormal probability, request type, and load information). For example, if a high abnormal probability is detected and the system load is high, the Write-Through mode may be selected to ensure that the data is immediately written to the non-volatile storage to improve data security; if the abnormal probability is low and the load pressure is not large, the Write-Back mode may be selected to temporarily store the data in the cache to improve performance.
[0064] It should be noted that the target cache policy may include the cache policy of each controller in the multi-controller array storage, or the cache policy of each target controller, wherein the cache policies of different controllers may be the same cache policy or different cache policies.
[0065] By collecting the indicator information of each controller in the multi-controller array storage, the current state of the controller can be reflected in time, the target controller that needs to adjust the cache strategy can be determined, and the abnormal probability of the target controller can be predicted. Then, by analyzing the request type and the load information of the business system, the urgency of the current business needs and the complexity of data processing can be evaluated, so as to flexibly decide the target cache strategy according to the predicted abnormal probability, request type and load information of the target controller, and then control the multi-controller array storage to execute the target cache strategy according to the target cache strategy, so as to achieve the technical purpose of being able to flexibly adjust the cache strategy when the controller fails, which not only ensures the integrity of the data, but also minimizes the performance loss as much as possible, improves the overall availability and response speed of the multi-controller array storage in abnormal situations, ensures the continuity of the front-end business and the user experience, and solves the problem in the related technology that when a controller in the multi-controller array storage fails, the multi-controller array storage will trigger the instruction to prohibit the write cache, which greatly reduces the performance of the multi-controller array storage and makes the front-end business unable to operate normally.
[0066] The execution subject of the above steps may be a server, a terminal or a storage system (or platform), etc., but is not limited thereto. The control method of the multi-control array storage provided in the embodiment of the present application can be applied to a centralized storage platform, which is oriented to the key core business systems of various enterprises. The centralized storage platform that implements the above-mentioned control method of the multi-control array storage has the capabilities of being safe, reliable, stable and efficient, meeting the requirements of various high-end applications such as core databases, and providing high reliability and high performance.
[0067] The execution order of step S102 and step S104 is interchangeable, that is, step S104 may be executed first, and then step S102.
[0068] Optionally, in the control method of multi-control array storage provided in an embodiment of the present application, the target controller is other controllers among the multiple controllers except the first controller, the first controller is the controller that currently has an abnormality, and the abnormality probability of the target controller is predicted based on the indicator information of each controller, including: determining a target database containing historical abnormality information of the controller, wherein the target database includes multiple types of historical abnormality information; determining the first controller and the abnormality information of the first controller based on the target database and the indicator information of each controller; and predicting the abnormality probability of the target controller based on the indicator information of the target controller and the abnormality information of the first controller.
[0069] In the first embodiment, the abnormal probability of the target controller can be predicted by analyzing historical data and current indicator information of each controller.
[0070] In an optional embodiment, the first controller that has an abnormality can be determined based on the target database, so as to determine the abnormal information of the first controller based on the historical abnormal information in the target database and the indicator information of the current first controller (for example, temperature, system ambient temperature, etc.). For example, if the abnormal temperature of the first controller causes a shutdown, the module will check the current system ambient temperature and other related indicators to confirm whether it is a high-temperature shutdown, and extract all abnormal historical records of high-temperature shutdowns from the target database.
[0071] The target database refers to the abnormal information database used for comparison and analysis in the current controller abnormality situation. It stores various types of controller abnormality information, including but not limited to: controller temperature abnormality, power supply abnormality, hardware failure, etc. For example, when encountering a high temperature downtime situation, the target database will contain all historical abnormality information related to high temperature.
[0072] Then, in addition to the first controller, there may be controllers affected by similar anomalies in the multi-control array storage, namely the target controller mentioned above. After determining the abnormal information of the first controller, it will be analyzed in combination with the current indicator information (for example, temperature, pressure, etc.) of the target controller, and the historical abnormal information in the target database will be used to predict the probability of abnormalities in the target controller in the future.
[0073] By determining the first controller and the target controller, the abnormal risk of the controller can be analyzed and predicted more accurately, providing a key basis for the decision-making of the CSA management module, and then dynamically adjusting the write cache strategy to find a better balance between storage system performance and reliability.
[0074] Optionally, in the control method for multi-control array storage provided in an embodiment of the present application, determining the first controller and the abnormal information of the first controller based on the target database and the indicator information of each controller includes: for the indicator information of each controller, using the indicator information to match each type of historical abnormal information in the target database respectively to obtain a matching result; when the matching result is not empty, determining the first controller that hits the historical abnormal information, and determining the first indicator information that hits the historical abnormal information; and determining the abnormal information of the first controller based on the first indicator information.
[0075] In an optional embodiment, the real-time index information of each controller can be compared with the historical abnormal information stored in the target database, and the current index information of each controller can be identified by comparison to be similar or identical to the historical abnormal information, thereby obtaining a matching result and obtaining a possible abnormal pattern. From the matching results, find at least one controller (i.e., the first controller mentioned above) that is similar to the historical abnormal information and at least one or a group of indicators of the first controller (i.e., the first index information mentioned above). For example, if the high temperature shutdown in the historical abnormal information matches the temperature index of the current controller, then it can be determined that the controller has encountered a high temperature shutdown abnormality.
[0076] Optionally, in the control method for multi-control array storage provided in an embodiment of the present application, predicting the abnormal probability of the target controller based on the indicator information of the target controller and the abnormal information of the first controller includes: determining at least one second indicator information of the target controller, wherein the second indicator information is indicator information that has an associated relationship with the abnormal information of the first controller; judging whether each second indicator information in the at least one second indicator information has an abnormality based on a target database, and obtaining a target number of second indicator information with abnormalities; and determining the abnormal probability of the target controller based on the target number.
[0077] In the first embodiment, when a controller (i.e., the first controller) is detected to be abnormal (for example, high temperature shutdown), the second indicator information related to the abnormal information can be found based on the abnormal information corresponding to the abnormality. For example, if the abnormal information of the first controller is high temperature shutdown, the second indicator information may include but is not limited to the current system ambient temperature, the state of the refrigeration module associated with the first controller, and the temperature state of other controllers. The second indicator information is directly or indirectly related to the abnormal information of the first controller because they may affect the working state and failure risk of other controllers.
[0078] Then, referring to the historical data and failure modes stored in the target database, it is determined whether the second indicator information of the remaining controllers (i.e., the target controllers mentioned above) in the multi-control array storage is abnormal, and the number of the second indicator information with abnormalities is counted. For example, if the current system ambient temperature is abnormal and the cooling module status of the target controller is abnormal, then the target number of the second indicator information with abnormalities is 2 (ambient temperature and cooling module status).
[0079] Finally, the abnormal probability of the target controller is determined based on the target number of abnormal second indicator information. For example, if the target number of abnormal second indicator information is large (for example, both the ambient temperature and the cooling module status are abnormal), the probability of determining that the target controller is continuously abnormal will be evaluated as high (for example, 80%); if the target number is moderate (for example, only the ambient temperature is abnormal, and the cooling module status is normal), the abnormal probability is evaluated as medium (for example, 50%); if the target number is small or there is no abnormal indicator information, the abnormal probability is evaluated as low (for example, 20% or lower).
[0080] By judging the abnormal probability of the target controller based on the second indicator information related to the abnormal information of the first controller, it is ensured that when analyzing the controller abnormality, the environmental and system factors related to the abnormality can be fully considered, so as to more accurately evaluate the abnormal risks of other controllers and make more reasonable cache strategy adjustment decisions.
[0081] Optionally, in the control method for multi-control array storage provided in an embodiment of the present application, predicting the abnormal probability of the target controller based on the indicator information of each controller includes: obtaining the indicator information with abnormalities within the target time period from the indicator information of each controller according to the target database to obtain at least one third indicator information, wherein the target database includes multiple types of historical abnormal information; determining the target controller based on the controller corresponding to each third indicator information in the at least one third indicator information; determining the generation time of each third indicator information, and sorting the generation time of each third indicator information in order to obtain a first sequence; and determining the abnormal probability of the target controller based on the difference between adjacent generation times in the first sequence.
[0082] In an optional embodiment, all third indicator information similar to the historical abnormal information within a target time period (for example, within a short time T, T can be 1 minute, 10 minutes, 1 hour, etc., and is not specifically limited in this embodiment 1) can be screened out from a target database containing a variety of historical abnormal information, that is, at least one third indicator information mentioned above, and at least one target controller can be determined based on the controller corresponding to each piece of third indicator information.
[0083] Then, the generation time of each third indicator information is sorted in chronological order to form a first sequence, and the difference between the generation times of adjacent abnormal indicator information is calculated. If the abnormalities with the same cause are detected continuously within the target time period, the time difference will be relatively small, which indicates that the abnormalities may have a certain continuity and regularity, so a higher abnormal probability is determined. On the contrary, if the abnormal causes are different, even if they appear continuously within the target time period, it is considered that such abnormalities are inconsistent, so a lower abnormal probability is determined.
[0084] By analyzing the time distribution and causes of historical abnormal data, the abnormal risk of the target controller can be predicted to dynamically adjust the write cache strategy and balance system performance and data reliability. This method uses the statistical characteristics of historical data to help more accurately assess the possibility of subsequent abnormalities when abnormal situations occur, thereby making more reasonable cache strategy choices.
[0085] Optionally, in the control method for multi-control array storage provided in an embodiment of the present application, the abnormal probability of the target controller is determined based on the difference between adjacent generation moments in the first sequence, including: when there is third indicator information corresponding to the same indicator in at least one third indicator information and the difference is less than a preset difference, the abnormal probability is determined in a first numerical interval; when there is no third indicator information corresponding to the same indicator in at least one third indicator information and the difference is less than a preset difference, the abnormal probability is determined in a second numerical interval, wherein the minimum value in the first numerical interval is greater than the maximum value in the second numerical interval.
[0086] In an optional embodiment, when the difference in the generation time of adjacent third indicator information in at least one third indicator information is less than a preset difference, it is confirmed that continuous abnormalities occur in a short period of time. If, while continuous abnormalities occur, indicator data of the same indicator exists in at least one third indicator information, it is considered that continuous and identical abnormal information occurs in the target controller, thereby determining that a higher probability of abnormality exists in the target controller in a first numerical interval with a higher value (for example, 80%). The first numerical interval may be [0.8, 0.95].
[0087] When the difference in generation time of adjacent third indicator information in at least one third indicator information is less than the preset difference, but there is no indicator data of the same indicator in at least one third indicator information, it is considered that only continuous abnormal information appears in the target controller, and a lower abnormal probability (for example, 60%) is determined in the second numerical interval with a lower value. The second numerical interval can be [0.6, 0.8].
[0088] Optionally, in the control method for multi-control array storage provided in an embodiment of the present application, when there is no third indicator information corresponding to the same indicator in at least one third indicator information and the difference is less than a preset difference, the abnormal probability is determined in the second numerical interval, including: classifying at least one third indicator information according to multiple types of historical abnormal information to obtain multiple types of third indicator information; determining the number of each type of third indicator information in the multiple types of third indicator information; and determining the abnormal probability of the target controller corresponding to each type of third indicator information according to the number of each type of third indicator information and the second numerical interval.
[0089] In the first embodiment, a prediction may be made based on the abnormality type of the detected abnormality indicator information, thereby determining the probability that the target controller may be abnormal.
[0090] In an optional embodiment, the determined at least one piece of third indicator information is classified according to multiple types of historical abnormal information. The purpose of the classification is to identify whether there is a similarity or association relationship between the currently detected third indicator information.
[0091] Then, after classification, the number or quantity of occurrences of each type of third indicator information is counted to evaluate the continuity and similarity of the current abnormal situation. For example, if the type information of the multi-control array storage temperature abnormality appears frequently in the current third indicator information, then this may indicate that the system temperature abnormality is a continuous problem, that is, a potential hidden danger in the multi-control array storage, thereby determining that the abnormal probability of the target controller failing in the future is high.
[0092] By classifying at least one piece of third indicator information, it is possible to quantify the similarity of the current abnormal indicator information and predict the potential risk of the target controller in the system, thereby dynamically adjusting the write cache strategy to find a better balance between system performance and data reliability.
[0093] Optionally, in the control method of the multi-controller array storage provided in the embodiment of the present application, controlling the multi-controller array storage to execute the target cache strategy includes: obtaining a first cache strategy of a target controller in the current multi-controller array storage; and adjusting the first cache strategy of the target controller according to the target cache strategy to control the multi-controller array storage to execute the target cache strategy.
[0094] In an optional embodiment, the cache policy currently being executed by the target controller can be obtained. Generally, there are two main modes of cache policies in storage systems: Write Back mode and Write Through mode. In Write Back mode, data is first written to the cache and then asynchronously written to the disk, which can improve write performance but has a higher risk of data loss; in Write Through mode, data is prohibited from being written to the cache and is directly written to the cache, ensuring data reliability, but with lower write performance.
[0095] Then, the first cache policy of the target controller is adjusted according to the target cache policy, wherein the cache policy that needs to be adjusted may be the first cache policy of each target controller, or the first cache policies of any several target controllers. For example, the write-back mode is switched to the write-through mode to enhance data reliability, or the write-back mode is maintained to optimize performance when the risk is judged to be low.
[0096] Finally, the adjusted target cache policy is applied to the entire multi-controller array storage to ensure that all target controllers execute according to the adjusted target cache policy, thereby achieving a balance between performance and reliability.
[0097] By adjusting the cache strategy of the target controller, the risk of system performance degradation or data loss due to controller abnormalities can be avoided, while ensuring that the system can adapt to various business pressures and improve overall availability and responsiveness.
[0098] Optionally, in the control method of the multi-control array storage provided in the embodiment of the present application, adjusting the first cache strategy of the target controller according to the target cache strategy includes: determining a target distance between the target controller and the first controller; determining a controller type of the target controller according to the target distance and a preset distance, wherein the controller type includes at least a first type and a second type; and adjusting the first cache strategy of the target controller according to the controller type of the target controller and the target cache strategy.
[0099] In an optional embodiment, the physical or logical distance between two controllers may be determined. In multi-controller array storage, the distance between controllers may reflect the degree of association between them in the multi-controller array storage structure, such as the impact distance of high temperature downtime, the length of the data access path, the signal transmission delay, etc. The purpose of determining the target distance is to evaluate the extent to which the target controller may be affected by the failure of the first controller. The closer the distance between the controllers, the greater the possibility that the controller will be affected and cause failure.
[0100] Then, the target controller is classified according to the preset distance and the target distance to obtain a first type controller and a second type controller. The preset distance represents a standard distance for distinguishing controller types, which can be adjusted according to the design, performance requirements, and reliability requirements of the storage system. For example, if the target distance is less than the preset distance, it is determined that the target controller belongs to the first type, which means that it may be more susceptible to the failure of the first controller. If the target distance is greater than or equal to the preset distance, it is determined that the target controller belongs to the second type, which means that it is less or not affected by the failure of the first controller.
[0101] Finally, the cache strategy that the target controller should adopt is determined based on whether the target controller is susceptible to the failure of the first controller and the current system's requirements for the cache strategy. For example, if the target controller is of the first type and the target cache strategy points to high reliability, then the first cache strategy may be adjusted from a high-performance write-back mode to a write-through mode to improve data security; if the target controller is of the second type and the target cache strategy points to high performance, then the first cache strategy may maintain the original write-back mode to maintain system performance.
[0102] By evaluating the correlation between controllers and the current needs of the system, the cache strategy is dynamically adjusted to balance system performance and data reliability. In particular, when some controllers fail, the cache strategy of other controllers can be intelligently adjusted to achieve a good operating state.
[0103] Optionally, in the control method of multi-control array storage provided in an embodiment of the present application, determining the request type corresponding to the data processing request includes: determining a target data capacity of the data to be processed in the data processing request; determining a target processing operation to be performed based on the data processing request, wherein the target processing operation includes at least one of the following: read and write; determining a data processing order of the data processing request, wherein the data processing order includes at least one of the following: random processing and sequential processing; determining the request type based on the target data capacity, the target processing operation and the data processing order.
[0104] In an optional embodiment, the data processing request needs to be analyzed to identify the amount of data that needs to be processed (read or written) in the data processing request, that is, the target data capacity mentioned above. For example, a read request may require reading the first 1MB of a specific file, or a write request may contain 2GB of data. The determination of the target data capacity is crucial for the subsequent data processing strategy formulation because it affects the efficiency and required resources of data processing.
[0105] Then, it is necessary to determine the target processing operation of the data processing request, that is, whether it requires a read operation or a write operation, or a combination of the two. A read operation refers to reading data from a storage device, while a write operation involves writing or updating data to a storage device. Determining the processing operation helps the system allocate the correct processing resources and paths for the request.
[0106] Secondly, it is necessary to determine the data processing order, which refers to the data access pattern, whether it is random access or sequential access. Random processing means that there is no specific order for data access. For example, in a database query, data in different locations may need to be accessed randomly. Sequential processing involves continuous access to data in a specific order (for example, time order, file order, etc.). For example, in video streaming, data is usually read sequentially. Identifying the data processing order helps optimize data access patterns and improve processing efficiency.
[0107] Finally, data processing requests are classified according to target data capacity, target processing operations, and data processing order to determine the specific request type. Request types include but are not limited to: small file random reads, large file sequential writes, database query reads and writes, etc. Determining the request type is critical for the system because it directly affects the optimization strategy for data processing, such as caching strategy, I / O scheduling, data redundancy, etc. By accurately identifying the request type, the system can process data requests more efficiently while finding a balance between ensuring data security and system performance.
[0108] By analyzing data processing requests and optimizing the data processing flow according to the specific characteristics of the requests (e.g., data capacity, processing operations, and processing order), the overall system performance and data security can be improved. This allows the system to adapt to different types of data access modes and ensure system stability and response speed under high load and complex business scenarios.
[0109] Optionally, in the control method of multi-control array storage provided in an embodiment of the present application, determining the load information of the business system includes: collecting indicator information of the business system according to preset indicators, wherein the business system is a system that generates data processing requests based on user requests, and the preset indicators include at least one of the following: the number of read and write operations performed per second, bandwidth information, CPU occupancy, and request response delay; determining the load information of the business system according to the indicator information of the business system.
[0110] In an optional embodiment, the business system refers to a system that receives user input (e.g., query, data upload, download, etc. requests), performs corresponding data processing operations (e.g., data retrieval, data calculation, data storage, etc.) based on these inputs, and then returns the processing results to the user. This can be any type of system, such as a database system, a file system, a network application server, etc.
[0111] In order to adjust the controller's cache strategy, it is necessary to determine the current working intensity or busyness of the business system based on pre-defined key performance indicators (i.e., the above-mentioned preset indicators) that can reflect the operating status of the business system. The preset indicators at least include: the number of read and write operations per second (IOPS, Input / Output Operations Per Second), bandwidth information (i.e., data transmission rate, usually in MB / s or GB / s), CPU occupancy (percentage of processor usage), and request response latency (i.e., the time interval from receiving a user request to returning a response result). Through these indicators, you can fully understand the performance of the business system when processing user requests.
[0112] For example, high IOPS, near-saturated bandwidth usage, high CPU occupancy, and long request response latency all indicate that the business system may be under high load. By determining the load information, we can further analyze whether the business system can withstand the current user request volume and whether the cache strategy needs to be optimized to ensure system stability and response speed.
[0113] Optionally, in the control method for multi-control array storage provided in an embodiment of the present application, a target cache strategy is determined based on the abnormal probability, request type and load information of the target controller, including: determining a target probability value based on the request type and load information; when the abnormal probability of the target controller is greater than the target probability value, determining a first strategy as the target cache strategy, wherein the first strategy is a strategy for prohibiting data from being written to the cache; when the abnormal probability of the target controller is less than or equal to the target probability value, determining a second strategy as the target cache strategy, wherein the second strategy is a strategy for writing data to the cache, and then writing the data to the multi-control array storage through the cache.
[0114] In an optional embodiment, a target probability value P needs to be determined based on the request type and the current system load. The target probability value P is obtained based on the current system status and historical failure mode analysis, and is used to determine whether it is necessary to switch from the high-performance write-back mode to the high-reliability write-through mode.
[0115] If the probability of abnormality of the target controller is greater than the target probability value P, it is determined that the target controller is abnormal. In order to prevent data loss, the first strategy can be determined as the target cache strategy, that is, a write-through strategy is adopted to directly write data to the multi-control array storage without caching, ensuring that even if more controllers fail, data will not be lost. If the probability of abnormality of the target controller is less than or equal to the target probability value, it is determined that the probability of abnormality of the target controller is low. At this time, in order to optimize system performance, the second strategy can be determined as the target cache strategy, that is, a write-back strategy is adopted, and the data is first written to the cache, and then written to the multi-control array storage by the cache. This can ensure data security while using the high-speed characteristics of the cache to improve write performance.
[0116] By determining the target probability value P and adjusting the cache strategy according to the target probability value P and the abnormal probability of the target controller, the cache strategy can be flexibly adjusted according to the real-time system status and historical fault data, while ensuring data integrity and system reliability, maintaining system performance as much as possible, and improving the overall availability of multi-controller array storage.
[0117] Optionally, in the control method of multi-control array storage provided in an embodiment of the present application, determining a target probability value based on a request type and load information includes: when an indicator value of each preset indicator in the load information is greater than a preset value and the request type is a third type, determining the target probability value within a numerical range of a third numerical interval, wherein the third type represents a request type in which the target data capacity is greater than the preset data capacity, or the target processing operation is write, or the data processing order is random processing; when an indicator value of any preset indicator in the load information is less than or equal to a preset value and the request type is not the third type, determining the target probability value within a numerical range of a fourth numerical interval, wherein the minimum value in the third numerical interval is greater than the maximum value in the fourth numerical interval.
[0118] In an optional embodiment, if the indicator value of each preset indicator in the load information is greater than the preset value, it indicates that the business system has entered a high-load state. Further, if the business system is in a high-load state and the target processing request requires a large amount of resources (that is, the above-mentioned request type is the third type), it indicates that the target probability value P required to switch the cache strategy to the write-through mode is higher. This indicates that when the system load is high and the request type is more complex, the write-through mode can be selected more cautiously to ensure data security, while performance optimization is placed in a secondary position.
[0119] If the value of any indicator in the load information does not exceed its preset threshold, and the request type does not belong to the third type (i.e., the requested data capacity is not large, does not involve write operations, or the processing order is not random), then the target probability value P will be determined within a lower probability threshold range (i.e., the fourth value interval mentioned above). This indicates that when the system load is low and the request type is relatively regular, the system can adopt a more aggressive cache strategy (e.g., write back) to optimize system performance without worrying too much about data integrity.
[0120] By considering system load and request type, the target probability value can be dynamically adjusted to balance performance and reliability. In high-risk scenarios, performance is reduced in exchange for data integrity; in low-risk scenarios, performance improvement is prioritized.
[0121] Optionally, in the control method of the multi-control array storage provided in the embodiment of the present application, after determining the target cache strategy according to the abnormal probability, request type and load information of the target controller, the above method further includes: receiving a target file, and adjusting the target probability value according to the parameter information in the target file to obtain an adjusted target probability value; adjusting the target cache strategy according to the adjusted target probability value and the abnormal probability of the target controller to obtain an adjusted target cache strategy; and controlling the multi-control array storage to execute the adjusted target cache strategy.
[0122] In an optional embodiment, in order to flexibly adjust the cache strategy, a target file may be received, and the target probability value P may be adjusted according to the parameter information in the target file, and then the target cache strategy may be adjusted according to the adjusted target probability value P1. For example, a staff member modifies the target probability value P in the target file, and after the multi-control array storage receives the target file, the target probability value P in the target file is adjusted. The target file refers to a file containing specific parameter information, which is related to the current system status, business pressure, historical failure mode, etc.
[0123] Optionally, in the control method of the multi-control array storage provided in the embodiment of the present application, before receiving the target file, the method further includes: receiving target parameter information input by the target object, wherein the target parameter information includes at least one of the following: a target probability value and a target time period; writing the target parameter information into the target file, and writing the target file into a parameter module, wherein the parameter module is connected to the multi-control array storage via a serial port; and sending the target file from the parameter module to the multi-control array storage via the serial port.
[0124] In an optional embodiment, the parameter information input by the target object can be saved in the target file. The target object refers to an object such as a system administrator or a developer or other staff member who configures parameters. The target object is responsible for inputting specific parameter information, such as a target probability value P and a target time period T. These parameters are key values for controlling and adjusting the cache strategy of the storage system under abnormal circumstances.
[0125] Next, the target file is stored in the parameter module. The parameter module is connected to the multi-control array storage through the serial port, that is, the parameter information in the target file is transmitted to the multi-control array storage through serial communication. After receiving these parameters, the multi-control array storage can intelligently adjust the cache strategy based on these parameter information to achieve a better balance between system performance and reliability. The parameter module is where these parameters are stored and managed. It can store multiple parameter files, each corresponding to different settings or configurations.
[0126] By inputting the parameters set for the target object (for example, the target probability threshold P, the target time period T, etc.) into the storage system, when a controller abnormality is detected, it can flexibly decide whether to switch the cache strategy based on the target parameter information in the target file, thereby ensuring data security while maintaining high system performance as much as possible.
[0127] Optionally, in the control method of multi-control array storage provided in an embodiment of the present application, the indicator information includes at least one of the following: the working status of the controller, the connection status of the controller, the physical status of the controller, and the pressure status of the controller. The physical status includes at least one of the following: power status, temperature, and fan operation status. The pressure status includes at least one of the following: load information, amount of data processed, and number of requests.
[0128] In the first embodiment, the above-mentioned indicator information is used to monitor and analyze various indicators of the controller status in the multi-controller storage array, and these indicators are key factors for determining the adjustment of the cache policy.
[0129] The working status of the controller is used to characterize whether the controller is operating normally, including but not limited to its processing capacity, response time, operating efficiency, etc. A controller in good working status means that it can effectively process data and requests, while an abnormal working status may indicate potential failure or performance degradation.
[0130] The connection status of the controller is used to indicate the communication status between the controller and other components of the storage system (for example, disks, networks, and other controllers). Monitoring the connection status can ensure that the controller can still maintain necessary communication when a failure occurs, or detect communication failures and take corresponding measures.
[0131] The physical status of the controller represents the hardware information of the controller, including the power status (whether the power supply is normal), temperature (whether it is overheated), fan operation (whether it can effectively dissipate heat), etc. Abnormalities in these statuses may directly lead to controller failure or performance degradation.
[0132] The controller's stress status reflects the load the controller is under when processing business, including load information, amount of processed data, number of requests, etc. A high stress status may mean that the controller is processing a large amount of data or requests, which will affect its choice of cache strategy to avoid data loss or system crash.
[0133] Optionally, the functional topology diagram of the control method of the multi-control array storage in the embodiment of the present application can be as follows: Figure 3 The abnormal scenario cache strategy management module (hereinafter referred to as CSA management module) is located on the board, and is mainly used in programmable logic devices such as ARM. The CSA management module can dynamically manage the controller abnormality monitoring module, historical abnormal data analysis module, business pressure monitoring module and cache strategy execution module.
[0134] Specifically, the controller abnormality monitoring module can monitor the controller status in real time, for example, it can monitor the controller's presence, operation, pressure, etc. When the module detects a controller abnormality, it will output the information to the historical abnormality data analysis module. The historical abnormality data analysis module is controlled by the CSA management module. The module gives the probability of the remaining controller abnormalities based on the controller abnormality information received in real time, combined with the current state of the storage system and the historical failure mode, relying on its own controller abnormality prediction algorithm, and outputs it to the CSA management module for write cache strategy adjustment. The business pressure monitoring module is controlled by the CSA management module, and can obtain the current business model (i.e., the request type of the above-mentioned data processing request) and business pressure situation (i.e., the attached information of the above-mentioned business system), and monitor the pressure of the front-end business in real time. The pressure can be comprehensively evaluated through multiple indicators such as the system's IOPS, bandwidth, CPU usage, and latency. The cache policy execution module is controlled by the CSA management module, and can execute the write cache strategy to maintain a high-performance write-back mode or a high-reliability write-through mode. Specifically, the historical abnormality data analysis module is embedded with various types of controller abnormality information databases (i.e., the above-mentioned target database), which will match the current abnormal controller information in real time. For example, if a controller crashes due to high temperature, the historical abnormal data analysis module will check the current system ambient temperature according to the database. If the ambient temperature is also too high and the cooling module of the controller that crashed due to high temperature is normal, the target controller will be given an 80% probability of continuous abnormality to the CSA module. If the ambient temperature is normal at this time, and the cooling module of the controller that crashed due to high temperature is abnormal, the target controller will be given a 50% probability of continuous abnormality to the CSA module. If the ambient temperature is normal at this time, and the cooling module of the controller that crashed due to high temperature is also normal, the target controller will be given a 20% probability of continuous abnormality to the CSA module. In addition, if multiple controllers store abnormalities for the same reason within 15 minutes, the historical abnormal data analysis module will give a 90% probability of abnormality to the target controller and send it to the CSA module; if multiple controllers store abnormalities for different reasons within 15 minutes, the historical abnormal data analysis module will give a 90% probability of abnormality to the target controller and send it to the CSA module. After receiving the remaining controller abnormality probability from the historical abnormal data analysis module, the CSA module adjusts the write cache strategy based on the real-time business model and pressure situation: If the CSA identifies that the failure mode indicates that there may be more controller failures, it will switch to write-through mode to ensure data integrity. If the CSA believes that the probability of subsequent controller failures is low, it will maintain write-back mode to optimize performance. The more complex the request type and the greater the business system load, the higher the probability value P required for the CSA to switch to write-through mode. The time T, the probability threshold P in different scenarios, etc. can be adjusted in the system or parameter module. The cache mechanism adjustment in the controller abnormal scenario is intelligently handled through the abnormal scenario cache policy management module.When the controller is abnormal, this technology makes intelligent adjustments to the write cache strategy based on the current state of the system and historical failure modes, achieving a rebalance between system performance and reliability in abnormal scenarios, and avoiding abnormal situations such as the cluster being unable to normally handle front-end business due to controller failures coupled with high-load complex business model pressure in extreme scenarios, thereby improving the availability of the entire system.
[0135] By collecting and analyzing the above-mentioned indicator information, it is possible to predict the abnormal probability of target controller failure based on this information. For example, if the controller is in a high temperature state and the system ambient temperature is also abnormal, then this may mean that the remaining target controllers are also at risk of overheating, thereby increasing the probability of failure. If a controller fails when it is under high load, it is necessary to evaluate the failure risk of other controllers under similar high load conditions. Based on the predicted abnormal probability, the write cache strategy can be intelligently adjusted to choose a better balance between ensuring data integrity (write-through mode) and optimizing performance (write-back mode), thereby maintaining system performance and reliability in abnormal scenarios.
[0136] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods of each embodiment of the present application.
[0137] In this embodiment, a control device for multi-control array storage is also provided, which is used to implement the above embodiments and preferred implementations, and the descriptions that have been made will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.
[0138] Figure 4 is a structural block diagram of a control device for multi-control array storage according to an embodiment of the present application, such as Figure 4 As shown, the device comprises:
[0139] A collection unit 402 is used to collect indicator information of each controller in a plurality of controllers included in the multi-control array storage;
[0140] A prediction unit 404, used to predict the abnormal probability of the target controller according to the indicator information of each controller;
[0141] The determination unit 406 is used to receive the data processing request sent by the business system, determine the request type corresponding to the data processing request, and determine the load information of the business system;
[0142] The first control unit 408 is used to determine a target cache strategy according to the abnormal probability, request type and load information of the target controller, and control the multi-controller array storage to execute the target cache strategy.
[0143] The control device of the multi-controller array storage provided in the embodiment of the present application collects the indicator information of each controller in the multiple controllers included in the multi-controller array storage through the collection unit 402; the prediction unit 404 predicts the abnormal probability of the target controller according to the indicator information of each controller; the determination unit 406 receives the data processing request sent by the business system, determines the request type corresponding to the data processing request, and determines the load information of the business system; the first control unit 408 determines the target cache strategy according to the abnormal probability, request type and load information of the target controller, and controls the multi-controller array storage to execute the target cache strategy, which solves the problem in the related art that when a controller in the multi-controller array storage fails, the multi-controller array storage will trigger an instruction to prohibit writing cache, so that the performance of the multi-controller array storage is greatly reduced, resulting in the inability of the front-end business to operate normally. By collecting the indicator information of each controller in the multi-controller array storage, the current status of the controller can be reflected in time, the target controller that needs to adjust the cache strategy can be determined, and the abnormal probability of the target controller can be predicted. Then, by analyzing the request type and the load information of the business system, the urgency of the current business needs and the complexity of data processing can be evaluated, so as to make intelligent decisions on the target cache strategy based on the predicted abnormal probability, request type and load information of the target controller, and then control the multi-controller array storage to execute the target cache strategy based on the target cache strategy, so as to achieve the technical purpose of being able to flexibly adjust the cache strategy when the controller fails, which not only ensures the integrity of the data, but also minimizes the performance loss, improves the overall availability and response speed of the multi-controller array storage in abnormal situations, and ensures the continuity of the front-end business and user experience.
[0144] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned target controller is other controllers among the multiple controllers except the first controller, the first controller is the controller that currently has an abnormality, and the prediction unit 404 includes: a first determination subunit, used to determine a target database containing historical abnormality information of the controller, wherein the target database includes multiple types of historical abnormality information; a second determination subunit, used to determine the first controller and abnormality information of the first controller based on the target database and indicator information of each controller; a prediction subunit, used to predict the abnormality probability of the target controller based on the indicator information of the target controller and the abnormality information of the first controller.
[0145] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned second determination subunit includes: a matching module, which is used to match the indicator information of each controller with each type of historical abnormal information in the target database using the indicator information to obtain a matching result; a first determination module, which is used to determine the first controller that hits the historical abnormal information and determine the first indicator information that hits the historical abnormal information when the matching result is not empty; and a second determination module, which is used to determine the abnormal information of the first controller based on the first indicator information.
[0146] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned prediction subunit includes: a third determination module, used to determine at least one second indicator information of the target controller, wherein the second indicator information is indicator information that has an associated relationship with the abnormal information of the first controller; a judgment module, used to judge whether each second indicator information in the at least one second indicator information has an abnormality based on the target database, and obtain a target number of second indicator information with abnormalities; a fourth determination module, used to determine the abnormal probability of the target controller based on the target number.
[0147] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned prediction unit 404 includes: a first acquisition subunit, used to obtain the indicator information of the existence of abnormalities in the target time period from the indicator information of each controller according to the target database, and obtain at least one third indicator information, wherein the target database includes multiple types of historical abnormality information; a third determination subunit, used to determine the target controller according to the controller corresponding to each third indicator information in the at least one third indicator information; a sorting subunit, used to determine the generation time of each third indicator information, and sort the generation time of each third indicator information in order to obtain a first sequence; a fourth determination subunit, used to determine the abnormal probability of the target controller according to the difference between adjacent generation times in the first sequence.
[0148] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned fourth determination subunit includes: a fifth determination module, used to determine the abnormal probability in the first numerical interval when there is third indicator information corresponding to the same indicator in at least one third indicator information and the difference is less than a preset difference; a sixth determination module, used to determine the abnormal probability in the second numerical interval when there is no third indicator information corresponding to the same indicator in at least one third indicator information and the difference is less than a preset difference, wherein the minimum value in the first numerical interval is greater than the maximum value in the second numerical interval.
[0149] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned sixth determination module includes: a classification submodule, used to classify at least one third indicator information according to multiple types of historical abnormal information to obtain multiple types of third indicator information; a first determination submodule, used to determine the number of each type of third indicator information in the multiple types of third indicator information; and a second determination submodule, used to determine the abnormal probability of the target controller corresponding to each type of third indicator information based on the number of each type of third indicator information and the second numerical range.
[0150] Optionally, in the control device of the multi-controller array storage provided in the embodiment of the present application, the above-mentioned first control unit 408 includes: a second acquisition subunit, used to acquire the first cache strategy of the target controller in the current multi-controller array storage; and an adjustment subunit, used to adjust the first cache strategy of the target controller according to the target cache strategy, so as to control the multi-controller array storage to execute the target cache strategy.
[0151] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned adjustment subunit includes: a seventh determination module, used to determine the target distance between the target controller and the first controller; an eighth determination module, used to determine the controller type of the target controller based on the target distance and the preset distance, wherein the controller type includes at least: a first type and a second type; an adjustment module, used to adjust the first cache strategy of the target controller based on the controller type of the target controller and the target cache strategy.
[0152] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned determination unit 406 includes: a fifth determination subunit, used to determine the target data capacity of the data to be processed in the data processing request; a sixth determination subunit, used to determine the target processing operation to be executed according to the data processing request, wherein the target processing operation includes at least one of the following: read, write; a seventh determination subunit, used to determine the data processing order of the data processing request, wherein the data processing order includes at least one of the following: random processing, sequential processing; an eighth determination subunit, used to determine the request type according to the target data capacity, the target processing operation and the data processing order.
[0153] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned determination unit 406 includes: a collection subunit, used to collect indicator information of the business system according to preset indicators, wherein the business system is a system that generates data processing requests based on user requests, and the preset indicators include at least one of the following: the number of read and write operations performed per second, bandwidth information, CPU occupancy, and request response delay; a ninth determination subunit, used to determine the load information of the business system based on the indicator information of the business system.
[0154] Optionally, in the control device for multi-control array storage provided in an embodiment of the present application, the above-mentioned first control unit 408 includes: a tenth determination subunit, used to determine a target probability value according to a request type and load information; an eleventh determination subunit, used to determine a first strategy as a target cache strategy when the abnormal probability of the target controller is greater than the target probability value, wherein the first strategy is a strategy for prohibiting data from being written to the cache; a twelfth determination subunit, used to determine a second strategy as a target cache strategy when the abnormal probability of the target controller is less than or equal to the target probability value, wherein the second strategy is a strategy for writing data to the cache, and then writing the data to the multi-control array storage through the cache.
[0155] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned tenth determination subunit includes: a ninth determination module, which is used to determine the target probability value within a numerical range of a third numerical interval when the indicator value of each preset indicator in the load information is greater than the preset value and the request type is a third type, wherein the third type represents a request type in which the target data capacity is greater than the preset data capacity, or the target processing operation is write, or the data processing order is random processing; and a tenth determination module, which is used to determine the target probability value within a numerical range of a fourth numerical interval when the indicator value of any preset indicator in the load information is less than or equal to the preset value and the request type is not the third type, wherein the minimum value in the third numerical interval is greater than the maximum value in the fourth numerical interval.
[0156] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned device also includes: a first receiving unit, which is used to receive the target file after determining the target cache strategy according to the abnormal probability, request type and load information of the target controller, and adjust the target probability value according to the parameter information in the target file to obtain an adjusted target probability value; an adjusting unit, which is used to adjust the target cache strategy according to the adjusted target probability value and the abnormal probability of the target controller to obtain the adjusted target cache strategy; and a second control unit, which is used to control the multi-control array storage to execute the adjusted target cache strategy.
[0157] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned device also includes: a second receiving unit, used to receive target parameter information input by the target object before receiving the target file, wherein the target parameter information includes at least one of the following: a target probability value, a target time period; a writing unit, used to write the target parameter information into the target file, and write the target file into a parameter module, wherein the parameter module is connected to the multi-control array storage through a serial port; and a sending unit, used to send the target file from the parameter module to the multi-control array storage through the serial port.
[0158] Optionally, in the control device of the multi-control array storage provided in the embodiment of the present application, the above-mentioned indicator information includes at least one of the following: the working status of the controller, the connection status of the controller, the physical status of the controller, and the pressure status of the controller. The physical status includes at least one of the following: power status, temperature, and fan operation status. The pressure status includes at least one of the following: load information, processing data volume, and request quantity.
[0159] The control device stored in the multi-control array includes a processor and a memory. The above-mentioned acquisition unit 402, prediction unit 404, determination unit 406, first control unit 408, etc. are all stored in the memory as program units, and the processor executes the above-mentioned program units stored in the memory to realize corresponding functions.
[0160] The processor includes a kernel, which calls the corresponding program unit from the memory. One or more kernels can be set, and the storage performance of the multi-control array can be improved by adjusting the kernel parameters.
[0161] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.
[0162] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.
[0163] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0164] An embodiment of the present application further provides an electronic device, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0165] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0166] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any one of the above method embodiments are implemented.
[0167] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0168] The embodiments of the present application also provide a computer program, which includes computer instructions, which are stored in a computer-readable storage medium; a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the steps in any one of the above method embodiments.
[0169] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail herein.
[0170] Obviously, those skilled in the art should understand that the above modules or steps of the present application can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present application is not limited to any specific combination of hardware and software.
[0171] The above description is only the preferred embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the principles of the present application shall be included in the protection scope of the present application.
Claims
1. A control method for multi-control array storage, characterized in that: include: Collecting index information of each controller among the multiple controllers contained in the multi-control array storage, wherein the index information includes at least one of the following: the working state of the controller, the connection state of the controller, the physical state of the controller, and the pressure state of the controller, wherein the physical state includes at least one of the following: power supply state, temperature, and fan operation status, and the pressure state includes at least one of the following: load information, amount of processed data, and number of requests; Predict the abnormal probability of the target controller based on the indicator information of each controller; Receive a data processing request sent by a business system, determine a request type corresponding to the data processing request, and determine load information of the business system; Determine a target cache strategy according to the abnormal probability of the target controller, the request type and the load information, and control the multi-control array storage to execute the target cache strategy; The determining of the target cache strategy according to the abnormal probability of the target controller, the request type and the load information includes: Determining a target probability value according to the request type and the load information; In a case where the abnormal probability of the target controller is greater than the target probability value, determining a first strategy as the target cache strategy, wherein the first strategy is a strategy for prohibiting data from being written into the cache; When the abnormal probability of the target controller is less than or equal to the target probability value, a second strategy is determined as the target cache strategy, wherein the second strategy is a strategy of writing data into cache and then writing the data into the multi-control array storage through the cache.
2. The method according to claim 1, characterized in that The target controller is a controller other than the first controller among the multiple controllers, the first controller is a controller that currently has an abnormality, and the abnormality probability of the target controller is predicted according to the indicator information of each controller, including: Determining a target database containing historical abnormality information of the controller, wherein the target database includes multiple types of historical abnormality information; Determine the first controller and abnormal information of the first controller according to the target database and the indicator information of each controller; The abnormal probability of the target controller is predicted according to the indicator information of the target controller and the abnormal information of the first controller.
3. The method according to claim 2, characterized in that The determining the first controller and abnormal information of the first controller according to the target database and the indicator information of each controller includes: For the indicator information of each controller, the indicator information is used to match each type of historical abnormal information in the target database to obtain a matching result; In the case that the matching result is not empty, determining a first controller that hits the historical abnormal information, and determining first indicator information that hits the historical abnormal information; Abnormal information of the first controller is determined according to the first indicator information.
4. The method according to claim 2, characterized in that: The predicting the abnormal probability of the target controller according to the indicator information of the target controller and the abnormal information of the first controller includes: Determine at least one second indicator information of the target controller, wherein the second indicator information is indicator information associated with abnormal information of the first controller; Determining whether each second indicator information in the at least one second indicator information is abnormal based on the target database, and obtaining a target number of second indicator information with abnormalities; The abnormal probability of the target controller is determined according to the target quantity.
5. The method according to claim 1, characterized in that The method of predicting the abnormal probability of the target controller according to the indicator information of each controller includes: Obtaining abnormal indicator information in a target time period from indicator information of each controller according to a target database to obtain at least one third indicator information, wherein the target database includes multiple types of historical abnormal information; Determining the target controller according to the controller corresponding to each piece of third indicator information in the at least one piece of third indicator information; Determine the generation time of each piece of third indicator information, and sort the generation time of each piece of third indicator information in order of precedence to obtain a first sequence; The abnormal probability of the target controller is determined according to the difference between adjacent generation moments in the first sequence.
6. The method according to claim 5, characterized in that The determining the abnormal probability of the target controller according to the difference between adjacent generation moments in the first sequence includes: If there is third indicator information corresponding to the same indicator in the at least one piece of third indicator information and the difference is less than a preset difference, determining the abnormal probability in a first numerical interval; When there is no third indicator information corresponding to the same indicator in the at least one third indicator information and the difference is less than the preset difference, the abnormal probability is determined in a second numerical interval, wherein the minimum value in the first numerical interval is greater than the maximum value in the second numerical interval.
7. The method according to claim 6, characterized in that When there is no third indicator information corresponding to the same indicator in the at least one piece of third indicator information and the difference is less than the preset difference, determining the abnormal probability in the second numerical range includes: Classifying the at least one third indicator information according to the multiple types of the historical abnormal information to obtain multiple types of third indicator information; Determining the quantity of each type of third indicator information among the plurality of types of third indicator information; The abnormal probability of the target controller corresponding to each type of third indicator information is determined according to the amount of each type of third indicator information and the second numerical range.
8. The method according to claim 2, characterized in that: The controlling the multi-control array storage to execute the target cache strategy includes: Obtaining a first cache strategy of the target controller in the current multi-controller array storage; The first cache policy of the target controller is adjusted according to the target cache policy to control the multi-control array storage to execute the target cache policy.
9. The method according to claim 8, characterized in that The adjusting the first cache strategy of the target controller according to the target cache strategy includes: determining a target distance between the target controller and the first controller; Determining a controller type of the target controller according to the target distance and the preset distance, wherein the controller type includes at least: a first type and a second type; The first cache policy of the target controller is adjusted according to the controller type of the target controller and the target cache policy.
10. The method according to claim 1, characterized in that The determining the request type corresponding to the data processing request includes: Determining a target data capacity of data to be processed in the data processing request; Determining a target processing operation to be performed according to the data processing request, wherein the target processing operation includes at least one of the following: reading and writing; Determining a data processing order of the data processing request, wherein the data processing order includes at least one of the following: random processing and sequential processing; The request type is determined according to the target data capacity, the target processing operation and the data processing sequence.
11. The method according to claim 10, characterized in that The determining the load information of the business system includes: Collecting indicator information of the business system according to preset indicators, wherein the business system is a system that generates data processing requests based on user requests, and the preset indicators include at least one of the following: the number of read and write operations performed per second, bandwidth information, CPU occupancy, and request response delay; The load information of the business system is determined according to the indicator information of the business system.
12. The method according to claim 11, characterized in that The determining a target probability value according to the request type and the load information includes: When the indicator value of each preset indicator in the load information is greater than the preset value and the request type is a third type, the target probability value is determined within a value range of a third value interval, wherein the third type represents a request type in which the target data capacity is greater than the preset data capacity, or the target processing operation is write, or the data processing order is random processing; When the indicator value of any preset indicator in the load information is less than or equal to the preset value and the request type is not the third type, the target probability value is determined within the numerical range of a fourth numerical interval, wherein the minimum value in the third numerical interval is greater than the maximum value in the fourth numerical interval.
13. The method according to claim 1, characterized in that After determining the target cache strategy according to the abnormal probability of the target controller, the request type and the load information, the method further includes: Receiving a target file, and adjusting the target probability value according to parameter information in the target file to obtain an adjusted target probability value; Adjusting the target cache strategy according to the adjusted target probability value and the abnormal probability of the target controller to obtain an adjusted target cache strategy; The multi-control array storage is controlled to execute the adjusted target cache strategy.
14. The method according to claim 13, characterized in that Before receiving the target file, the method further includes: Receive target parameter information input by the target object, wherein the target parameter information includes at least one of the following: a target probability value and a target time period; Writing the target parameter information into the target file, and writing the target file into a parameter module, wherein the parameter module is connected to the multi-control array storage via a serial port; The target file is sent from the parameter module to the multi-control array storage through the serial port.
15. A control device for multi-control array storage, characterized in that: include: A collection unit, used for collecting index information of each controller among the multiple controllers contained in the multi-control array storage, wherein the index information includes at least one of the following: the working state of the controller, the connection state of the controller, the physical state of the controller, and the pressure state of the controller, wherein the physical state includes at least one of the following: power supply state, temperature, and fan operation state, and the pressure state includes at least one of the following: load information, amount of processed data, and number of requests; A prediction unit, used for predicting the abnormal probability of the target controller according to the indicator information of each controller; A determination unit, configured to receive a data processing request sent by a business system, determine a request type corresponding to the data processing request, and determine load information of the business system; A first control unit, configured to determine a target cache strategy according to the abnormal probability of the target controller, the request type and the load information, and control the multi-control array storage to execute the target cache strategy; Wherein, the first control unit includes: a tenth determination subunit, used to determine a target probability value according to the request type and the load information; an eleventh determination subunit, used to determine a first strategy as the target cache strategy when the abnormal probability of the target controller is greater than the target probability value, wherein the first strategy is a strategy for prohibiting data from being written to the cache; a twelfth determination subunit, used to determine a second strategy as the target cache strategy when the abnormal probability of the target controller is less than or equal to the target probability value, wherein the second strategy is a strategy for writing data to the cache and then writing the data to the multi-control array storage through the cache.
16. 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 control method for multi-control array storage described in any one of claims 1 to 14.
17. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the multi-control array storage control method described in any one of claims 1 to 14 are implemented.
18. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the control method for multi-control array storage described in any one of claims 1 to 14 are implemented.
