CN115048048A - Data storage system, data storage method, storage medium, and electronic device - Google Patents

Data storage system, data storage method, storage medium, and electronic device Download PDF

Info

Publication number
CN115048048A
CN115048048A CN202210612596.5A CN202210612596A CN115048048A CN 115048048 A CN115048048 A CN 115048048A CN 202210612596 A CN202210612596 A CN 202210612596A CN 115048048 A CN115048048 A CN 115048048A
Authority
CN
China
Prior art keywords
storage
storage device
target
data
storage devices
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
CN202210612596.5A
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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua 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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202210612596.5A priority Critical patent/CN115048048A/en
Publication of CN115048048A publication Critical patent/CN115048048A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/202Error 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 processing functionality is redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Hardware Redundancy (AREA)

Abstract

The embodiment of the invention provides a data storage system, a data storage method, a storage medium and an electronic device, wherein the system comprises: the switch is respectively connected with the plurality of storage devices to form a target cluster, and the plurality of storage devices are in communication connection through the target cluster; and under the condition that the failed storage equipment with control failure exists in the other storage equipment, determining a substitute storage equipment for managing a first storage unit OF the failed storage equipment from the plurality OF storage equipment so as to indicate the substitute storage equipment to control the failed storage equipment to store target data. By the method and the device, the problem of low data storage reliability in the related technology is solved, and the effect of improving the data storage reliability is achieved.

Description

