CN115408207A - Global caching method, device and medium for storage system - Google Patents

Global caching method, device and medium for storage system Download PDF

Info

Publication number
CN115408207A
CN115408207A CN202211037690.9A CN202211037690A CN115408207A CN 115408207 A CN115408207 A CN 115408207A CN 202211037690 A CN202211037690 A CN 202211037690A CN 115408207 A CN115408207 A CN 115408207A
Authority
CN
China
Prior art keywords
double
cache
control system
write data
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211037690.9A
Other languages
Chinese (zh)
Inventor
仇锋利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211037690.9A priority Critical patent/CN115408207A/en
Publication of CN115408207A publication Critical patent/CN115408207A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2079Bidirectional techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The application relates to the technical field of data storage, and discloses a global caching method, a device and a medium of a storage system. And storing the write data mirror image in the cache of the target controller into the caches of the corresponding controllers in other double-control systems, so as to realize that the write data backup is stored in different double-control systems. And (4) the write data in the cache of the target controller is flushed down to the disk of the current double-control system, and the write data is controlled to be written in the disks of other double-control systems, so that the global cache of the storage system is completed. By adopting the technical scheme, the data in the cache is stored in different double-control systems during mirror image storage, and when the current double-control system fails, the service can still be provided continuously through corresponding controllers in other double-control systems, so that the reliability of the cache system is improved.

Description

Global caching method, device and medium for storage system
Technical Field
The present application relates to the field of data storage technologies, and in particular, to a method, an apparatus, and a medium for global caching in a storage system.
Background
With the development of science and technology and the continuous deepening of informatization construction, various data volumes are rapidly increased. In the big data era, how to guarantee high availability and high reliability of data is a hot spot of storage research of technicians.
Fig. 1 is a structural diagram of a dual-control system commonly used in the prior art, and as shown in fig. 1, the dual-control system implements data caching through a dual-port disk and a redundant controller. The four-control system is an extension of a double-control system, two double-control systems are used, caches of two controllers in each double-control system are mirror images, and one disk is shared. However, the method can only realize the sharing of data in one dual-control system, but cannot realize the sharing between two dual-control systems, and when one dual-control system fails, the cache and the disk of the dual-control system cannot continuously provide service, so that data loss is caused, and the reliability of the whole dual-control system is influenced.
Therefore, how to improve the reliability of the storage system is an urgent problem to be solved by those skilled in the art.
Disclosure of Invention
The application aims to provide a storage system global caching method, a storage system global caching device and a storage system global caching medium, which are used for improving the reliability of a storage system.
In order to solve the above technical problem, the present application provides a storage system global caching method, including:
determining a target controller corresponding to the current data writing instruction;
storing the write data in the write data instruction into a cache of the target controller;
storing the write data in the cache of the target controller into caches of corresponding controllers in other double-control systems in a mirror manner;
the write data in the cache of the target controller is flushed down to a magnetic disc of the current double-control system;
and controlling the write-in of the write data in the magnetic disks of the other double control systems.
Preferably, the controlling the writing of the write data in the disks of the other bi-control systems includes:
and storing the data in the disk of the current double-control system into the disks of the other double-control systems in a mirror mode.
Preferably, the controlling of writing the write data in the disk of the other dual control system includes:
and flushing the write data in the cache of the corresponding controller in the other double-control system to the magnetic disk of the other double-control system.
Preferably, after the step of flushing the write data in the cache of the corresponding controller in the other bi-control system to the disk of the other bi-control system, the method further includes:
judging whether the data in the disks of the other double control systems are the same as the data in the disk of the current double control system;
and if not, returning to the step of flushing the write data in the cache of the corresponding controller in the other double-control system to the magnetic disks of the other double-control system.
Preferably, before the step of flushing the write data in the cache of the target controller to a disk of the current dual-control system, the method further includes:
judging whether the write data in the cache of the target controller is successfully stored in the caches of the corresponding controllers in the other double-control systems in a mirror image manner;
if so, sending information representing that the mirroring is completed to the host, and performing the step of flushing the write data in the cache of the target controller to a disk of the current dual-control system.
Preferably, if the corresponding controller in the other bi-control system fails, the method further includes:
and constructing a corresponding relation between the target controller and another controller in the other double-control system, and taking the other controller as a new corresponding controller.
Preferably, the controller in the other dual control system fails, further comprising:
and constructing a corresponding relation between the target controller and the other controller in the current double-control system, and taking the other controller as a new corresponding controller.
Preferably, after the step of constructing a corresponding relationship between the target controller and another controller in the current dual-control system, the method further includes:
and sending alarm information to the host.
Preferably, the method further comprises the following steps: and after receiving the alarm information, the host stores the alarm information and the mark information of the other double-control systems in a cloud server for storage.
Preferably, the target controller is connected with the corresponding controllers in other double-control systems through RoCE.
Preferably, the storage system is a four-control system, and the disks of the current dual-control system and the disks of the other dual-control systems are configured in a RAID1 mode.
Preferably, the storage system is an eight-control system, and the disks of the current dual-control system and the disks of the other dual-control systems are both configured in a RAID 10 mode.
In order to solve the above technical problem, the present application further provides a global cache device of a storage system, where the device includes:
the determining module is used for determining a target controller corresponding to the current data writing instruction;
the cache module is used for storing the write data in the write data instruction into the cache of the target controller;
the mirror image module is used for storing the write data in the cache of the target controller into the caches of the corresponding controllers in other double-control systems in a mirror image mode;
the down-brushing module is used for down-brushing the write data in the cache of the target controller to a magnetic disk of the current double-control system;
and the write-in module is used for controlling the write-in of the write data in the magnetic disks of the other double control systems.
In order to solve the above technical problem, the present application further provides another storage system global caching apparatus, including a memory for storing a computer program;
a processor for implementing the steps of the storage system global caching method when executing the computer program.
In order to solve the above technical problem, the present application further provides a computer-readable storage medium, where a computer program is stored, and when the computer program is executed by a processor, the steps of the storage system global caching method are implemented.
According to the global caching method of the storage system, after the target controller which is used as the main controller to execute the data writing instruction is determined, the data writing in the data writing instruction is stored in the cache of the target controller, and therefore the service response speed is improved. And the write data in the cache of the target controller is stored in the caches of the corresponding controllers in other double-control systems in a mirror manner, so that the write data backup is stored in different double-control systems. And (4) the write data in the cache of the target controller is flushed down to the disk of the current double-control system, and the write data is controlled to be written in the disks of other double-control systems, so that the global cache of the storage system is completed. Compared with the prior art that the cache mirroring is realized in the same double-control system when the double-control system fails, the technical scheme is adopted, the data mirroring in the cache is stored in different double-control systems, and when the current double-control system fails, the service can still be continuously provided through corresponding controllers in other double-control systems, so that the reliability of the cache system is improved.
In addition, the storage system global caching device and the storage system global caching medium provided by the application correspond to the storage system global caching method, and the effect is the same as that of the storage system global caching method.
Drawings
In order to more clearly illustrate the embodiments of the present application, the drawings needed for the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings can be obtained by those skilled in the art without inventive effort.
Fig. 1 is a block diagram of a dual control system commonly used in the art;
fig. 2 is a flowchart of a global caching method for a storage system according to an embodiment of the present application;
fig. 3 is a structural diagram of a global cache device of a storage system according to an embodiment of the present application;
fig. 4 is a structural diagram of another global caching device of a storage system according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application without any creative effort belong to the protection scope of the present application.
With the development of science and technology and the continuous deepening of informatization construction, various data volumes are rapidly increased. In the big data era, how to guarantee high availability and high reliability of data is a hot spot of storage research of technicians.
Fig. 1 is a structural diagram of a dual-control system commonly used in the prior art, and as shown in fig. 1, the dual-control system implements caching and backup of data through a dual-port disk and a redundant controller. The controller is connected with the Host through a Host Bus Adapter (HBA) to realize communication interaction. An HBA is a circuit board or integrated circuit adapter that provides input/output processing and physical connections between a server and a storage device. Because the HBA relieves the host processor of the burden of data storage and retrieval tasks, the performance of the server can be improved.
The CPU in the controller is used to process and control the business logic. In specific implementation, data acquired from a host is firstly stored in a memory space allocated by a system for software, namely a cache, and when the data stored in the cache reaches a certain degree or the system has other idle time, the data is stored in a disk. Therefore, actual disk operation can be reduced, data in the cache can be directly operated during reading and writing, the disk is effectively protected from damage caused by repeated reading and writing operation, and the reading and writing performance of the disk is improved. Caches are high-speed random access devices that are typically placed in front of a slow back-end disk, typically using memory as a cache.
When the data in the cache reaches a certain degree or the storage system is idle, the data in the cache is flushed to a connected disk through the SAS controller for continuous storage. SAS (Serial Attached SCSI), i.e., serial SCSI technology, is a new type of disk connection technology. The system integrates the advantages of the existing parallel SCSI and serial connection technologies (fiber channel, SSA, IEEE1394, infiniBand and the like), takes serial communication as a protocol infrastructure, adopts SCSI-3 extended instruction set and is compatible with SATA (serial advanced technology attachment) equipment, and is a multi-level storage equipment connection protocol stack.
In the dual-control system, the caches of the two controllers are mirror images of each other and share a back-end disk. In a specific implementation, one controller is selected as a main controller after a data writing command is obtained, and the other controller is a standby controller.
The four-control system is an extension of the double-control system, uses two double-control systems and supports four controllers. The caches of the two controllers in each dual-control system are mirror images, and share one disk. However, the method can only realize the sharing of data in one dual-control system, but cannot realize the sharing between two dual-control systems, and when one dual-control system fails, the cache and the disk of the dual-control system cannot continuously provide service, so that data loss is caused, and the reliability of the whole dual-control system is influenced.
The core of the application is to provide a storage system global caching method, a storage system global caching device and a storage system global caching medium, which are used for improving the reliability of a storage system.
In order that those skilled in the art will better understand the disclosure, the following detailed description will be given with reference to the accompanying drawings.
Fig. 2 is a flowchart of a global caching method of a storage system according to an embodiment of the present application, where as shown in fig. 2, the method includes:
s10: and determining a target controller corresponding to the current write data instruction.
In the present application, a storage system is taken as an example of a four-way control system, and when a host performs a write operation, a target controller corresponding to a current write data instruction is determined by the HBA. At this time, the target controller is the master controller, and the dual control system where the target controller is located is the current dual control system.
S11: and storing the write data in the write data command into a cache of the target controller.
S12: and storing the write data in the cache of the target controller into the caches of the corresponding controllers in other double-control systems in a mirror manner.
After receiving the write data from the host, the current dual-control system stores the write data into the cache of the target controller, and then stores the cache of the target controller in a mirror image manner into the caches of the corresponding controllers in other dual-control systems. It can be understood that in the prior art, the mirror backup of data is implemented in the cache of the two controllers of one dual control system, and in step S12, the primary controller and the corresponding backup controller are located in different dual control systems, and the data written in the primary controller of the current dual control system is mirror-stored in the corresponding controllers of the other dual control systems, so that when both controllers of the current dual control system are damaged, the backup controllers of the other dual control systems can continue to provide help. In a specific implementation, the interconnection between the current dual-control system and other dual-control systems may be implemented by RoCE (RDMA over switched Ethernet). Remote Direct Memory Access (RDMA) is generated to solve the delay of server-side data processing in network transmission, and can directly Access the Memory of one host or server from the Memory of another host or server without using a CPU. RDMA frees the CPU to perform what it should do, such as running applications and processing large amounts of data. Thereby increasing bandwidth and reducing latency, jitter, and CPU consumption. RDMA can be simply understood as using related hardware and network technologies to enable the network card of the server 1 to directly read and write the memory of the server 2, and finally achieves the effects of high bandwidth, low latency and low resource utilization rate. RoCE is a network protocol defined in the InfiniBand Trade Association (IBTA) standard that allows RDMA to be used over Ethernet. In short, roCE can be viewed as an application of RDMA technology in a hyper-converged data center, cloud, storage, and virtualization environment. In this embodiment, the write data in the cache of the target controller may be stored in the cache of the corresponding controller in another dual control system in a mirror manner by using the RoCE technology, so as to improve the bandwidth and reduce the delay.
S13: and (4) writing data in the cache of the target controller is flushed down to a magnetic disk of the current double-control system.
In step S13, the data in the cache is flushed to the disk for long-term storage. In a specific implementation, the operation of the flushing should be to ensure that the write data in the cache of the target controller has been successfully mirrored to the caches of the corresponding controllers in the other dual-control systems, so as to ensure that the data can be quickly read from the caches of the corresponding controllers in the other dual-control systems when reading the data.
S14: and controlling the write-in of the write-data in the magnetic disks of other double-control systems.
The global cache in the present application means that the object served by the cache is not limited to a specific node, but faces all nodes in the whole storage system. In the above embodiment, mirroring of the caches of the two corresponding controllers is implemented, and in order to implement the global cache of the cache system, it is further required to ensure that data stored in the disk of the current dual-control system and the disks of the other dual-control systems are also the same. After the write data in the cache of the target controller is flushed to the disk of the current dual-control system, the write data also needs to be updated to the disks of other dual-control systems.
According to the global caching method for the storage system, after the target controller which is used as the main controller to execute the data writing instruction is determined, the data writing in the data writing instruction is stored in the cache of the target controller, and therefore the service response speed is improved. And the write data in the cache of the target controller is stored in the caches of the corresponding controllers in other double-control systems in a mirror manner, so that the write data backup is stored in different double-control systems. And (4) the write data in the cache of the target controller is flushed down to the disk of the current double-control system, and the write data is controlled to be written in the disks of other double-control systems, so that the global cache of the storage system is completed. Compared with the prior art that the cache mirroring is realized in the same double-control system when the double-control system fails, the technical scheme is adopted, the data mirroring in the cache is stored in different double-control systems, and when the current double-control system fails, the service can still be continuously provided through corresponding controllers in other double-control systems, so that the reliability of the cache system is improved.
On the basis of the foregoing embodiment, this embodiment provides a specific method for controlling write data to a disk of another dual control system, including:
and storing the data in the disk of the current double-control system into the disks of other double-control systems in a mirror mode.
In a specific implementation, the storage of write data in two Disks may be implemented using a Redundant Array of Independent Disks (RAID) technology. RAID is a large number of independent disks combined into a disk group with a large capacity, and the performance of the entire disk system is improved by the additive effect of providing data by individual disks. RAID can provide different RAID modes for users to choose according to the number and capacity of the disks in the system, and then merge more than one disk into a single available storage space according to the RAID mode chosen, or configure the RAID into one available storage space and one storage space for data protection. Through RAID function, the storage system can store the user's data in different disks by using special algorithm. Therefore, the efficiency of data access can be improved, and the data integrity and reliability of the data stored by the user can be ensured by restoring the correct and complete data by the data dispersed on other disks after a new disk is loaded once one disk fails by a data dispersion and storage data fault-tolerant mode. In the four-control system, the disk of the current dual-control system and the disks of other dual-control systems can be set to be in a RAID1 mode, where RAID1 is a RAID disk array formed by two hard disks, and the capacity of RAID disk array is only equal to that of one hard disk, because the other hard disk is only used as a data "mirror image". A RAID1 disk array is clearly the most reliable one because it always keeps a full copy of the data. RAID1 realizes data redundancy through disk data mirroring, and generates data which are mutually backed up on paired independent disks. When the original data is busy, the data can be read directly from the mirror copy, so RAID1 can improve read performance. RAID1 provides high data security and availability, and when one disk fails, the system can automatically switch to reading and writing on the mirror disk without the need to reorganize the failed data. In the eight-control system, the disks of the current dual-control system and the disks of the other dual-control systems are configured in a RAID 10 mode. RAID 10 is a combination of RAID1 and RAID 0, and it uses parity to implement stripe set mirroring, so it inherits the speed of RAID 0 and the security of RAID 1. RAID 10 is very simple in structure, and first creates 2 independent RAID1 s, and then combines the two independent RAID1 s into one RAID 0, and when data is written to this logical RAID, the data is written into the two RAID1 s in order. The disk 1 and the disk 2 form a RAID1, and the disk 3 and the disk 4 form another RAID 1; these two RAID1 s constitute a new RAID 0. For example, the data 1, 3, 5, and 7 written on the hard disk 1, the data 1, 3, 5, and 7 written on the hard disk 2, the data 0, 2, 4, and 6 written on the hard disk 3, and the data 0, 2, 4, and 6 written on the hard disk 4 are combined into RAID 10 on the four hard disks, and the data has characteristics of both RAID 0 and RAID 1.
According to the global caching method for the storage system, caching of write data in the disk of the current dual-control system and the disks of other dual-control systems is achieved through data mirroring of the disks, the safety of the data is improved, and the consistency of the data in the two disks is guaranteed.
In the foregoing embodiment, the storage of the write data in the disks of the other dual control systems is implemented in a mirror image manner, and this embodiment also provides another method for controlling the write data in the disks of the other dual control systems, where the method includes:
and writing data in the caches of the corresponding controllers in the other double-control systems are down-brushed to the disks of the other double-control systems.
It can be understood that when the write data in the target controller cache is flushed to the disk, the write data should have been mirrored in the caches of the corresponding controllers of the other dual control systems. And storing the data in the cache into the disk by data flushing in the current dual-control system, and storing the write data into the disk by other dual-control systems in a flushing mode. However, in specific implementation, there is a situation that data in the current dual-control system is inconsistent with data in other dual-control systems due to midway modification of write data during the flushing, so that after the flushing step is completed by other dual-control systems, it is also necessary to determine whether data in the disks of other dual-control systems is consistent with data in the disk of the current dual-control system, so as to ensure the security of the data. When the data is inconsistent, the process should return to step S12 again to perform the mirroring of the data in the cache again.
It can be understood from the above description that the reading and writing of data in the cache may be faster than the reading and writing in the disk, and in the specific implementation, if the write data in the cache of the target controller is not stored in the cache of another dual control system in a mirror image manner, the flushing operation is performed, and due to the operation such as modification in the middle of the process, the data may not be consistent, and the disk is required to provide services when the data is read and written.
Therefore, on the basis of the above embodiment, in this embodiment, before the step of flushing the write data in the cache of the target controller to the disk of the current dual control system, the method further includes:
judging whether the write data in the cache of the target controller is successfully stored in the caches of the corresponding controllers in other double-control systems in a mirror image manner;
if yes, information representing that the mirroring is completed is sent to the host, and the step of flushing the write data in the cache of the target controller to the disk of the current dual-control system is carried out.
Before the target controller performs the flushing, the global caching method for the storage system first ensures that the data writing is mirrored in the cache of the corresponding controller, sends information to the host after the mirroring is completed, and performs subsequent operations to avoid data inconsistency and improve the service response speed.
In specific implementation, when the corresponding controller fails, the backup caching of the write data cannot be completed, which is not favorable for the safe storage of the data.
On the basis of the foregoing embodiment, in this embodiment, if a corresponding controller in another dual control system fails, the method further includes:
and constructing a corresponding relation between the target controller and another controller in other double-control systems, and taking the other controller as a new corresponding controller.
In specific implementation, when the corresponding controllers in other dual-control systems cannot complete data mirror image storage, the corresponding relationship between the target controller and the other controllers is established to ensure normal backup storage of write data. In this embodiment, the other controller selected is another controller in the other bi-control system. It is understood that, in other embodiments, another controller in the current dual-control system may be selected as a new corresponding controller, and the control system at this time is consistent with the common dual-control system mentioned in the background art, and there may be a case where the system fails to provide service in subsequent use. Therefore, in this embodiment, another controller in the other bi-control system is selected as the corresponding controller, so that the other bi-control system can still provide service when the current bi-control system fails.
On the basis of the foregoing embodiment, in this embodiment, the failure of all controllers in other dual control systems further includes:
and constructing a corresponding relation between the target controller and another controller in the current double-control system, and taking the other controller as a new corresponding controller.
In the embodiment, a worse situation is considered, both the two controllers in the other dual control systems fail, and the target controller cannot complete the mirror storage of the write data in the cache. At this time, in order to ensure data security and service response speed, another controller in the current dual-control system is used as a corresponding controller, and the caching method at this time is a common dual-control system storage method introduced in the background art. In the embodiment, the other controller in the current dual-control system is used as a bottom-pocketing method, so that the write data is backed up in the caches of the two controllers, the data can be read through the caches during reading, and the service response speed is improved.
It can be understood that when the target controller and another controller in the current dual-control system construct a corresponding relationship, it indicates that other dual-control systems have a failure, and in the quad-control system, if there is a failure in the subsequent controller, the backup of the write data in the cache cannot be completed. Therefore, after the step of constructing the corresponding relationship between the target controller and another controller in the current dual-control system, the method further comprises the following steps:
and sending alarm information to the host.
In this embodiment, when the target controller and the corresponding controller are in the same dual control system, an alarm message is sent to the host to remind a technician of a failure of each of the dual controllers in the other dual control systems and a location of the data write cache, and to repair the other dual control systems in time.
In a specific implementation, after the host receives the warning message, the user may forget or be inconvenient to immediately repair the failed other dual control system. Therefore, the host can store the alarm information and the mark information of other double-control systems in the cloud server for storage. So that the technician can conveniently trace back. The flag information of the other bi-control systems is used for marking the other bi-control systems, and may be serial numbers of the other bi-control systems or addresses.
In the foregoing embodiments, a storage system global caching method is described in detail, and the present application also provides embodiments corresponding to the storage system global caching apparatus. It should be noted that the present application describes the embodiments of the apparatus portion from two perspectives, one from the perspective of the function module and the other from the perspective of the hardware.
Fig. 3 is a structural diagram of a global caching apparatus of a storage system according to an embodiment of the present application, and as shown in fig. 3, the apparatus includes:
a determining module 10, configured to determine a target controller corresponding to a current data writing instruction;
the cache module 11 is configured to store write data in the write data instruction into a cache of the target controller;
the mirror image module 12 is configured to mirror write data in the cache of the target controller to the caches of corresponding controllers in other dual control systems;
the down-brushing module 13 is used for down-brushing the write data in the cache of the target controller to a magnetic disk of the current dual-control system;
and the write-in module 14 is used for controlling write-in and write-in of the magnetic disks of other double control systems.
Since the embodiments of the apparatus portion and the method portion correspond to each other, please refer to the description of the embodiments of the method portion for the embodiments of the apparatus portion, which is not repeated here.
According to the global cache device of the storage system, after the target controller which is used as the main controller to execute the data writing instruction is determined, the data writing in the data writing instruction is stored in the cache of the target controller, so that the service response speed is improved. And storing the write data mirror image in the cache of the target controller into the caches of the corresponding controllers in other double-control systems, so as to realize that the write data backup is stored in different double-control systems. And (4) the write data in the cache of the target controller is flushed down to the disk of the current double-control system, and the write data is controlled to be written in the disks of other double-control systems, so that the global cache of the storage system is completed. Compared with the prior art that the cache mirroring is realized in the same double-control system when the double-control system fails, the technical scheme is adopted, the data mirroring in the cache is stored in different double-control systems, and when the current double-control system fails, the service can still be continuously provided through corresponding controllers in other double-control systems, so that the reliability of the cache system is improved.
Fig. 4 is a structural diagram of another storage system global cache apparatus according to an embodiment of the present application, and as shown in fig. 4, the apparatus includes: a memory 20 for storing a computer program;
the processor 21 is configured to implement the steps of the storage system global caching method according to the foregoing embodiment when executing the computer program.
The storage system global cache device provided in this embodiment may include, but is not limited to, a smart phone, a tablet computer, a notebook computer, or a desktop computer.
The processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The Processor 21 may be implemented in at least one hardware form of a Digital Signal Processor (DSP), a Field-Programmable Gate Array (FPGA), and a Programmable Logic Array (PLA). The processor 21 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 21 may be integrated with a Graphics Processing Unit (GPU) which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, the processor 21 may further include an Artificial Intelligence (AI) processor for processing computational operations related to machine learning.
Memory 20 may include one or more computer-readable storage media, which may be non-transitory. Memory 20 may also include high speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used for storing the following computer program 201, wherein after being loaded and executed by the processor 21, the computer program can implement the relevant steps of the storage system global caching method disclosed in any one of the foregoing embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202, data 203, and the like, and the storage manner may be a transient storage manner or a permanent storage manner. Operating system 202 may include, among other things, windows, unix, linux, etc. The data 203 may include, but is not limited to, write data, alarm information, and the like.
In some embodiments, the storage system global caching apparatus may further include a display 22, an input/output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.
Those skilled in the art will appreciate that the architecture shown in FIG. 4 does not constitute a limitation of the storage system global caching mechanism and may include more or fewer components than those shown.
The storage system global cache device provided by the embodiment of the application comprises a memory and a processor, and when the processor executes a program stored in the memory, the following method can be realized: determining a target controller corresponding to the current data writing instruction; storing write data in the write data instruction into a cache of a target controller; storing the write data in the cache of the target controller into the caches of the corresponding controllers in other double-control systems in a mirror manner; the write data in the cache of the target controller is flushed down to a magnetic disc of the current double-control system; and controlling the writing of the write data in the magnetic disks of other double-control systems.
The storage system global cache device provided by the embodiment of the application stores the data in different caches of the dual-control system when the data in the caches are stored in a mirror image mode, and writes the data in a disk. When the current double-control system fails, the service can still be continuously provided through the corresponding controllers in other double-control systems, so that the reliability of the cache system is improved.
Finally, the application also provides a corresponding embodiment of the computer readable storage medium. The computer-readable storage medium has stored thereon a computer program which, when being executed by a processor, carries out the steps as set forth in the above-mentioned method embodiments.
It is to be understood that if the method in the above embodiments is implemented in the form of software functional units and sold or used as a stand-alone product, it can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application may be embodied in the form of a software product, which is stored in a storage medium and executes all or part of the steps of the methods described in the embodiments of the present application, or all or part of the technical solutions. And the aforementioned storage medium includes: a U disk, a removable disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, an optical disk, or other various media capable of storing program codes.
The computer-readable storage medium provided by the embodiment of the application stores write data in a write data instruction into a cache of a target controller after determining the target controller serving as a main controller to execute the write data instruction, so as to improve the service response speed. And the write data in the cache of the target controller is stored in the caches of the corresponding controllers in other double-control systems in a mirror manner, so that the write data backup is stored in different double-control systems. And the write data in the cache of the target controller is flushed down to the disk of the current double-control system, and the write data is controlled to be written in the disks of other double-control systems, so that the global cache of the storage system is completed. Compared with the prior art that the cache mirroring is realized in the same double-control system when the double-control system fails, the technical scheme is adopted, the data mirroring in the cache is stored in different double-control systems, and when the current double-control system fails, the service can still be continuously provided through corresponding controllers in other double-control systems, so that the reliability of the cache system is improved.
The above describes a method, an apparatus, and a medium for global caching of a storage system provided by the present application in detail. The embodiments are described in a progressive manner in the specification, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description. It should be noted that, for those skilled in the art, it is possible to make several improvements and modifications to the present application without departing from the principle of the present application, and such improvements and modifications also fall within the scope of the claims of the present application.
It is further noted that, in the present specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising a," "8230," "8230," or "comprising" does not exclude the presence of additional like elements in a process, method, article, or apparatus that comprises the element.