Data storage system, data storage method, storage medium, and electronic device
Technical Field
The embodiment of the invention relates to the field of storage, in particular to a data storage system, a data storage method, a storage medium and an electronic device.
Background
In the related art, in order to enhance the reliability of the overall storage scheme, the full flash storage system is configured by networking a plurality of storage devices to form a distributed cluster, which is also called cloud storage. Fig. 1 is a schematic diagram of a cloud storage cluster architecture in the related art, and as shown in fig. 1, A, B, C, D, E three storage devices are connected to a switch through a network to perform local area network networking. Five devices form a cloud storage cluster. When one of the devices fails, the originally carried service of the failed device is taken over by the other devices. And the data stored by the fault equipment can be recovered through an erasure code algorithm stored in the cloud. The recovery principle is to divide the original complete data slice into 4 data, and the 4 data are processed by erasure coding algorithm to calculate 1 data. Then, the 5 data (including 4 sliced original data and one calculated data) are respectively stored in 5 devices, and when one device fails, one data stored in the device is lost. And the cloud storage cluster calculates and recovers the lost data through the other 4 data by using an erasure code algorithm. It is to be noted here that: if two devices fail, that is, two copies of data are lost, the two lost copies cannot be recovered from only three stored copies of data. However, when a device fails at 5 or more devices, the data of the failed device can be recovered by an erasure correction code algorithm. Erasure coding algorithms consume CPU resources. Meanwhile, when the device fails, the flash memory resource taken over by the device is also offline, so that the data of the device needs to be migrated to another device, and the data migration can affect the performance of the whole service. When the number of devices is below 5, according to the above principle, when 5 parts of data are distributed to each device in the cluster, two parts of data are inevitably stored in one device, and when the device storing two parts of data fails, the data of the device cannot be recovered. In particular, in video data storage, the video stored by the malfunctioning device cannot be played back in real time.
Therefore, the related art has the problem of low data storage reliability.
In view of the above problems in the related art, no effective solution has been proposed.
Disclosure of Invention
Embodiments of the present invention provide a data storage system, a data storage method, a storage medium, and an electronic device, so as to at least solve the problem of low reliability of data storage in the related art.
According to an embodiment of the present invention, there is provided a data storage system including: the switch is respectively connected with a plurality of storage devices to form a target cluster, and the plurality of storage devices are in communication connection through the target cluster; each target storage device in the plurality OF storage devices is connected with other storage devices through an NVME-OF bus, the target storage device accesses to memories OF the other storage devices through the NVME-OF bus, and determines a replacement storage device for managing a first storage unit OF the failed storage device from the plurality OF storage devices to indicate the replacement storage device to control the failed storage device to store target data when the failed storage device controlling the failure exists in the other storage devices, wherein the target data are data to be stored in the failed storage device.
According to another embodiment of the present invention, there is provided a data storage method applied to the data storage system, including: determining the operating state OF other storage devices included in a plurality OF storage devices, wherein the plurality OF storage devices are connected with each other through an NVME-OF bus; and under the condition that the operating state indicates that a failed storage device with control failure exists in the other storage devices, determining a substitute storage device to be used for managing the data to be stored of the failed storage device from the plurality of storage devices so as to indicate the substitute storage device to control the failed storage device to store target data.
According to yet another embodiment of the invention, there is also provided a computer-readable storage medium having a computer program stored therein, wherein the computer program, when executed by a processor, implements the steps of the method as set forth in any of the above.
According to yet another embodiment of the present invention, there is also provided an electronic device, including a memory in which a computer program is stored and a processor configured to execute the computer program to perform the steps in any of the above method embodiments.
The data storage system comprises the switch and the storage devices, wherein the switch is respectively connected with the storage devices to form a target cluster, and the storage devices are in communication connection through the target cluster. Each target storage device in the plurality OF storage devices is connected with other storage devices through an NVME-OF bus, the target storage device accesses memories OF the other storage devices through the NVME-OF bus, and under the condition that a failure storage device with control failure exists in the other storage devices, a replacement storage device for managing a first storage unit OF the failure storage device is determined from the plurality OF storage devices, and the replacement storage device controls the failure storage device to store target data to be stored in the failure storage device. Since the target storage device can access the memories OF other storage devices through the NVME-OF bus, when the failure storage device fails, the control target data is stored in the failure storage device. The method and the device can still be controlled by other devices when the storage device fails, and data recovery and data migration are not needed, so that the problem of low data storage reliability in the related technology can be solved, and the effect of improving the data storage reliability is achieved.
Drawings
FIG. 1 is a schematic diagram of a cloud storage cluster architecture in the related art;
FIG. 2 is a schematic structural diagram of a data storage system according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a data storage system architecture according to an exemplary embodiment of the present invention;
FIG. 4 is a schematic diagram of a target storage device architecture according to an exemplary embodiment of the present invention;
fig. 5 is a block diagram of a hardware structure of a mobile terminal of a data storage method according to an embodiment of the present invention;
FIG. 6 is a flow chart of a data storage method according to an embodiment of the present invention.
Detailed Description
Embodiments of the present invention will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
In this embodiment, a data storage system is provided, and fig. 2 is a schematic structural diagram of a data storage system according to an embodiment of the present invention, and as shown in fig. 2, the system includes:
the switch 22 is respectively connected with a plurality of storage devices to form a target cluster, and the plurality of storage devices are in communication connection through the target cluster;
the storage system comprises a plurality OF storage devices 24, wherein each target storage device included in the plurality OF storage devices is connected with other storage devices through an NVME-OF bus, the target storage device accesses memories OF the other storage devices through the NVME-OF bus, and when a failed storage device controlling a failure exists in the other storage devices, a replacement storage device for managing a first storage unit OF the failed storage device is determined from the plurality OF storage devices to instruct the replacement storage device to control the failed storage device to store target data, and the target data is data to be stored in the failed storage device.
In the above embodiments, a plurality of storage devices may be connected to the switch to form the target cluster. Through the target cluster, the plurality of storage devices may communicate with each other, determining the status of each other. Wherein the status includes an online status, an offline status, and the like. The plurality of storage devices may be connected to the switch via a network, including a wireless network, a wired network. The storage devices can be connected with each other through an NVME-OF bus, each target storage device in the storage devices is connected with other storage devices through the NVME-OF bus, the target storage device can give up memories OF the other storage devices through the NVME-OF bus, and under the condition that a failed storage device with control failure exists in the other storage devices, a replacement storage device is determined from the storage devices. And controlling the replacement storage device to manage a first storage unit of the failed storage device, and storing the target data to be stored in the failed storage device in the first storage unit. The other storage devices are storage devices, other than the target storage device, included in the multiple storage devices, and the multiple storage devices follow a PCIE protocol. Information is communicated by optical signals while the replacement storage device manages the first storage unit of the failed storage device. Wherein NVMe-af is short for NVMe over Fabrics, intended to connect hosts to storage over a network fabric using NVMe. The NVMe over Fabrics protocol defines the manner in which NVMe functionality is implemented using various common transport layer protocols. The host may be assisted in accessing off-node NVMe SSD resources by fabric (e.g., RDMA or fibre channel) instead of PCIe for long-line transfers.
In the above embodiment, when determining to replace a storage device, the target storage device may be a master device, and the master device may determine, through the target cluster, states of other storage devices, determine whether the failed storage device is stored in the other storage devices, and when storing the failed storage device, determine to replace the storage device. When determining the replacement storage device, the target storage device, that is, the master device may determine according to the number of devices that each storage device takes over, and select a storage device with a small number of devices that take over as the replacement storage device. The storage device having the smallest distance from the failed storage device may also be determined as the replacement storage device.
In the above embodiment, a schematic diagram of the data storage system may be shown in fig. 3, and as shown in fig. 3, when three storage devices are included in the data storage system, the storage devices A, B, C are connected to the switch through the network to form a local area network cluster. The storage devices A, B, C are interconnected by an NVMe-od fiber optic bus. The storage device a can access or take over the storage resources, i.e., storage units, oF the storage device B or the storage device C through the NVMe-od fiber bus. Similarly, storage device B may take over the storage resources oF storage device a and storage device C via NVMe-od fibre optic bus, and storage device C may take over the storage resources oF storage device a and storage device B via NVMe-od fibre optic bus. The storage device A is set as a main device, and through local area network information interaction, the storage device A can know whether the storage device B and the storage device C are online or whether a fault occurs.
The data storage system comprises the switch and the storage devices, wherein the switch is respectively connected with the storage devices to form a target cluster, and the storage devices are in communication connection through the target cluster. Each target storage device in the plurality OF storage devices is connected with other storage devices through an NVME-OF bus, the target storage device accesses memories OF the other storage devices through the NVME-OF bus, and under the condition that a failure storage device controlling failure exists in the other storage devices, a replacement storage device used for managing a first storage unit OF the failure storage device is determined from the plurality OF storage devices, and the replacement storage device controls the failure storage device to store target data to be stored in the failure storage device. Since the target storage device can access the memories OF other storage devices through the NVME-OF bus, when the failure storage device fails, the control target data is stored in the failure storage device. The method and the device can still be controlled by other devices when the storage device fails, and data recovery and data migration are not needed, so that the problem of low data storage reliability in the related technology can be solved, and the effect of improving the data storage reliability is achieved.
In one exemplary embodiment, the target storage device includes: the target main control system is connected with a memory through a first NVME-OF interface and is used for controlling the memory to store data to be stored in the target storage equipment; the memory is used for storing data to be stored in the target storage device; and the power supply module is connected with the target master control system through a first power supply path and connected with the memory through a second power supply path and is used for respectively supplying power to the target master control system and the memory. In this embodiment, the target storage device may include a target control system, a memory, and a power supply module. The power supply module can be connected with the target main control system through a first power supply path and connected with the memory through a second power supply path. The target main control system can be connected with the memory through the first NVME-OF interface so as to control the memory to store data to be stored in the target storage device. And a target main control system and a memory in the target storage equipment are respectively powered by different channels, so that the target main control system and the memory are completely decoupled. The separated structure also ensures that the memory can still work after the target master control system in the storage device is hung up.
In one exemplary embodiment, the memory includes: the target controller is connected with the target main control system through the first NVME-OF interface and used for establishing the connection between the target main control system and a second storage unit so that the target main control system controls the second storage unit to store data to be stored in the target storage equipment; and the second storage unit is connected with the target controller and used for storing data to be stored in the target storage equipment. In this embodiment, the memory may include a target controller and a second storage unit. The target controller is connected with the target main control system through the first NVME-OF interface, so that the target main control system is connected with the second storage unit, and the target main control system can control the second storage unit to store data. The second storage unit may be a flash memory array and the target controller may be an NVME-OF controller. The target controller follows the PCIE protocol.
In an exemplary embodiment, the target controller is further connected to the other storage device through a second NVME-OF interface, and is configured to establish a connection between the target master control system and a third storage unit OF the other storage device through the target controller. In this embodiment, the target controller may further be connected to other storage devices through the second NVME-OF interface, so that the target main control system may be connected to the third storage units OF other storage devices through the second NVME-OF interface. When the master control system for controlling the third storage unit fails, the target master control system can control the third storage unit to store data.
In one exemplary embodiment, the memory cell comprises a flash memory array. In this embodiment, a schematic structural diagram oF a target storage device may be shown in fig. 4, as shown in fig. 4, the target storage device includes a power supply module, a master control system, and storage resources, where the storage resources include an NVMe-af controller and a flash memory array. The main control system and the storage resources in the storage device are respectively powered by different paths. The master control system and the storage resources are completely decoupled. The separated architecture also ensures that the storage resources of the storage device can still work after the main control system in the storage device is hung. Under the normal working mode of the storage cluster, the storage device A, the storage device B and the storage device C respectively process own services and respectively manage own storage resources. In a storage cluster failure mode, assuming that a storage device a serving as a master device in a cluster monitors that a master control system of a storage device B is hung, the storage device a performs unified scheduling on storage resources in the storage device B and reasonably allocates the storage resources to the storage device a and the storage device C to take over. The storage resources in the storage device B which has been suspended are ensured to be always on line, the flash memory array in the storage device B can continue to undertake the work of storing data, and the stored data can also be read normally by the user. Similarly, if the master control system of the storage device C fails, the storage resources of the storage device C are taken over by the storage device a and the storage device B, so that the storage resources of the storage device C are ensured to be always online.
The method embodiments provided in the embodiments of the present application may be executed in a mobile terminal, a computer terminal, or a similar computing device. Taking the mobile terminal as an example, fig. 5 is a block diagram of a hardware structure of the mobile terminal of the data storage method according to the embodiment of the present invention. As shown in fig. 5, the mobile terminal may comprise one or more processors 502 (only one is shown in fig. 5) (the processor 502 may comprise, but is not limited to, a processing means such as a microprocessor MCU or a programmable logic device FPGA) and a memory 504 for storing data, wherein the mobile terminal may further comprise a transmission device 506 for communication functions and an input-output device 508. It will be understood by those skilled in the art that the structure shown in fig. 5 is only an illustration and is not intended to limit the structure of the mobile terminal. For example, the mobile terminal may also include more or fewer components than shown in FIG. 5, or have a different configuration than shown in FIG. 5.
The memory 504 can be used for storing computer programs, for example, software programs and modules of application software, such as computer programs corresponding to the data storage method in the embodiment of the present invention, and the processor 502 executes various functional applications and data processing by running the computer programs stored in the memory 504, that is, implementing the method described above. The memory 504 may include high-speed random access memory, and may also include 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 504 may further include memory located remotely from the processor 502, which may be connected to the mobile terminal via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 506 is used to receive or transmit data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the mobile terminal. In one example, the transmission device 506 includes a Network adapter (NIC) that can be connected to other Network devices through a base station to communicate with the internet. In one example, the transmission device 506 may be a Radio Frequency (RF) module, which is used to communicate with the internet via wireless.
In this embodiment, a data storage method is provided, where any of the above embodiments is applied to the data storage system, and fig. 6 is a flowchart of the data storage method according to the embodiment of the present invention, as shown in fig. 6, where the flowchart includes the following steps:
step S602, determining the operating states OF other storage devices included in a plurality OF storage devices, wherein the plurality OF storage devices are connected with each other through an NVME-OF bus;
step S604, in a case that the operating state indicates that a failed storage device with a control failure exists in the other storage devices, determining, from the plurality of storage devices, a replacement storage device to be stored for managing the failed storage device, so as to indicate the replacement storage device to control the failed storage device to store target data.
In the above embodiments, a plurality of storage devices may be connected to the switch to form the target cluster. Through the target cluster, a plurality of storage devices can communicate with each other to determine the operation state of each other. The running state includes an online state, an offline state, and the like. The offline state stores the failed storage device. The plurality of storage devices may be connected to the switch via a network, including a wireless network, a wired network. The storage devices can be connected with each other through an NVME-OF bus, each target storage device in the storage devices is connected with other storage devices through the NVME-OF bus, the target storage device can give up memories OF the other storage devices through the NVME-OF bus, and under the condition that a failed storage device with control failure exists in the other storage devices, a replacement storage device is determined from the storage devices. And controlling the replacement storage device to manage a first storage unit of the failed storage device, and storing the target data to be stored in the failed storage device in the first storage unit. The other storage devices are storage devices, other than the target storage device, included in the plurality of storage devices, and the plurality of storage devices follow a PCIE protocol. The replacement storage device communicates information via an optical signal when managing the first storage unit of the failed storage device. Wherein NVMe-af is short for NVMe over Fabrics, intended to connect hosts to storage over a network fabric using NVMe. The NVMe over Fabrics protocol defines the way in which NVMe functionality is implemented using various common transport layer protocols. The host may be assisted in accessing off-node NVMe SSD resources by fabric (e.g., RDMA or fibre channel) instead of PCIe for long-line transfers.
In the above embodiment, when determining to replace a storage device, the target storage device may be a master device, and the master device may determine, through the target cluster, states of other storage devices, determine whether the failed storage device is stored in the other storage devices, and when storing the failed storage device, determine to replace the storage device. When determining the replacement storage device, the target storage device, that is, the master device may determine, according to the number of devices that each storage device takes over, and select a storage device with a smaller number of taking over devices as the replacement storage device. The storage device having the smallest distance from the failed storage device may also be determined as the replacement storage device.
In the above embodiment, a schematic diagram of the data storage system may be shown in fig. 3, and as shown in fig. 3, when three storage devices are included in the data storage system, the storage devices A, B, C are connected to the switch through the network to form a local area network cluster. The storage devices A, B, C are interconnected by an NVMe-od fiber optic bus. The storage device a can access or take over the storage resources, i.e., storage units, oF the storage device B or the storage device C through the NVMe-od fiber bus. Similarly, storage device B may take over the storage resources oF storage device a and storage device C through NVMe-od fibre optic bus, and storage device C may take over the storage resources oF storage device a and storage device B through NVMe-od fibre optic bus. The storage device A is set as a main device, and through local area network information interaction, the storage device A can know whether the storage device B and the storage device C are online or whether a fault occurs.
Optionally, the execution subject of the above steps may be a target storage device, but is not limited thereto.
The data storage system comprises the switch and the storage devices, wherein the switch is respectively connected with the storage devices to form a target cluster, and the storage devices are in communication connection through the target cluster. Each target storage device in the plurality OF storage devices is connected with other storage devices through an NVME-OF bus, the target storage device accesses memories OF the other storage devices through the NVME-OF bus, and under the condition that a failure storage device with control failure exists in the other storage devices, a replacement storage device for managing a first storage unit OF the failure storage device is determined from the plurality OF storage devices, and the replacement storage device controls the failure storage device to store target data to be stored in the failure storage device. Wherein, the plurality of storage devices all follow the PCIE protocol. Since the target storage device can access the memories OF other storage devices through the NVME-OF bus, when the failure storage device fails, the control target data is stored in the failure storage device. The method and the device can still be controlled by other devices when the storage device fails, and data recovery and data migration are not needed, so that the problem of low data storage reliability in the related technology can be solved, and the effect of improving the data storage reliability is achieved.
In an exemplary embodiment, determining an alternative storage device to be used for managing the data to be stored of the other storage devices from the plurality of storage devices includes: determining a first storage device from a plurality of storage devices, and determining the first storage device as the alternative storage device; or determining N second storage devices from the plurality of storage devices, and determining the N second storage devices as the alternative storage devices, wherein each storage device included in the N second storage devices manages a part of storage subunits included in the storage unit of the failed storage device, the storage subunits managed by each storage device are different, and N is an integer greater than 1. In this embodiment, the storage unit of the storage device may be a flash memory array, each storage unit includes a plurality of storage sub-units, and each storage sub-unit may be managed separately. The number of the replacement memory devices may be one or more. When there are multiple replacement storage devices, each replacement storage device may manage multiple storage subunits, respectively, and each replacement storage device manages different storage subunits.
In one exemplary embodiment, determining the operational status of other storage devices included in the plurality of storage devices includes: determining a target cluster where a plurality of storage devices are located; determining the operating state by the target cluster. In this embodiment, the operating status of other storage devices may be determined by the target cluster. It is ensured that when a device fails, the flash memory resources of the failed device remain on-line and available to other devices in the cluster. Compared with a traditional cloud storage cluster, data recovery is not needed, data migration is not needed, particularly in video data storage, video data of fault equipment can be guaranteed to be played back in real time, and a full-flash cluster management framework is more reliable.
In the foregoing embodiment, the main control system in the storage device and the storage resource are separately powered and independently operated, and the flash memory resources oF the storage device in the cluster are interconnected in pairs through the NVMe-af bus. When any storage device master control system in the cluster is hung up, the flash memory resources of the storage device master control system can be taken over by other storage devices in the cluster. The effect that the storage resources of the fault equipment are always on line is achieved. The method can ensure that the storage resources managed by a certain storage device main control system in the cluster can be continuously taken over by other devices in the cluster after the certain storage device main control system in the cluster fails. The user may continue to access the stored data in the failed device. The flash memory array in the failed device is always on-line.
Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but the former is a better implementation mode in many cases. Based on such understanding, the technical solutions of the present invention may 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 instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present invention.
It should be noted that, the above modules may be implemented by software or hardware, and for the latter, the following may be implemented, but not limited to: the modules are all positioned in the same processor; alternatively, the modules are respectively located in different processors in any combination.
Embodiments of the present invention also provide a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the method as set forth in any of the above.
In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to: various media capable of storing computer programs, such as a usb disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk.
Embodiments of the present invention also provide an electronic device comprising a memory having a computer program stored therein and a processor arranged to run the computer program to perform the steps of any of the above method embodiments.
In an exemplary embodiment, the electronic apparatus 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.
For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary embodiments, and details of this embodiment are not repeated herein.
It will be apparent to those skilled in the art that the various modules or steps of the invention described above may be implemented using a general purpose computing device, they may be centralized on a single computing device or distributed across a network of computing devices, and they may be implemented using program code executable by the computing devices, such that they may be stored in a memory device and executed by the computing device, and in some cases, the steps shown or described may be performed in an order different than that described herein, or they may be separately fabricated into various integrated circuit modules, or multiple ones of them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the principle of the present invention shall be included in the protection scope of the present invention.

Claims (10)

1. A data storage system, comprising:
the switch is respectively connected with a plurality of storage devices to form a target cluster, and the plurality of storage devices are in communication connection through the target cluster;
each target storage device in the plurality OF storage devices is connected with other storage devices through an NVME-OF bus, the target storage device accesses to memories OF the other storage devices through the NVME-OF bus, and determines a replacement storage device for managing a first storage unit OF the failed storage device from the plurality OF storage devices to indicate the replacement storage device to control the failed storage device to store target data when the failed storage device controlling the failure exists in the other storage devices, wherein the target data are data to be stored in the failed storage device.
2. The data storage system of claim 1, wherein the target storage device comprises:
the target main control system is connected with a memory through a first NVME-OF interface and is used for controlling the memory to store data to be stored in the target storage equipment;
the memory is used for storing data to be stored in the target storage device;
and the power supply module is connected with the target master control system through a first power supply path and connected with the memory through a second power supply path and is used for respectively supplying power to the target master control system and the memory.
3. The data storage system of claim 2, wherein the memory comprises:
the target controller is connected with the target main control system through the first NVME-OF interface and used for establishing the connection between the target main control system and a second storage unit so that the target main control system controls the second storage unit to store data to be stored in the target storage equipment;
and the second storage unit is connected with the target controller and used for storing data to be stored in the target storage equipment.
4. The data storage system OF claim 3, wherein the target controller is further connected to the other storage devices through a second NVME-OF interface, and configured to establish a connection between the target host system and a third storage unit OF the other storage devices through the target controller.
5. The data storage system of claim 3, wherein the storage unit comprises a flash memory array.
6. A data storage method applied to the data storage system according to any one of claims 1 to 5, comprising:
determining the operating state OF other storage devices included in a plurality OF storage devices, wherein the plurality OF storage devices are connected with each other through an NVME-OF bus;
and under the condition that the operating state indicates that a failed storage device with control failure exists in the other storage devices, determining a substitute storage device to be used for managing the data to be stored of the failed storage device from the plurality of storage devices so as to indicate the substitute storage device to control the failed storage device to store target data.
7. The method of claim 6, wherein determining an alternate storage device from the plurality of storage devices to use to manage the data to be stored for the other storage device comprises:
determining a first storage device from a plurality of storage devices, and determining the first storage device as the alternative storage device; or
Determining N second storage devices from the plurality of storage devices, and determining the N second storage devices as the alternative storage devices, wherein each storage device included in the N second storage devices manages a part of storage subunits included in a storage unit of the failed storage device, the storage subunits managed by each storage device are different, and N is an integer greater than 1.
8. The method of claim 6, wherein determining the operational status of other storage devices included in the plurality of storage devices comprises:
determining a target cluster in which a plurality of storage devices are located;
determining the operating state by the target cluster.
9. A computer-readable storage medium, in which a computer program is stored, which computer program, when being executed by a processor, carries out the steps of the method of one of claims 6 to 8.
10. An electronic device comprising a memory and a processor, wherein the memory has stored therein a computer program, and wherein the processor is arranged to execute the computer program to perform the method of any of claims 6 to 8.
CN202210612596.5A 2022-05-31 2022-05-31 Data storage system, data storage method, storage medium, and electronic device Pending CN115048048A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210612596.5A CN115048048A (en) 2022-05-31 2022-05-31 Data storage system, data storage method, storage medium, and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210612596.5A CN115048048A (en) 2022-05-31 2022-05-31 Data storage system, data storage method, storage medium, and electronic device