Claims (15)

1. A storage system global caching method is characterized by comprising the following steps:
determining a target controller corresponding to the current data writing instruction;
storing the write data in the write data instruction into a cache of the target controller;
storing the write data in the cache of the target controller into caches of corresponding controllers in other double-control systems in a mirror manner;
the write data in the cache of the target controller is flushed down to a magnetic disc of the current double-control system;
and controlling the write-in of the write data in the magnetic disks of the other double control systems.
2. The method according to claim 1, wherein the controlling the write data written in the disks of the other bi-control systems comprises:
and storing the data in the disk of the current double-control system into the disks of the other double-control systems in a mirror mode.
3. The storage system global caching method according to claim 1, wherein the controlling of writing the write data in the disk of the other dual-control system comprises:
and flushing the write data in the cache of the corresponding controller in the other double-control system to the disks of the other double-control system.
4. The storage system global caching method according to claim 3, wherein after the step of flushing the write data in the cache of the corresponding controller in the other bi-control system to a disk of the other bi-control system, the method further comprises:
judging whether the data in the disks of the other double control systems are the same as the data in the disk of the current double control system;
and if not, returning to the step of flushing the write data in the cache of the corresponding controller in the other double-control system to the magnetic disks of the other double-control system.
5. The method for globally caching storage systems according to claim 2, further comprising, before the step of flushing the write data in the cache of the target controller to a disk of a current dual-control system, the step of:
judging whether the write data in the cache of the target controller is successfully stored in the caches of the corresponding controllers in the other double-control systems in a mirror image manner;
if so, sending information representing that the mirroring is completed to the host, and performing the step of flushing the write data in the cache of the target controller to a disk of the current dual-control system.
6. The storage system global caching method according to claim 5, wherein if the corresponding controller in the other bi-control system fails, the method further comprises:
and constructing a corresponding relation between the target controller and another controller in the other double-control system, and taking the other controller as a new corresponding controller.
7. The storage system global caching method according to claim 5, wherein the controllers in the other bi-control systems all fail, further comprising:
and constructing a corresponding relation between the target controller and the other controller in the current double-control system, and taking the other controller as a new corresponding controller.
8. The storage system global caching method according to claim 7, further comprising, after the step of constructing a correspondence between the target controller and another controller in the current dual-control system:
and sending alarm information to the host.
9. The storage system global caching method according to claim 8, further comprising: and after receiving the alarm information, the host stores the alarm information and the mark information of the other double-control systems in a cloud server for storage.
10. The storage system global caching method according to claim 1, wherein the target controller is connected with the corresponding controllers in other double-control systems through RoCE.
11. The method according to claim 1, wherein the storage system is a four-control system, and both the disks of the current dual-control system and the disks of the other dual-control systems are configured in a RAID1 mode.
12. The method according to claim 1, wherein the storage system is an eight-control system, and both the disks of the current bi-control system and the disks of the other bi-control systems are configured in a RAID 10 mode.
13. A storage system global caching apparatus, comprising:
the determining module is used for determining a target controller corresponding to the current data writing instruction;
the cache module is used for storing the write data in the write data instruction into the cache of the target controller;
the mirror image module is used for storing the write data in the cache of the target controller into the caches of the corresponding controllers in other double-control systems in a mirror image mode;
the down-brushing module is used for down-brushing the write data in the cache of the target controller to a magnetic disk of the current double-control system;
and the write-in module is used for controlling the write-in of the write data in the magnetic disks of the other double control systems.
14. A global cache device of a storage system is characterized by comprising a memory, a cache module and a cache module, wherein the memory is used for storing a computer program;
a processor for implementing the steps of the storage system global caching method of any one of claims 1 to 12 when executing said computer program.
15. A computer-readable storage medium, characterized in that a computer program is stored on the computer-readable storage medium, which computer program, when being executed by a processor, carries out the steps of the storage system global caching method according to any one of claims 1 to 12.
CN202211037690.9A 2022-08-26 2022-08-26 Global caching method, device and medium for storage system Pending CN115408207A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211037690.9A CN115408207A (en) 2022-08-26 2022-08-26 Global caching method, device and medium for storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211037690.9A CN115408207A (en) 2022-08-26 2022-08-26 Global caching method, device and medium for storage system