Publications (1)

Publication Number Publication Date
CN115048048A true CN115048048A (en) 2022-09-13

Family

ID=83159936

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210612596.5A Pending CN115048048A (en) 2022-05-31 2022-05-31 Data storage system, data storage method, storage medium, and electronic device

Country Status (1)

Country Link
CN (1) CN115048048A (en)

Similar Documents

Publication Publication Date Title
CN102035862B (en) Configuration node fault transfer method and system in SVC cluster
US20160140003A1 (en) Non-disruptive controller replacement in a cross-cluster redundancy configuration
US8612973B2 (en) Method and system for handling interrupts within computer system during hardware resource migration
CN102473157A (en) Virtual hot inserting functions in a shared I/O environment
US20120218993A1 (en) Switch, information processing apparatus, and information processing system
US8793514B2 (en) Server systems having segregated power circuits for high availability applications
CN104572241A (en) Method and device for switching over application programs and system
US11979335B2 (en) Network controller
CN112965806B (en) Method and device for determining resources
CN116881053B (en) Data processing method, exchange board, data processing system and data processing device
US11372702B2 (en) Optimized high availability management using cluster-wide view
US10305987B2 (en) Method to syncrhonize VSAN node status in VSAN cluster
CN112073499A (en) Dynamic service method of multi-machine type cloud physical server
CN115225642B (en) Elastic load balancing method and system of super fusion system
CN115048048A (en) Data storage system, data storage method, storage medium, and electronic device
US8935695B1 (en) Systems and methods for managing multipathing configurations for virtual machines
AU2021266891B2 (en) Fencing non-responding ports in a network fabric
CN106301877A (en) The upgrade method of a kind of Virtual NE and device
CN113535471A (en) Cluster server
CN112564968B (en) Fault processing method, device and storage medium
US20220263707A1 (en) Storage Area Network Connectivity Management Using Switch Fabric Conditions
CN113190184B (en) Hardware cluster device and storage equipment management method
Ogawa et al. Virtual network allocation for fault tolerance balanced with physical resources consumption in a multi-tenant data center
CN113961491A (en) Data transmission method, device, routing equipment and computer readable storage medium
CN112702404A (en) Multi-controller NAS high-availability method and equipment

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