Publications (1)

Publication Number Publication Date
CN115408207A true CN115408207A (en) 2022-11-29

Family

ID=84161832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211037690.9A Pending CN115408207A (en) 2022-08-26 2022-08-26 Global caching method, device and medium for storage system

Country Status (1)

Country Link
CN (1) CN115408207A (en)

Similar Documents

Publication Publication Date Title
US7461201B2 (en) Storage control method and system for performing backup and/or restoration
US20190310957A1 (en) Method for supporting erasure code data protection with embedded pcie switch inside fpga+ssd
US8433888B2 (en) Network boot system
US9823955B2 (en) Storage system which is capable of processing file access requests and block access requests, and which can manage failures in A and storage system failure management method having a cluster configuration
US20140122816A1 (en) Switching between mirrored volumes
JP2016517122A (en) Selective retention of application program data migrated from system memory to non-volatile data storage
CN102047237A (en) Providing object-level input/output requests between virtual machines to access a storage subsystem
US20170220249A1 (en) Systems and Methods to Maintain Consistent High Availability and Performance in Storage Area Networks
US11436086B2 (en) Raid storage-device-assisted deferred parity data update system
US20220334733A1 (en) Data restoration method and related device
CN115061634A (en) System service load distribution method, device and medium
CN110618785A (en) Dual-control storage system
CN114816270A (en) Storage system global caching method, device and medium
US20200183838A1 (en) Dynamic cache resize taking into account underlying raid characteristics
US10956271B2 (en) Point-in-time copy on a remote system
CN115408207A (en) Global caching method, device and medium for storage system
US11500741B2 (en) Data write method and storage system
US11681443B1 (en) Durable data storage with snapshot storage space optimization
US11315028B2 (en) Method and apparatus for increasing the accuracy of predicting future IO operations on a storage system
WO2018055686A1 (en) Information processing system
WO2016006108A1 (en) Storage and control method therefor
US10229180B2 (en) Consistent point-in-time copy of a consistent asynchronous mirror target without pausing a consistent asynchronous mirror copy
US11755426B2 (en) Automatic recovery of locking filesystem shared between virtual tape library nodes
US11922073B2 (en) Non-disruptive updating of virtual tape emulation applications
US20160357479A1 (en) Storage control apparatus

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination