Storage system, cluster node, system, storage resource scheduling method and device

By introducing a first switch into the storage system, and directly connecting multiple storage controllers and memory, the problem of low data access efficiency caused by computing and storage coupling is solved, and efficient resource utilization and flexible expansion capabilities are achieved.

CN119045750BActive Publication Date: 2025-04-29INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411546272.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-01
Publication Date
2025-04-29
Estimated Expiration
2044-11-01

AI Technical Summary

Technical Problem

The coupling of computing and storage in the storage system makes it impossible for data to directly access the storage medium, reducing resource utilization and access efficiency.

Method used

A storage system is designed, including a host, a first switch, a first memory and a plurality of storage controllers, and directly connects a plurality of storage controllers and the first memory through the first switch to realize sharing and scheduling of storage resources.

Benefits of technology

By decoupling computing and storage, data can be directly accessed to the storage medium, improve resource utilization and access efficiency, support on-demand expansion and independent upgrades, and reduce resource waste of storage controllers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119045750B_ABST
    Figure CN119045750B_ABST
Patent Text Reader

Abstract

The present invention discloses a storage system, a cluster node, a system, a storage resource scheduling method and a device, and relates to the field of server technology. A host is connected to a plurality of storage controllers; the plurality of storage controllers are directly connected to a first switch; the first switch is connected to a first memory. The first memory and the host are separated to realize the decoupling of computing and media, and memory spaces with different performance and capacity can be configured according to application needs. The plurality of storage controllers are directly connected to the first switch, and the plurality of storage controllers are not connected or interacted with each other, and multiple storage controllers are not required to control interaction and cross-layer memory migration operations. The computing unit and the first memory are independent of each other, and can be expanded or shrunk as needed to realize independent upgrades and save costs. Each switching unit is connected to its corresponding first memory to reduce the number of branches of the first memory corresponding to each switching unit, which causes the problem of decreased data transmission rate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of server technology, and in particular to a storage system, cluster node, system, storage resource scheduling method and device. Background Art

[0002] In the architectural design of storage systems, the relationship between computing and storage is one of the core considerations, which is usually tightly coupled, that is, the storage device is directly connected to the server.

[0003] Due to the uneven development of hardware resources such as computing and storage, the coupling of computing and storage cannot be expanded independently, and it is impossible to meet the business needs for computing and storage at the same time. When computing expansion or contraction or data requests are required, data needs to be moved. The connection access process between storage controllers within the architecture undergoes multiple storage controller control interactions and cross-layer memory movement operations, resulting in data being unable to directly access the storage medium, thereby wasting a lot of storage controller computing power, network and memory channel resources, further increasing access latency and reducing access efficiency.

[0004] Therefore, how to achieve decoupling of computing and storage in a storage system so that data can be directly accessed from a storage medium and improve resource utilization and access efficiency is an urgent problem to be solved by those skilled in the art. Summary of the invention

[0005] The purpose of the present invention is to provide a storage system, cluster node, system, storage resource scheduling method and device to solve the problem that the computing and storage coupling of the storage system leads to the inability of data to directly access the storage medium, thereby reducing resource utilization and access efficiency.

[0006] To solve the above technical problems, the present invention provides a storage system, including a host, a first switch, a first memory and a plurality of storage controllers;

[0007] The host is connected to multiple storage controllers;

[0008] Multiple storage controllers are directly connected to the first switch; multiple storage controllers are used to identify and process data requests sent by the host to determine corresponding storage resources;

[0009] The first switch is connected to the first memory; the first switch is used to receive storage resources of multiple storage controllers, and allocate and schedule resources of the first memory according to the storage resources of the multiple storage controllers to realize storage resource sharing of the first memory;

[0010] Wherein, the first switch includes a substrate and a plurality of switching units;

[0011] Each storage controller is connected to each switching unit;

[0012] Each switching unit is located on a switching board, and each switching board is connected through a base plate to realize the connection between each switching unit;

[0013] Each switching unit is connected to its corresponding first memory.

[0014] In one aspect, the substrate includes a first controller, a network switching unit, a control platform, and a second controller;

[0015] Two ends of the first controller, two ends of the network switching unit, and two ends of the second controller are connected to different switching boards;

[0016] The first controller, the network switching unit and the control platform are connected in sequence.

[0017] In another aspect, each storage controller includes a plurality of first processors;

[0018] The multiple first processors are connected in sequence, and the multiple first processors are in redundant mode;

[0019] Each first processor is connected to each switching unit.

[0020] On the other hand, the connection between the host, the plurality of storage controllers, the first switch and the first storage is connected via a fiber link;

[0021] The optical fiber link is a first protocol optical fiber link or a second protocol optical fiber link.

[0022] On the other hand, when the optical fiber link is a first protocol optical fiber link, the host, the plurality of storage controllers, the first switch and the corresponding sending end and receiving end of the first storage all include an optical module, a second switch and a third controller;

[0023] The optical modules of the transmitting end and the receiving end are connected;

[0024] The optical modules of the transmitting end and the receiving end are connected to the second switch and the third controller of the respective ones.

[0025] On the other hand, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the transmitting end detects a non-compliant receiving end, the second switch at the transmitting end is used to set the first register value to shield the detection function of the receiving end.

[0026] On the other hand, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the first protocol optical fiber link is in an electrical idle state, the second switch at the transmitting end is used to set the second register value to reduce the time parameter of the electrical idle state.

[0027] On the other hand, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the first speed control signal less than the threshold speed cannot be sent, the third controller at the sending end recompiles the second speed control signal greater than or equal to the threshold speed into the first speed control signal to be sent to the receiving end through the optical module;

[0028] The third controller at the receiving end is used to interpret the first speed control signal as a second speed control signal after the optical module receives the first speed control signal; wherein the optical modules at the transmitting end and the receiving end do not include a processor for processing digital signals and a processor for processing clock data for transmitting a second speed control signal greater than or equal to a threshold speed.

[0029] On the other hand, the multiple first processors in each storage controller support the first protocol bus and the second protocol bus, wherein each first processor provides the first protocol bus and the second protocol bus to the outside, which are respectively used for the first memory expansion.

[0030] On the other hand, the first memory includes at least a first data storage device and / or a second data storage device;

[0031] The first data storage device is used to support memory bar expansion;

[0032] The second data storage device is used to support hard disk expansion.

[0033] On the other hand, the first data storage device includes a memory expansion board and a first substrate; wherein the memory expansion board includes a first connector, a plurality of first interfaces, and a plurality of memory controllers;

[0034] The first end of each first interface is connected to the first switch;

[0035] The second end of each first interface is connected to a first preset number of memory controllers;

[0036] The memory interface of the memory controller is connected to a second preset number of memory sticks;

[0037] The communication interfaces of the memory controller are all connected to the first end of the first connector;

[0038] The second end of the first connector is connected to the first substrate.

[0039] On the other hand, the second data storage device includes a hard disk expansion board and a second substrate; wherein the hard disk expansion board includes a plurality of second connectors, a plurality of signal conditioning cards and a plurality of second interfaces;

[0040] A third preset number of hard disks are respectively connected to the first ends of the second connector;

[0041] The second end of the second connector corresponds to the first end of the signal conditioning card;

[0042] The second end of the signal conditioning card is connected to the first end of the corresponding second interface; and the third ends are connected to the second substrate;

[0043] The second end of the second interface is connected to the first switch.

[0044] In order to solve the above technical problem, the present invention further provides a cluster node, comprising at least one storage system as described above;

[0045] When there are multiple storage systems, the multiple storage systems are connected through optical fiber links.

[0046] In order to solve the above technical problem, the present invention further provides a cluster system, comprising at least one cluster node as described above;

[0047] When there are multiple cluster nodes, the multiple cluster nodes are connected through optical fiber links.

[0048] To solve the above technical problems, the present invention also provides a storage resource scheduling method based on a storage system, which is applied to a first switch of the storage system, wherein the storage system includes a host, a first switch, a first memory and multiple storage controllers; the host is connected to the multiple storage controllers; the multiple storage controllers are directly connected to the first switch; the first switch is connected to the first memory; the first switch includes a substrate and multiple switching units; each storage controller is connected to each switching unit; each switching unit is located on a switching board, and each switching board is connected through a substrate to realize the connection between each switching unit; each switching unit is connected to the first storage corresponding to itself; the method includes:

[0049] Receiving storage resources sent by multiple storage controllers; wherein the storage resources are identified, processed and determined in the storage controller by a data request sent by a host;

[0050] Acquire resources of the first memory;

[0051] The resources of the first memory are allocated and scheduled according to the storage resources of the plurality of storage controllers, so as to realize the storage resource sharing of the first memory.

[0052] On the one hand, allocating and scheduling the resources of the first memory according to the storage resources of the plurality of storage controllers includes:

[0053] Obtain target storage resources of a target storage controller;

[0054] Pre-establishing a mapping relationship between the target storage controller and the first storage;

[0055] Determine, according to the mapping relationship, whether the remaining resources of the first memory corresponding to the target storage controller are greater than the target storage resources;

[0056] If the remaining resources of the first memory corresponding to the target storage controller are greater than or equal to the target storage resources, the first memory to which the remaining resources greater than or equal to the target storage resources belong is scheduled;

[0057] If the remaining resources of the first memory corresponding to the target storage controller are smaller than the target storage resources, the remaining resources of the reserved idle first memory are scheduled to the target storage controller to facilitate the allocation of the target storage resources of the target storage controller.

[0058] On the other hand, it also includes:

[0059] The allocation scheduling process of storage resources and storage resource information are displayed through the interface; wherein the list corresponding to the storage resource information at least includes a device resource list, a host resource list and a port resource list;

[0060] Correspondingly, the allocation and scheduling processing is implemented through the touch screen interface.

[0061] To solve the above technical problems, the present invention also provides a storage resource scheduling device based on a storage system, which is applied to a first switch of the storage system, wherein the storage system includes a host, a first switch, a first memory and multiple storage controllers; the host is connected to the multiple storage controllers; the multiple storage controllers are directly connected to the first switch; the first switch is connected to the first memory; the first switch includes a substrate and multiple switching units; each storage controller is connected to each switching unit; each switching unit is located on a switching board, and the switching boards are connected through the substrate to realize the connection between the switching units; each switching unit is connected to the first memory corresponding to itself; the device includes:

[0062] A receiving module, used for receiving storage resources sent by a plurality of storage controllers; wherein the storage resources are identified and processed in the storage controller by a data request sent by a host;

[0063] An acquisition module, used for acquiring resources of the first memory;

[0064] The allocation and scheduling module is used to allocate and schedule the resources of the first memory according to the storage resources of multiple storage controllers to achieve storage resource sharing of the first memory.

[0065] In order to solve the above technical problems, the present invention further provides a storage resource scheduling device based on a storage system, comprising:

[0066] A second memory for storing a computer program;

[0067] The second processor is used to implement the steps of the storage resource scheduling method based on the storage system as described above when executing the computer program.

[0068] To solve the above technical problem, the present invention also provides a non-volatile storage medium, on which a computer program is stored. When the computer program is executed by a second processor, the steps of the storage resource scheduling method based on the storage system as described above are implemented.

[0069] To solve the above technical problem, the present invention also provides a computer program product, including a computer program / instruction, which, when executed by a second processor, implements the steps of the storage resource scheduling method based on the storage system as described above.

[0070] The present invention provides a storage system, comprising a host, a first switch, a first memory and a plurality of storage controllers; the host is connected to the plurality of storage controllers; the plurality of storage controllers are directly connected to the first switch; the plurality of storage controllers are used to identify and process data requests sent by the host to determine corresponding storage resources; the first switch is connected to the first memory; the first switch comprises a substrate and a plurality of switching units; each storage controller is connected to each switching unit; each switching unit is located on a switching board, and the switching boards are connected through the substrate to realize connection between the switching units; each switching unit is connected to the first memory corresponding to itself; the first switch is used to receive storage resources of the plurality of storage controllers, and allocate and schedule resources of the first memory according to the storage resources of the plurality of storage controllers to realize storage resource sharing of the memory.

[0071] The beneficial effect of the present invention is to separate the first memory (medium) and the host (computing unit), that is, to pull the local disk and memory in the storage system away, realize the decoupling of computing and media, and select to configure memory space with different performance and capacity according to application needs. Multiple storage controllers are directly connected to the first switch, and multiple storage controllers are not connected and interacted with each other. There is no need for multiple storage controller control interactions and cross-layer memory migration operations. The first memory can be directly accessed through the first switch, saving the computing power of the storage controller, the network and the memory channel resources, reducing delays, and at the same time, improving resource utilization. In addition, the computing unit and the first memory are independent of each other, and the capacity is expanded and reduced on demand, and independent upgrades are realized to save costs. Further, the interaction and use between storage controllers are reduced, and memory and storage resource sharing across controllers is realized, and the memory usage bandwidth and storage system performance are improved. Finally, each switching unit is connected to the first memory corresponding to each of them, and the connection between the first memories under each switching unit is realized in the first switch, so as to reduce the number of branches of the first memory corresponding to each switching unit, resulting in the problem of reduced data transmission rate. The connection between the baseboard of the first switch and multiple switching units is the key to realizing the decoupling and reconstruction of hardware resources. By combining high-performance, large-scale switching I / O with basic management software, flexible switching of various topologies of the storage server system can be achieved, and resources can be scheduled and allocated on demand to meet the memory expansion needs in multiple storage application scenarios.

[0072] Secondly, the baseboard in the first switch is connected to the switching unit on the switching board, and the management unit of the first switch is integrated, which is responsible for resource scheduling management, equipment status monitoring, power-on and power-off management, and power-on and power-off management of the entire cabinet. The redundant mode presented by the connection relationship between the multiple first processors and the switching unit in each storage controller and the multiple first processors improves the reliability of the system through the main and standby redundancy mode. The optical fiber link connects each device. The optical fiber link has the characteristics of low link loss and long transmission distance, and adopts optical interconnection technology, so that each device does not involve protocol conversion during long-distance signal transmission, which greatly reduces the transmission delay and effectively improves the performance of the whole system in some application scenarios. The corresponding structural connection relationship between the transmitting end and the receiving end of each device is transmitted by the transmitting end and the receiving end during the optical fiber link transmission, which improves the data transmission rate and improves the performance of the storage system. The DSP and CDR controllers are removed from the optical module, and the low-speed control signal is processed by the third controller to realize the function of transmitting the low-speed control signal. In addition, the internal structure change of the optical module in this embodiment avoids the loss of the DSP and CDR controllers during the link rate switching process, and realizes the rate switching of the link rate negotiation process. Multiple first processors support the first protocol bus and the second protocol bus for the expansion of the first memory, meet the topology requirements of multi-scenario applications, and improve the reliability of the storage system. Multiple data storage devices in the first memory improve the diversity and flexibility of expansion. The first data storage device supports memory bar expansion and provides high-density memory resource expansion to achieve remote memory expansion. In the second data storage device, the high-speed cable is interconnected with the high-performance first switch. After the high-speed signal is introduced through the high-speed interface (second interface), it is conditioned and optimized by the signal conditioning card to improve the quality of the high-speed link signal and improve the system reliability. Thereafter, the conditioned and optimized high-speed signal is connected to the storage module of the SSD hard disk through the high-speed connector to achieve SSD storage expansion. The specific process of storage resource allocation and scheduling processing improves the accuracy of scheduling processing. At the same time, the resources of the first memory corresponding to the target storage controller with a mapping relationship are preferentially used for scheduling. When the remaining resources of the corresponding first memory are less than the target storage resources, the remaining resources of the reserved idle first memory need to be scheduled to improve the reliability of scheduling processing. The scheduling and allocation process is realized by touch screen mode, which makes the entire scheduling and allocation process visual and simplified, facilitates user management and scheduling, and improves the user experience.

[0073] In addition, the present invention also provides a cluster node, a cluster system, a storage resource scheduling method based on the storage system, an apparatus, a device, a medium and a product, which have the same beneficial effects as the above storage system. BRIEF DESCRIPTION OF THE DRAWINGS

[0074] In order to more clearly illustrate the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0075] Figure 1 A structural diagram of a storage system provided by an embodiment of the present invention;

[0076] Figure 2 A schematic diagram of storage resource sharing of a first memory provided by an embodiment of the present invention;

[0077] Figure 3 A structural diagram of a first switch provided in an embodiment of the present invention;

[0078] Figure 4 A schematic structural diagram of a base plate and a switching board of a first switch provided in an embodiment of the present invention;

[0079] Figure 5 A schematic diagram of the structure of an optical interconnection interface between a transmitting end and a receiving end provided in an embodiment of the present invention;

[0080] Figure 6 A schematic diagram of another communication between a sending end and a receiving end provided in an embodiment of the present invention;

[0081] Figure 7 A schematic diagram of the overall layout of another storage system provided by an embodiment of the present invention;

[0082] Figure 8 A schematic structural diagram of a first data storage device provided by an embodiment of the present invention;

[0083] Fig. 9 A schematic diagram of the structure of a second data storage device provided by an embodiment of the present invention;

[0084] Fig.10 A schematic diagram of the structure of a cluster node provided by an embodiment of the present invention;

[0085] Fig.11 A flowchart of a storage resource scheduling method based on a storage system provided by an embodiment of the present invention;

[0086] Fig.12 A schematic diagram of an internal pooling system in which a first switch is located provided in an embodiment of the present invention;

[0087] Fig.13 A schematic diagram of information display under an asset management module provided by an embodiment of the present invention;

[0088] Fig.14 A schematic diagram of resource allocation scheduling provided by an embodiment of the present invention;

[0089] Fig.15 A structural diagram of a storage resource scheduling device based on a storage system provided in an embodiment of the present invention;

[0090] Fig.16 A structural diagram of a storage resource scheduling device based on a storage system provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0091] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0092] The core of the present invention is to provide a storage system, cluster node, system, storage resource scheduling method and device to solve the problem that the computing and storage coupling of the storage system leads to the inability of data to directly access the storage medium, thereby reducing resource utilization and access efficiency.

[0093] In order to enable those skilled in the art to better understand the scheme of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0094] Storage, computing and networking are key components of data centers. To fully tap the potential of data centers, it is necessary to ensure efficient data storage, fast computing speed and stable network transmission. However, in actual construction, many data centers use general-purpose servers and integrated computing and storage, resulting in low storage efficiency and waste of computing resources.

[0095] In actual business applications, traditional storage solutions are generally divided into two forms: storage-computing integration and storage-computing separation. Storage-computing integration can uniformly manage and schedule computing, storage, and network resources, and has horizontal expansion capabilities. However, when the actual business has different computing and storage requirements and different growth rates, there are problems such as inflexible resource expansion and low utilization. Storage-computing separation splits storage and computing resources into independent subsystems for construction, and has the advantages of high resource utilization, efficient sharing of storage resources, flexible deployment in multiple scenarios, and network storage collaboration. The traditional storage-computing separation architecture separates computing resources and storage resources into independent computing domains and storage domains, and interconnects the two through Ethernet or a dedicated storage network, realizing flexible expansion and efficient sharing of storage resources. It has been widely used in key applications such as core transaction systems and databases in industries such as finance and telecommunications.

[0096] With the rapid development of data storage technology and the accelerated innovation of new applications, the development speed between hardware resources such as computing and storage is unbalanced, and the difference between computing life cycle and data life cycle is becoming increasingly prominent. In order to meet the requirements of new data centers for resource utilization, reliability, performance and efficiency, provide efficient storage support for the development of new generation information technologies such as cloud computing, big data and high-performance computing, and promote the evolution to composable disaggregated infrastructure, we will achieve intensive and high-density high-quality development.

[0097] Current data storage is mainly divided into five categories: Direct Attached Storage (DAS), Storage Area Network (SAN), Network Attached Storage (NAS), cloud storage and software-defined storage. Regardless of which storage system is limited by software and hardware design, it is difficult to achieve a balance between performance and resource utilization. At the resource level, the computing and storage resource ratios of traditional storage server architectures are fixed and cannot be expanded independently. In actual applications, when new data applications emerge, in order to quickly deploy and try new businesses, enterprises usually adopt the simplest server integrated architecture that couples applications with local disks. The use of an integrated architecture based on server deployment storage can achieve unified management and scheduling of computing, storage, network and other resources. However, due to the uneven development speed of hardware resources such as computing and storage, the difference between the computing life cycle and the data life cycle is getting bigger and bigger, resulting in the inflexible scalability of traditional storage server architectures. On the one hand, the coupling of computing and storage makes it impossible to independently expand computing and storage resources, and it is impossible to meet the computing and storage needs of the business at the same time. On the other hand, due to the coupling of computing and storage, when computing needs to be expanded or reduced, data must be moved, which affects the performance of storage nodes in providing computing services at the same time. If storage can be separated from computing, the computing layer and the storage layer can independently increase or decrease nodes without interfering with each other.

[0098] At the business application level, traditional storage servers cannot meet the needs of new distributed applications for extremely simple and efficient shared storage. New distributed applications such as microservices and serverless are constantly emerging. These applications are expanding from stateless to stateful, including the containerization of components such as databases and message buses, and there is an increasing demand for high-concurrency, low-latency shared access to data. At the same time, applications such as artificial intelligence and machine learning require the coordination of a large amount of heterogeneous computing power and even shared memory access. They focus on high-bandwidth, low-latency access capabilities and only require lightweight, convenient shared storage systems, rather than traditional storage with complex enterprise characteristics.

[0099] In data-intensive scenarios, traditional storage servers face multiple challenges in terms of performance: Traditional storage servers process infrastructure layer tasks based on general-purpose central processing units (CPUs), which are inefficient. As Moore's Law slows down, the marginal cost of general-purpose CPU performance growth is rapidly increasing. Data shows that the current annual growth rate of CPU performance (after area normalization) is only about 3%. Under a 100G network, the CPU that processes network requests consumes up to 30% of computing power. Since general-purpose CPUs are not designed for data processing operations, their energy efficiency is relatively low. In addition, with the increase in reliability requirements, the demand for data processing calculations such as large-scale erasure codes has also added a burden to general-purpose CPUs. In traditional storage systems, host data requests need to go through multiple CPU control interactions and cross-layer memory transfer operations, resulting in data being unable to directly access storage media, thereby wasting a lot of CPU computing power and network / memory channel resources and increasing latency. In summary, in data-intensive scenarios, based on the traditional CPU-centric server architecture, the "data center tax" that applications pay to obtain data continues to increase. The main measure to solve this problem is to integrate heterogeneous computing power and offload data processing tasks on the input / output (I / O) path. In view of the above technical problems, the storage system provided by the present invention can solve them.

[0100] Figure 1 A structural diagram of a storage system provided by an embodiment of the present invention, such as Figure 1 As shown, the storage system includes a host 1, a first switch 3, a first memory 4 and a plurality of storage controllers 2;

[0101] A host 1 is connected to a plurality of storage controllers 2;

[0102] The plurality of storage controllers 2 are directly connected to the first switch 3; the plurality of storage controllers 2 are used to identify and process the data request sent by the host 1 to determine the corresponding storage resource;

[0103] The first switch 3 is connected to the first memory 4; the first switch 3 is used to receive the storage resources of the multiple storage controllers 2, and allocate and schedule the resources of the first memory 4 according to the storage resources of the multiple storage controllers 2 to realize the storage resource sharing of the first memory 4;

[0104] The first switch 3 includes a substrate 5 and a plurality of switching units;

[0105] Each storage controller 2 is connected to each switching unit;

[0106] Each switching unit is located on a switching board 6, and each switching board 6 is connected through a base board 5 to realize the connection between each switching unit;

[0107] Each switching unit is connected to its corresponding first memory 4 .

[0108] Specifically, the first switch and storage controller in the storage system can be set inside the storage server or used as external devices. The first switch is a network device for forwarding electrical (optical) signals, and can intervene in the exclusive electrical signal path provided by any two network nodes of the switch. In the present invention, the corresponding switch link type is not limited, and can be Ethernet, Compute Express Link (CXL), Peripheral Component Interconnect Express (PCIE) link, or other link types, which can be set according to actual conditions. There is no limitation on the type of transmitted signal, which can be an electrical signal, an optical signal, etc., which can be set according to actual conditions. The storage controller can be a component inside the storage server, or it can exist as an independent device, communicating with the storage server or other computing nodes through an external connection (fiber channel or Ethernet, etc.).

[0109] The host is connected to multiple storage controllers. The host, as a computing unit, is connected through the intervention of the storage controller and the switch to achieve decoupling from the first storage, and the local disk and memory in the server are pulled away, so that the storage server becomes a diskless server and a remote storage pool. This allows subsequent businesses to choose to configure virtual disks and pooled memory spaces with different performance and capacity according to application needs. In the case of low storage resource utilization, the storage server can return idle storage resources to the storage module, and improve resource utilization through such decoupling.

[0110] In addition, computing and storage are independent, which enables on-demand capacity expansion and saves costs. At the same time, it can also simplify server purchasing costs and purchase hosts and storage media independently, without distinguishing between complex server types such as capacity, performance, and balanced.

[0111] The number of storage controllers corresponding to the storage system in this embodiment is multiple, and the host is connected to multiple storage controllers. There is no connection and interaction between the multiple storage controllers, and they are all directly connected to the first switch. A conventional storage system is a connection and interaction between multiple storage controllers. Each storage controller corresponds to a memory. The memory data transmission is forwarded multiple times, and the global memory is fully controlled by the storage controller through multiple control interactions and cross-layer memory migration of the storage controller. For example: storage controller 1' is connected to solid state drive (SSD) pool A1, storage controller 2' is connected to SSD pool B1, storage controller 1' and storage controller 2' are connected. If storage controller 1' wants to access SSD pool B1, it needs to be implemented through the interaction of storage controller 2', resulting in an increase in host computing resources, and other direct access to the storage medium cannot be achieved. In this embodiment, the global memory is converted to multi-point direct control of the switch protocol through a single processing by the first switch to achieve global metadata access encoding.

[0112] Multiple storage controllers are used to identify the data requests sent by the host to determine the storage resources required by the host. There is no specific limitation on the specific identification and processing process. It can be identified in combination with an algorithm, or its data request can be identified by encoding and decoding, etc. There is no specific limitation. The first switch is connected to the first memory. After the first switch receives the storage resources identified and processed by multiple storage controllers, it allocates and schedules the resources of the first memory to realize the sharing of storage resources of the first memory. It should be noted that the number of first memories in this embodiment is not limited, and can be one or more. The first memory can be a virtual disk or cloud storage, or it can be an actual hardware storage component, which is not limited here.

[0113] There is no limitation on the allocation and scheduling processing method. The remaining resources in the first memory may be monitored in real time for use by the host, or the remaining resources under multiple first memories may be calculated based on a certain model algorithm for selection and use. There is no limitation here.

[0114] like Figure 1 As shown, multiple storage controllers are represented by 1' to N', and the first memory can be one or more. When multiple first memories exist, they are represented by A1' to AN'. Figure 1One switching unit corresponds to one first memory, and one switching unit may correspond to multiple first memories, that is, all first memories are connected to only one corresponding switching unit, and memory sharing between multiple first memories is achieved inside the first switch through the connection between the switching units (that is, the connection between multiple switching units is achieved through the substrate). The conventional connection relationship between the switch and the memory is that each memory is connected to each switch respectively, and the switches are not connected to each other. This will increase the branches between each memory corresponding to each switch. Multiple branches will reduce the IO capacity of the shared hard disk, and then reduce the transmission rate of a single branch. In addition, multiple branches will also increase data security risks. The connection between the hard disk and the switch will cause insufficient bandwidth due to multiple branches, and even freezes or disconnections when used for remote control. The switching units in this embodiment are connected to each other so that memory sharing is achieved between the first memories connected to each switching unit. Here, not all switching units are connected to each first memory. For example, there are five first memories, namely A1', A2', A3', A4' and A5', corresponding to two switching units, one of which is connected to the first memories A1', A2', A3', and the other is connected to A4' and A5', and the two switching units are connected to realize interactive sharing among the five first memories. The conventional solution is that the corresponding five first memories are connected to each switching unit, resulting in more branches of the first memories.

[0115] Figure 2 A schematic diagram of storage resource sharing of a first memory provided in an embodiment of the present invention, such as Figure 2 As shown in the figure, taking four storage controllers as an example, multiple storage controllers are located in the storage control layer, multiple first memories are located in the heterogeneous memory pool, and the actual corresponding hard disks (represented by B1' to B4') in the capacity layer are stored. The first memory reads and writes data flow to ensure performance requirements, and the data redundancy control flow ensures the redundancy compass and data case source, realizes the decoupling pooling of memory and SSD storage resources, and improves resource utilization and system performance.

[0116] The first switch includes a substrate and a plurality of switching units;

[0117] Each storage controller is connected to each switching unit;

[0118] Each switching unit is located on a switching board, and each switching board is connected through a base board;

[0119] Each switching unit is connected to the first memory.

[0120] Specifically, Figure 3 A structural diagram of a first switch provided in an embodiment of the present invention, such as Figure 3As shown, the first switch 3 includes a substrate 5 and a plurality of switching units. The substrate 5 is usually a copper-clad laminate, which is not only a physical support for electronic components, but also provides a way for electrical connection and signal transmission. It is mainly a circuit board. Each switching unit is located at Figure 3 The switching boards 6 (the boards where the switching units are located in the dotted box in the figure) are electrically connected to each other through the base board 5. The switching board 6 is responsible for the data exchange function and is a core module. It can output high-speed links of various bandwidth types, such as 32 x16 bandwidth high-speed links, to provide large-scale, highly flexible high-speed link interconnection applications. The base board 5 mainly carries the memory resource management engine (such as the first controller) and the control platform (such as the base board 5 management controller).

[0121] In the first switch, a management unit is integrated to be responsible for resource scheduling management, equipment status monitoring, power on and off management, and power on and off management of the entire cabinet. The compact space mechanism is utilized through system structure optimization design. The first switch can support 32 high-speed IO interfaces, provide ultra-high performance, ultra-large-scale switching network, and meet the topology requirements of multi-scenario applications of storage systems.

[0122] Combination Figure 3 , each storage controller 2 is connected to each switching unit on the first switch 3, and each switching unit is connected to the first memory 4. The first memory 4 in this embodiment is located in the storage resource pool. Table 1 is a specification information table of the first switch. As shown in Table 1, the first switch 3 is the core switching unit of the storage system, and 32 high-speed IO interfaces are provided in standby mode. The port supports any upstream and downstream configuration. The storage controller 2 and the first memory 4 are interconnected with the first switch 3 through high-speed cables to achieve system reconstruction. In the embodiment, the system topology can be interconnected according to different convergence ratios such as 1:1, 1:2 or 1:3 according to application requirements, and large-scale, high-speed, and high-flexibility data link transmission can be achieved to meet the system's optimal performance requirements. It should be noted that convergence generally refers to the process of merging or unifying data flows or signal flows in the network at a certain point. For example, in network design, multiple network flows may converge to a single link through a router or switch. The convergence ratio in this embodiment refers to the ratio of the link bandwidth of the first switch 3 connecting the storage controller 2 to the link bandwidth of the first switch 3 connecting the first memory 4.

[0123] Table 1 Specifications of the first switch

[0124]

[0125] The Form Factor in Table 1 is the physical size. In Table 1, the first switch is 19 inches 2U, where U represents thickness. The power supply is a power supply unit (PSU) that supports redundancy. The fan is also in redundancy mode, where N represents the number of fans.

[0126] The embodiment of the present invention provides a storage system, including a host, a first switch, a first memory and a plurality of storage controllers; the host is connected to the plurality of storage controllers; the plurality of storage controllers are directly connected to the first switch; the plurality of storage controllers are used to identify and process the data request sent by the host to determine the corresponding storage resources; the first switch is connected to the first memory; the first switch includes a substrate and a plurality of switching units; each storage controller is connected to each switching unit; each switching unit is located on a switching board, and each switching board is connected through a substrate to realize the connection between each switching unit; each switching unit is connected to the first memory corresponding to itself; the first switch is used to receive the storage resources of the plurality of storage controllers, and allocate and schedule the resources of the first memory according to the storage resources of the plurality of storage controllers to realize the storage resource sharing of the memory. The first memory (medium) and the host (computing unit) are separated, that is, the local disk and memory in the storage system are pulled away, and the decoupling of computing and medium is realized, and the memory space with different performance and capacity can be configured according to the application needs. Multiple storage controllers are directly connected to the first switch, and there is no connection or interaction between multiple storage controllers. There is no need for multiple storage controller control interactions and cross-layer memory migration operations. The first memory can be directly accessed through the first switch, saving the computing power of the storage controller, network and memory channel resources, reducing delays, and improving resource utilization. In addition, the computing unit and the first memory are independent of each other, and can be expanded or reduced on demand to achieve independent upgrades and save costs. Further, the interaction and use between storage controllers are reduced, and memory and storage resource sharing across controllers is achieved, which improves memory usage bandwidth and storage system performance. Finally, each switching unit is connected to its own first memory, and the connection between the first memories under each switching unit is realized in the first switch to reduce the number of branches of the first memory corresponding to each switching unit, resulting in a problem of reduced data transmission rate. The connection relationship between the substrate of the first switch and multiple switching units is the key to realizing the decoupling and reconstruction of hardware resources. By combining high-performance, large-scale switching I / O with basic management software, the storage server system can be flexibly switched among multiple topologies, and resources can be scheduled and allocated on demand to meet the memory expansion requirements in multiple storage application scenarios.

[0127] In some embodiments, the substrate includes a first controller, a network switching unit, a control platform, and a second controller;

[0128] Two ends of the first controller, two ends of the network switching unit, and two ends of the second controller are connected to different switching boards;

[0129] The first controller, the network switching unit and the control platform are connected in sequence.

[0130] Specifically, Figure 4 A schematic diagram of the structure of a base plate and a switching board of a first switch provided in an embodiment of the present invention, such as Figure 4 As shown, the baseboard 5 mainly carries the memory resource management engine (such as the first controller) and the control platform (such as the baseboard management controller). The memory resource management engine is mainly responsible for completing the initialization configuration and port configuration of the first switch to realize memory resource scheduling management. The control platform mainly performs real-time status detection through the management bus and reports through the management network port. Once the machine is abnormal (such as the first switch working abnormally, the switching link error alarm, etc.), the control platform will pass the data upward to the alarm, and record the detailed time scale of the detection signal in the form of a log, which is convenient for users to retrieve and analyze the cause of the abnormality.

[0131] The main function of the first controller is a memory resource management engine. It can also be a specific type of controller, which is not limited here. It mainly implements memory resource scheduling management. The network switching unit is mainly used to transmit data between the control platform and the first controller. Any interface protocol can be used, such as a high-speed serial interface standard (such as Serial Gigabit Media Independent Interface (SGMII)). The control platform usually refers to a centralized management tool for managing and monitoring various software and hardware systems. It can help administrators better manage and control the system. The control platform here can be a baseboard management controller (Baseboard Management Controller, BMC) or other control management systems, which is not limited here.

[0132] The two ends of the first controller, the two ends of the network switching unit, and the two ends of the second controller are connected to different switching boards, such as Figure 4As shown, the first switch includes multiple switch boards 6, and different switch boards 6 are connected through a substrate 5. The connection between the first controller and the switch board 6 can be through a PCIE link, an integrated circuit interconnect (Inter-Integrated Circuit, I2C) link or a universal asynchronous receiver / transmitter (UART) link, etc. The connection between the network switching unit and the switch board 6 can be connected through the SGMII protocol or other links. The connection between the second controller and the switch board 6 can be through the PERSET protocol or the SYS_RST protocol, etc. The second controller can be a programmable logic device, such as a complex programmable logic device (Complex Programmable Logic Device, CPLD) or a field programmable gate array (Field-Programmable Gate Array, FPGA), etc., which is not limited here. For the high-speed interface provided in the switch, it is connected to the storage controller and the first memory.

[0133] The baseboard in the first switch provided in this embodiment is connected to the switching unit on the switching board, and the management unit of the first switch is integrated to be responsible for resource scheduling management, equipment status monitoring, power-on and power-off management, and power-on and power-off management of the entire cabinet, etc. It provides an ultra-high performance and ultra-large-scale switching network to meet the topology requirements of multi-scenario applications of the storage system.

[0134] In some embodiments, each storage controller includes a plurality of first processors;

[0135] The multiple first processors are connected in sequence, and the multiple first processors are in redundant mode;

[0136] Each first processor is connected to each switching unit.

[0137] Combination Figure 3 From the above, each storage controller 2 includes a plurality of first processors, and the plurality of first processors are connected through self-diagnosis. The sequential connection here is only implemented within one storage controller 2, and the storage controllers 2 are not connected with each other. Figure 3 In the example, a storage controller 2 includes two first processors, which are connected to each other in a redundant mode. The redundancy here corresponds to a master-slave mode, with a master first processor and a backup first processor. Each first processor is connected to each switching unit so that when the master first processor fails, the backup first processor is switched to transmit data with the switching unit.

[0138] The redundant mode presented by the connection relationship between the multiple first processors and the switching unit in each storage controller and the multiple first processors provided in this embodiment improves the reliability of the system through the active-standby redundancy mode.

[0139] In some embodiments, the connections between the host, the plurality of storage controllers, the first switch, and the first storage are connected via fiber optic links;

[0140] The optical fiber link is a first protocol optical fiber link or a second protocol optical fiber link.

[0141] It should be noted that the connection between the host, multiple storage controllers, the first switch and the first storage can be connected by copper cable or optical cable. Since the copper cable link loss increases with the increase of data transmission rate, it is difficult to realize long-distance interconnection between resource pools in the storage system, which limits the distribution of resource pools and the total scale of the system to a certain extent. The technical solution of high-speed interconnection of copper cables can only achieve meter-level length interconnection. Therefore, in this embodiment, through the optical fiber link, the corresponding optical fiber link type is not limited, it can be a first protocol optical fiber link, it can also be a second protocol optical fiber link, and the optical fiber link type between different devices under the storage system is not unified, but there is only one type of optical fiber link between the two devices, the first protocol optical fiber link or the second protocol optical fiber link. The optical fiber link can be a PCIE link or a CXL link, etc., without limitation, that is, the first protocol optical fiber link can be a PCIE link or a CXL link, and the second protocol optical fiber link can be a PCIE link or a CXL link, as long as the two protocol optical fiber links are different in the same link. By breaking through the difficulties of protocol adaptation, clock synchronization locking, and low-speed signal coordination, a high-speed optical interconnection technology supporting PCIE and CXL protocols is realized, which can support an extended link transmission distance greater than 2m.

[0142] Fiber optic links use optical interconnection technology, which is a method of transmitting data between components or subsystems inside a computer using optical fiber or other optical transmission media. This technology has the characteristics of high bandwidth, high speed and low latency.

[0143] The optical fiber link provided in this embodiment connects various devices. The optical fiber link has the characteristics of low link loss and long transmission distance, and adopts optical interconnection technology, so that various devices do not involve protocol conversion during long-distance signal transmission, which greatly reduces transmission delay and effectively improves the performance of the entire system in some application scenarios.

[0144] In some embodiments, when the optical fiber link is a first protocol optical fiber link, the host, the plurality of storage controllers, the first switch, and the corresponding transmitting end and receiving end of the first storage all include an optical module, a second switch, and a third controller;

[0145] The optical modules of the transmitting end and the receiving end are connected;

[0146] The optical modules of the transmitting end and the receiving end are connected to the second switch and the third controller of the respective ones.

[0147] Specifically, there are transmitting ends for sending signals and receiving ends for receiving signals in each device of the host, multiple storage controllers, the first switch and the first memory, and both the transmitting end and the receiving end include an optical module, a second switch and a third controller. The optical module here is an optoelectronic device, which is mainly used to realize the functions of photoelectric conversion and electro-optical conversion. It plays an important role in the connection between the server and the optical fiber network, converting the electrical signal generated by the server into an optical signal and transmitting it through the optical fiber. The optical module includes a transmitting part and a receiving part. The transmitting part is an electrical signal with a certain code rate input, which is processed by the internal driving controller and then drives the semiconductor laser (Laser Diode, LD) or the light emitting diode (Light Emitting Diode, LED) to emit a modulated optical signal of the corresponding rate. It has an automatic optical power control circuit inside to keep the output optical signal power stable. After the optical signal of a certain code rate is input into the module, the receiving part is converted into an electrical signal by the light detection diode, and the electrical signal of the corresponding code rate is output after the preamplifier.

[0148] Figure 5 A schematic diagram of the structure of an optical interconnection interface between a transmitter and a receiver provided in an embodiment of the present invention, such as Figure 5 As shown, the optical modules 7 of the transmitting end and the receiving end are connected through optical fibers, and the optical modules 7 of the transmitting end and the receiving end are connected to their own second switch 9 and third controller 8. The second switch 9 here is a switch type corresponding to the specific link type of the optical fiber link based on the first protocol, and the third controller 8 is an editable logic device, such as FPGA, etc. Figure 5 The third controller 8 is an FPGA, and the second switch 9 is a PCIE switch.

[0149] The corresponding structural connection relationship between the transmitting end and the receiving end of each device provided in this embodiment is transmitted through the transmitting end and the receiving end during optical fiber link transmission, thereby increasing the data transmission rate and improving the performance of the storage system.

[0150] In some embodiments, when the first protocol optical fiber link is a PCIE protocol link, the corresponding standard of the optical module is not formulated for the PCIE protocol, which will cause some settings of the PCIE protocol to be incompatible with the standard of conventional optical modules. If the optical module is directly used to build a PCIE optical interconnection path, it will fail. There is a link training process in the process of establishing a PCIE interconnection link. The entire interconnection link must be able to correctly transmit signals during the link training process in order for the link to be successfully established.

[0151] When the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the transmitting end detects a non-compliant receiving end, the second switch of the transmitting end is used to set the first register value to shield the detection function of the receiving end.

[0152] Specifically, Figure 6 A schematic diagram of another communication between a transmitting end and a receiving end provided in an embodiment of the present invention, such as Figure 6 As shown, during the link training process, the transmitting end 10 first sends a detection sequence to the receiving end 11 to detect the opposite device. There is no impedance change process in the optical module, and the pulse sent by the transmitting end 10 cannot generate a changing current on the optical module, which will cause the transmitting end 10 to fail to detect the compliant receiving end 11, thereby causing the link establishment to fail. The non-compliance here may be that the sequence received by the receiving end 11 has no feedback information, or the feedback information cannot be fed back normally, or even the feedback information is wrong, etc., which is not limited here. In this embodiment, the second switch of the transmitting end 10 supports the configuration of the link training process, and the first register value is set so that the link shields the detection function of the receiving end 11 during the link training process.

[0153] The second switch at the sending end provided in this embodiment sets the first register value, and uses the shielding function to avoid the occurrence of misidentification and error reporting at the receiving end.

[0154] In other embodiments, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the first protocol optical fiber link is in an electrical idle state, the second switch at the transmitting end is used to set the second register value to reduce the time parameter of the electrical idle state.

[0155] Specifically, the link establishment process will enter the electrical idle state many times, and no data signal will be transmitted in the interconnected link. When data needs to be transmitted, the transmitter will send a corresponding character sequence to wake up the receiver to continue the link training process. The interconnected link will have a burst transmission state that switches from no data signal transmission to data transmission. The transimpedance amplifier at the receiving end of the optical module needs a period of time to work stably when receiving a burst signal. During this period of time before stable operation, the front-end photocurrent signal cannot be accurately converted into the correct voltage signal, which leads to link establishment failure.

[0156] The electrical idle state generally refers to a low power consumption state of a device or link, when no data is transmitted between the transmitting end or the receiving end, the related electrical signals are in an inactive state. In this embodiment, the second switch of the transmitting end supports the configuration of the link training process, and the second register value is set to significantly shorten the electrical idle state time.

[0157] The second switch at the transmitting end provided in this embodiment sets the second register value to avoid the problem that the noise signal caused in the electrical idle state may cause the working states of the optical modules at the transmitting end and the receiving end to be inconsistent, thereby improving the reliability of data transmission.

[0158] In other embodiments, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the first speed control signal less than the threshold speed cannot be sent, the third controller at the transmitting end recompiles the second speed control signal greater than or equal to the threshold speed into the first speed control signal to be sent to the receiving end through the optical module;

[0159] The third controller at the receiving end is used to interpret the first speed control signal as a second speed control signal after the optical module receives the first speed control signal; wherein the optical modules at the transmitting end and the receiving end do not include a processor for processing digital signals and a processor for clock data for transmitting a second speed control signal greater than or equal to a threshold speed.

[0160] Specifically, in addition to high-speed data signals, there are also low-speed control signals in the PCIE channel, and the digital signal processor (DSP) and clock data recovery (CDR) processor in the high-speed optical module generally only support fixed high-speed signal transmission and cannot transmit low-speed control signals. In this embodiment, the low-speed control signal is a control signal in which the first speed control signal is less than the threshold speed. The transmitting end processes the low-speed control signal through the third controller, recompiles the low-speed control signal into a high-speed control signal (such as a 600MHz high-speed signal), and transmits it to the receiving end through the optical module and the optical fiber link. After that, the third controller at the receiving end recompiles (interprets) the high-speed control signal into a low-speed control signal.

[0161] In addition, since the DSP and CDR processors in the traditional optical module only support high-speed signals (high-speed signals are second speed control signals greater than or equal to the threshold speed), it should be noted that DSP is a processor for processing digital signals and CDR is a processor for processing clock data. In this embodiment, a linear direct drive optical module is used, and the DSP and CDR controllers are removed, which means that the high and low speeds of the corresponding signals are not controlled.

[0162] The optical module provided in this embodiment removes the DSP and CDR controllers, and processes the low-speed control signal through the third controller to achieve the function of transmitting the low-speed control signal. In addition, the internal structure of the optical module in this embodiment is changed to avoid the loss of lock of the DSP and CDR controllers during the link rate switching process, and achieve the rate switching of the link rate negotiation process.

[0163] In some embodiments, the protocol buses supported by the multiple first processors in each storage controller are not limited, and the multiple first processors in each storage controller support a first protocol bus and a second protocol bus, wherein each first processor provides a first protocol bus and a second protocol bus to the outside, which are respectively used for first memory expansion.

[0164] Figure 7 A schematic diagram of the overall layout of another storage system provided by an embodiment of the present invention is shown in FIG. Figure 7 As shown, the storage controller 2 is connected to the first switch 3, and the first switch 3 is connected to the first memory 4. Here, the first memory 4 includes a dual in-line memory module (DIMM) and an SSD hard disk. The BMC monitoring management module and the device status monitoring are simultaneously set in the storage controller 2 to achieve the ultimate utilization of the compact space. A storage controller 2 includes multiple first processors and provides an IO expansion module to meet the topology requirements of multi-scenario applications.

[0165] Table 2 is a specification information table of the storage controller. As shown in Table 2, taking a storage controller including two first processors as an example, both support 8 groups of X16 bandwidth PCIE buses, of which 4 groups are X16 compatible and support CXL buses. The dual first processors are interconnected and occupy 2 groups of X16 bandwidth PCIE buses and 2 groups of X16 bandwidth CXL buses, which are used for network card / hard disk expansion and CXL network expansion respectively, and support the implementation of CXL memory expansion inside the storage system.

[0166] Table 2 Storage controller specifications

[0167]

[0168] The E3.S and U.2 corresponding to the hard disk specifications in Table 2 represent hard disks of standard form factors.

[0169] The multiple first processors provided in this embodiment support the first protocol bus and the second protocol bus for first memory expansion, meet the topology requirements of multi-scenario applications, and improve the reliability of the storage system.

[0170] In some embodiments, the first memory includes at least a first data storage device and / or a second data storage device;

[0171] A first data storage device, used to support memory bar expansion;

[0172] The second data storage device is used to support hard disk expansion.

[0173] like Figure 7As shown, the first memory 4 includes at least a first data storage device and / or a second data storage device to support DIMM (memory module) expansion and SSD hard disk expansion respectively.

[0174] The multiple data storage devices in the first memory provided in this embodiment improve the diversity and flexibility of expansion.

[0175] In some embodiments, the first data storage device includes a memory expansion board and a first substrate; wherein the memory expansion board includes a first connector, a plurality of first interfaces, and a plurality of memory controllers;

[0176] The first end of each first interface is connected to the first switch;

[0177] The second end of each first interface is connected to a first preset number of memory controllers;

[0178] The memory interface of the memory controller is connected to a second preset number of memory sticks;

[0179] The communication interfaces of the memory controller are all connected to the first end of the first connector;

[0180] The second end of the first connector is connected to the first substrate.

[0181] Specifically, Figure 8 A schematic diagram of the structure of a first data storage device provided by an embodiment of the present invention is shown in FIG. Figure 8 As shown, the memory resource pool is interconnected with a high-performance first switch downstream high-speed interface (first interface) through a high-speed connection, including a memory expansion board and a first baseboard. The memory expansion board includes multiple first interfaces, a first connector and multiple memory controllers. The first end of each first interface is connected to the first switch, and the second port of each first interface is connected to a first preset number of memory controllers. Figure 8 Each high-speed link of the first interface can be connected through two memory controllers, and the memory interface of the memory controller is connected to a second preset number of memory sticks, Figure 8 A memory controller is connected to two memory sticks to achieve remote memory expansion. The communication interfaces of the memory controller are all connected to the first end of the first connector. The communication interface here can be an interface of any communication type, such as an Improved Inter Integrated Circuit (Improved Inter Integrated Circuit, I3C) interface, etc., which is not limited here. The second end of the first connector is connected to the first substrate. It should be noted that the first substrate includes a programmable logic device and a control platform, which are the same type of two devices of the substrate in the above embodiment. The memory expansion board mainly expands the memory through the memory controller. Figure 8The whole machine can be expanded with 64 memory sticks, providing high-density memory resource expansion. The first substrate mainly carries the control platform and programmable logic devices, which are used for internal logic control and status monitoring and management of the unit. The information status is reported through the management network.

[0182] Table 3 is a table of specification information of the first data storage device. As shown in Table 3, it supports expansion of 64 memory sticks. Based on the capacity of a single memory stick of 256GB, the maximum expanded memory capacity of a single machine can reach 16TB.

[0183] Table 3 Specification information table of the first data storage device

[0184]

[0185] Among them, the power supplies in Table 3 are provided in a redundant mode.

[0186] The first data storage device provided in this embodiment supports memory bank expansion and provides high-density memory resource expansion to achieve remote memory expansion.

[0187] In other embodiments, the second data storage device includes a hard disk expansion board and a second substrate; wherein the hard disk expansion board includes a plurality of second connectors, a plurality of signal conditioning cards, and a plurality of second interfaces;

[0188] A third preset number of hard disks are respectively connected to the first ends of the second connector;

[0189] The second end of the second connector is correspondingly connected to the first end of the signal conditioning card;

[0190] The second end of the signal conditioning card is connected to the first end of the corresponding second interface; and the third ends are connected to the second substrate;

[0191] The second end of the second interface is connected to the first switch.

[0192] Specifically, Fig. 9 A schematic diagram of the structure of a second data storage device provided by an embodiment of the present invention is shown in FIG. Fig. 9 As shown, the second data storage device includes a hard disk expansion board and a second substrate, wherein the hard disk expansion board includes a plurality of second connectors, a plurality of signal conditioning cards and a plurality of second interfaces, and a third preset number of hard disks are respectively connected to the first ends of the second connectors, and the hard disks are connected to the first ends of the second connectors. Fig. 9, every two hard disks are connected to a second connector, and the second end of each second connector is connected to the first end of a signal conditioning card. The second end of the signal conditioning card is connected to the first end of the corresponding second interface; and the third ends are connected to the second substrate; the second end of the second interface is connected to the first switch. The signal conditioning card here is an electronic device used to process and adjust signals. Its main function is to convert the original signal obtained from the sensor or other signal source into a standard signal suitable for processing by the data acquisition system. These conditioning operations include but are not limited to amplification, filtering, isolation, modulation and demodulation, etc. The signal conditioning card can be installed in various data acquisition systems or test equipment to ensure the quality and reliability of the signal and improve the overall performance and accuracy of the system.

[0193] It should be noted that the second substrate has the same device types as the first one in the above embodiment, including programmable logic devices and control platforms. The second substrate mainly carries the control platform and programmable logic devices, and is used for internal logic control and status monitoring and management of the unit. The information status is reported through the management network.

[0194] Table 4 is a table of specification information of the second data storage device. As shown in Table 4, 12 memory hard disk expansions are supported, and the high-speed interface supports 12 high-speed signals with a bandwidth of X16.

[0195] Table 4 Specification information table of the second data storage device

[0196]

[0197] In the second data storage device provided in this embodiment, a high-speed cable is used to interconnect with a high-performance first switch. After the high-speed signal is introduced through the high-speed interface (second interface), it is conditioned and optimized by a signal conditioning card to improve the quality of the high-speed link signal and improve the system reliability. Thereafter, the conditioned and optimized high-speed signal is connected to the storage module of the SSD hard disk via a high-speed connector to realize SSD storage expansion.

[0198] Furthermore, the present invention also provides a cluster node, comprising at least one storage system mentioned in the above embodiment. Fig.10 A schematic diagram of a cluster node structure provided by an embodiment of the present invention is shown in FIG. Fig.10 As shown, it includes at least one of the above-mentioned storage systems;

[0199] When there are multiple storage systems, the multiple storage systems are connected through optical fiber links.

[0200] It should be noted that a cluster node may include one storage system or multiple storage systems. In a cluster node composed of multiple storage systems, each storage system is connected via an optical fiber link to achieve east-west interconnection.

[0201] The data flow and metadata control flow in the cluster here guarantee the performance and data redundancy requirements, and the cluster message control flow meets the cluster manageability requirements. The east-west cluster of the storage system in the traditional cluster node adopts the network interconnection method, which leads to large delay and limited bandwidth. In this embodiment, the optical interconnection technology of the optical fiber link is adopted to ensure high bandwidth, low delay and high reliability of transmission.

[0202] For an introduction to a cluster node provided by the present invention, please refer to the above storage system embodiment, which will not be described in detail herein. The present invention has the same beneficial effects as the above storage system.

[0203] Furthermore, the present invention also provides a cluster system, comprising at least one cluster node;

[0204] When there are multiple cluster nodes, the multiple cluster nodes are connected through optical fiber links.

[0205] Specifically, combined Fig.10 From the perspective of implementing multiple cluster nodes ( Fig.10 The optical interconnection technology between cluster nodes (represented by E1' to EN') is adopted, which has the same connection effect as the optical fiber link within the cluster node in the above embodiment. This embodiment realizes high bandwidth, low latency and high reliability of transmission between cluster nodes.

[0206] For an introduction to a cluster system provided by the present invention, please refer to the above storage system embodiment, which will not be described in detail herein. The cluster system has the same beneficial effects as the above storage system.

[0207] Furthermore, the present invention also provides a storage resource scheduling method based on a storage system, which is applied to a first switch of the storage system, wherein the storage system includes a host, a first switch, a first memory and multiple storage controllers; the host is connected to the multiple storage controllers; the multiple storage controllers are directly connected to the first switch; the first switch is connected to the first memory; the first switch includes a substrate and multiple switching units; each storage controller is connected to each switching unit; each switching unit is located on a switching board, and each switching board is connected through a substrate to realize connection between each switching unit; each switching unit is connected to the first memory corresponding to itself; Fig.11 A flowchart of a storage resource scheduling method based on a storage system provided by an embodiment of the present invention is shown in FIG. Fig.11 As shown, the method includes:

[0208] S11: receiving storage resources sent by multiple storage controllers;

[0209] The storage resource is determined by identifying and processing the data request sent by the host in the storage controller;

[0210] S12: Acquire resources of the first memory;

[0211] S13: Allocate and schedule the resources of the first memory according to the storage resources of the multiple storage controllers to achieve storage resource sharing of the first memory.

[0212] Specifically, the first switch is used to realize resource decoupling of the internal pooling system, and performs unified management through the management engine and provides an interactive interface to the outside, so that the devices in the resource pool can be managed uniformly and complete the identification, management and dynamic allocation of resources.

[0213] Fig.12 A schematic diagram of an internal pooling system in which a first switch is located is provided in an embodiment of the present invention, such as Fig.12 As shown, the management engine of the first switch implements the following functions:

[0214] 1. Resource identification and asset information display.

[0215] The resource management engine calls a dedicated communication protocol interface to obtain all storage information from the CXL switch to complete resource identification. At the same time, the upper-level management software provides a network application programming interface (Application Programming Interface, API) interface. The resource management engine not only provides a network API interface, but also provides a visual interface. Users can access the management engine through a browser to view the resource list and system topology. Fig.13 A schematic diagram of information display under an asset management module provided by an embodiment of the present invention, such as Fig.13 As shown, the visualization interface provides two modes: list display and graphic display. The list display mainly includes: device resource list (device asset information, device partition information, device allocation relationship), computing unit list (computing unit basic information, computing unit location information, computing unit resource list) and port resource list (port basic attributes, port configuration information, port reserved resource information).

[0216] Storage resources mainly include: device manufacturer information, device type, device partition information, and resource allocation status. In the port resource list part, it mainly includes: port basic attributes, port resource reservation status, and port allocation relationship.

[0217] The management engine obtains and displays the information of the storage server controller, mainly including: the location of the storage server controller; the resource status allocated by the storage server controller; the health status of the storage server controller device link. The management engine provides graphical display and management of resources through the Web Graphical User Interface (WEB GUI) interface. Users can complete the dynamic allocation of resources in the interconnection topology view by dragging and dropping, and monitor the device link in real time.

[0218] 2. Device partition and dynamic allocation information.

[0219] Fig.14 A schematic diagram of resource allocation scheduling provided by an embodiment of the present invention, such as Fig.14 As shown, the resource management engine is connected to each storage server controller through the network and interconnected with the resource management controller on each storage controller. The resource management software on each storage controller is responsible for monitoring the resource usage of the storage system, and the resource management system engine is responsible for resource monitoring and scheduling of the entire system.

[0220] Device partition information refers to the resource division situation. A storage controller can be connected to multiple memory sticks, and all resources under the same storage controller can be arbitrarily divided into several intervals. The specific division situation can be perceived and monitored by the resource management system, which provides visual interaction to adjust device partitions.

[0221] Dynamic allocation of resources means that the resource management engine can dynamically migrate storage resources from one computing unit to another, and the entire operating system remains online, without restarting the computing unit, which will not affect the running business, and the entire process can be monitored in real time on the management engine's WEB interface. The above functions are based on the basic hot-swappable properties of CXL devices.

[0222] The specific method of storage resource identification processing of the storage controller in this embodiment is not limited, and can be based on a specific identification algorithm, or implemented through a certain mapping relationship, etc.

[0223] There is no limitation on the allocation and scheduling process. The remaining resources in the first memory may be monitored in real time for use by the host. Alternatively, the remaining resources under multiple first memories may be calculated based on a certain model algorithm for selection and use. There is no limitation on this.

[0224] In some embodiments, allocating and scheduling resources of the first memory according to storage resources of multiple storage controllers includes:

[0225] Obtain target storage resources of a target storage controller;

[0226] Pre-establishing a mapping relationship between the target storage controller and the first storage;

[0227] Determine, according to the mapping relationship, whether the remaining resources of the first memory corresponding to the target storage controller are greater than the target storage resources;

[0228] If the remaining resources of the first memory corresponding to the target storage controller are greater than or equal to the target storage resources, the first memory to which the remaining resources greater than or equal to the target storage resources belong is scheduled;

[0229] If the remaining resources of the first memory corresponding to the target storage controller are smaller than the target storage resources, the remaining resources of the reserved idle first memory are scheduled to the target storage controller to facilitate the allocation of the target storage resources of the target storage controller.

[0230] Specifically, the mapping relationship between the storage controller and the first storage is pre-established, which can be established by a target storage controller and all the first storages, or by a target storage controller and multiple first storage controllers, so as to facilitate subsequent scheduling directly based on the mapping relationship through the first switch. Before scheduling, it is necessary to determine whether the resources of the first storage corresponding to the target storage controller that establishes the mapping relationship are greater than the target storage resources. The target storage resources here are the storage resources required by the target storage controller. If the remaining resources of the current first storage are greater than or equal to the target storage resources, the current first storage to which the remaining resources belong is scheduled. If the remaining resources of the current first storage are less than the target storage resources, it is necessary to schedule the remaining resources of the reserved idle first storage for scheduling. The scheduling here can be to schedule the entire first storage whose remaining idle resources are greater than or equal to the target storage resources, so that it is only scheduled once. It is also possible to schedule the remaining resources of multiple remaining reserved spaces to be less than the first storage to which the target storage resources belong. At this time, the scheduling process will involve multiple scheduling, but the remaining resources of the remaining reserved spaces can be fully utilized.

[0231] The specific process of storage resource allocation and scheduling provided in this embodiment improves the accuracy of scheduling. At the same time, it gives priority to scheduling using the resources of the first memory corresponding to the target storage controller with a mapping relationship. When the remaining resources of the corresponding first memory are less than the target storage resources, it is necessary to schedule the remaining resources of the reserved idle first memory to improve the reliability of scheduling.

[0232] In some other embodiments, it also includes:

[0233] The allocation scheduling process of storage resources and storage resource information are displayed through the interface; wherein the list corresponding to the storage resource information includes at least a device resource list, a host resource list and a port resource list;

[0234] Correspondingly, the allocation and scheduling processing is implemented through the touch screen interface.

[0235] Specifically, combined Fig.13 , the allocation scheduling processing information and storage resource information of storage resources are displayed through the interface display, and each scheduling processing process is displayed in real time. The list corresponding to the storage resource information here is as mentioned in the above embodiment, and at least includes a device resource list, a host resource list and a port resource list. When the specific allocation scheduling process is performed, the scheduling can be implemented through the touch screen mode of the interface.

[0236] The touch screen method provided in this embodiment implements the scheduling allocation process, which makes the entire scheduling allocation process visual and simplified, facilitates user scheduling management, and improves user experience.

[0237] The present embodiment provides a storage resource scheduling method based on a storage system, receiving storage resources sent by multiple storage controllers; wherein the storage resources are identified and processed in the storage controller by the data request sent by the host; obtaining the resources of the first memory; and allocating and scheduling the resources of the first memory according to the storage resources of multiple storage controllers to realize the storage resource sharing of the first memory. On the basis of separating the first memory (medium) and the host (computing unit), that is, pulling the local disk and memory in the storage system away, the decoupling of computing and media can be realized, and memory spaces with different performance and capacity can be configured according to application needs. Multiple storage controllers are directly connected to the first switch, and there is no connection and interaction between the multiple storage controllers. There is no need for multiple storage controller control interactions and cross-layer memory migration operations. The first memory can be directly accessed through the first switch, saving the computing power of the storage controller, the resources of the network and the memory channel, reducing delays, and at the same time, improving resource utilization. In addition, the computing unit and the first memory are independent of each other, and the capacity can be expanded and shrunk on demand, realizing independent upgrades, and saving costs. Further, the interaction and use between storage controllers are reduced, and the memory and storage resource sharing across controllers is realized, and the memory usage bandwidth and storage system performance are improved. Finally, each switching unit is connected to its own first memory, and the connection between the first memories under each switching unit is realized in the first switch, so as to reduce the number of branches of the first memory corresponding to each switching unit, which leads to the problem of reduced data transmission rate. The connection relationship between the substrate of the first switch and multiple switching units is the key to realizing the decoupling and reconstruction of hardware resources. By combining high-performance, large-scale switching I / O with basic management software, the storage server system can flexibly switch multiple topologies, and resources can be scheduled and allocated on demand to meet the memory expansion requirements in multiple storage application scenarios.

[0238] The above describes in detail various embodiments corresponding to the storage resource scheduling method based on the storage system. On this basis, the present invention also discloses a storage resource scheduling device based on the storage system corresponding to the above method, which is applied to the first switch of the storage system. The storage system includes a host, a first switch, a first memory and multiple storage controllers; the host is connected to the multiple storage controllers; the multiple storage controllers are directly connected to the first switch; the first switch is connected to the first memory; the first switch includes a substrate and multiple switching units; each storage controller is connected to each switching unit; each switching unit is located on the switching board, and the switching boards are connected through the substrate to realize the connection between the switching units; each switching unit is connected to the first storage corresponding to itself; Fig.15 The structure diagram of a storage resource scheduling device based on a storage system provided by an embodiment of the present invention. Fig.15 As shown, the storage resource scheduling device based on the storage system includes:

[0239] The receiving module 12 is used to receive storage resources sent by multiple storage controllers; wherein the storage resources are identified and processed in the storage controller by the data request sent by the host;

[0240] An acquisition module 13, used to acquire resources of the first memory;

[0241] The allocation and scheduling module 14 is used to perform allocation and scheduling processing on the resources of the first memory according to the storage resources of multiple storage controllers to achieve storage resource sharing of the first memory.

[0242] Since the embodiments of the device part correspond to the above embodiments, please refer to the description of the embodiments of the method part for the embodiments of the device part, and will not be repeated here.

[0243] For an introduction to a storage resource scheduling device based on a storage system provided by the present invention, please refer to the above method embodiment, and the present invention will not be repeated here. It has the same beneficial effects as the above storage resource scheduling method based on a storage system.

[0244] Fig.16 A structural diagram of a storage resource scheduling device based on a storage system provided by an embodiment of the present invention, such as Fig.16 As shown, the device includes:

[0245] A second memory 21, used for storing computer programs;

[0246] The second processor 22 is used to implement the steps of the storage resource scheduling method based on the storage system when executing the computer program.

[0247] The storage resource scheduling device based on the storage system provided in this embodiment may include but is not limited to a smart phone, a tablet computer, a laptop computer, or a desktop computer.

[0248] Among them, the second processor 22 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The second processor 22 can be implemented in at least one hardware form of a digital signal processor (DSP), an FPGA, and a programmable logic array (PLA). The second processor 22 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU; the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the second processor 22 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the second processor 22 may also include an artificial intelligence (AI) processor, which is used to process computing operations related to machine learning.

[0249] The second memory 21 may include one or more non-volatile storage media, which may be non-transitory. The second memory 21 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the second memory 21 is at least used to store the following computer program 211, wherein, after the computer program is loaded and executed by the second processor 22, it can implement the relevant steps of the storage resource scheduling method based on the storage system disclosed in any of the aforementioned embodiments. In addition, the resources stored in the second memory 21 may also include an operating system 212 and data 213, etc., and the storage method may be short-term storage or permanent storage. Among them, the operating system 212 may include Windows, Unix, Linux, etc. Data 213 may include but is not limited to data involved in the storage resource scheduling method based on the storage system, etc.

[0250] In some embodiments, the storage resource scheduling device based on the storage system may also include a display screen 23 , an input and output interface 24 , a communication interface 25 , a power supply 26 , and a communication bus 27 .

[0251] Those skilled in the art can understand that Fig.16 The structure shown in the figure does not constitute a limitation on the storage resource scheduling device based on the storage system, and may include more or fewer components than those shown in the figure.

[0252] The second processor 22 implements the storage resource scheduling method based on the storage system provided by any of the above embodiments by calling the instructions stored in the second memory 21 .

[0253] It should be noted that the second memory and the second processor in this embodiment are different from the first memory and the first processor in the above embodiment.

[0254] For an introduction to a storage resource scheduling device based on a storage system provided by the present invention, please refer to the above method embodiment, and the present invention will not be repeated here. It has the same beneficial effects as the above storage resource scheduling method based on a storage system.

[0255] Furthermore, the present invention also provides a non-volatile storage medium, on which a computer program is stored, and when the computer program is executed by the second processor 22, the steps of the storage resource scheduling method based on the storage system are implemented.

[0256] It is understandable that if the method in the above embodiment is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a non-volatile storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and executes all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.

[0257] For an introduction to a non-volatile storage medium provided by the present invention, please refer to the above method embodiment, which will not be described in detail herein. It has the same beneficial effects as the above storage resource scheduling method based on the storage system.

[0258] Furthermore, the present invention also provides a computer program product, including a computer program / instruction, which implements the steps of the above-mentioned storage resource scheduling method based on the storage system when executed by a second processor.

[0259] For an introduction to a computer program product provided by the present invention, please refer to the above method embodiment, which will not be described in detail herein. It has the same beneficial effects as the above storage resource scheduling method based on the storage system.

[0260] The above is a detailed introduction to a storage system, cluster node, system, storage resource scheduling method and device provided by the present invention. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the embodiments can be referenced to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description. It should be pointed out that for ordinary technicians in this technical field, without departing from the principle of the present invention, the present invention can also be improved and modified in several ways, and these improvements and modifications also fall within the scope of protection of the present invention.

[0261] It should also be noted that, in this specification, relational terms such as first and second, etc. are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprises", "comprising" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprising a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.

Claims

1. A storage system, characterized in that: It includes a host, a first switch, a first memory and a plurality of storage controllers; The host is connected to multiple storage controllers; A plurality of storage controllers are directly connected to the first switch; Multiple storage controllers, used to identify and process data requests sent by the host to determine corresponding storage resources; The first switch is connected to the first memory; the first switch is used to receive storage resources of multiple storage controllers, and allocate and schedule resources of the first memory according to the storage resources of the multiple storage controllers to realize storage resource sharing of the first memory; Wherein, the first switch includes a substrate and a plurality of switching units; Each storage controller is connected to each switching unit; Each switching unit is located on a switching board, and each switching board is connected through a base plate to realize the connection between each switching unit; Each switching unit is connected to its corresponding first memory; Correspondingly, the connections among the host, the plurality of storage controllers, the first switch and the first storage are connected via optical fiber links; When the optical fiber link is a first protocol optical fiber link, the host, the multiple storage controllers, the first switch and the corresponding sending end and receiving end of the first storage all include an optical module, a second switch and a third controller; When the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the transmitting end detects a non-compliant receiving end, the second switch of the transmitting end is used to set the first register value to shield the detection function of the receiving end; Alternatively, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the first protocol optical fiber link is in an electrical idle state, the second switch at the transmitting end is used to set a second register value to reduce a time parameter of the electrical idle state; Alternatively, when the protocol transmitted by the second switch is incompatible with the transmission standard protocol of the optical module and the first speed control signal less than the threshold speed cannot be sent, the third controller at the transmitting end recompiles the second speed control signal greater than or equal to the threshold speed into the first speed control signal to be sent to the receiving end through the optical module; The third controller at the receiving end is used to interpret the first speed control signal as a second speed control signal after the optical module receives the first speed control signal; wherein the optical modules at the transmitting end and the receiving end do not include a processor for processing digital signals and a processor for processing clock data for transmitting a second speed control signal greater than or equal to a threshold speed.

2. The storage system according to claim 1, characterized in that: The substrate includes a first controller, a network switching unit, a control platform, and a second controller; Two ends of the first controller, two ends of the network switching unit, and two ends of the second controller are connected to different switching boards; The first controller, the network switching unit and the control platform are connected in sequence.

3. The storage system according to claim 1, characterized in that: Each storage controller includes a plurality of first processors; The multiple first processors are connected in sequence, and the multiple first processors are in redundant mode; Each first processor is connected to each switching unit.

4. The storage system according to claim 1, characterized in that: The optical modules of the transmitting end and the receiving end are connected; The optical modules of the transmitting end and the receiving end are connected to the second switch and the third controller of the respective ones.

5. The storage system according to claim 3, characterized in that: The multiple first processors in each storage controller support a first protocol bus and a second protocol bus, wherein each first processor provides a first protocol bus and a second protocol bus to the outside, which are respectively used for first memory expansion.

6. The storage system according to claim 1, characterized in that: The first memory includes at least a first data storage device and / or a second data storage device; The first data storage device is used to support memory bar expansion; The second data storage device is used to support hard disk expansion.

7. The storage system according to claim 6, characterized in that: The first data storage device comprises a memory expansion board and a first substrate; wherein the memory expansion board comprises a first connector, a plurality of first interfaces and a plurality of memory controllers; The first end of each first interface is connected to the first switch; The second end of each first interface is connected to a first preset number of memory controllers; The memory interface of the memory controller is connected to a second preset number of memory sticks; The communication interfaces of the memory controller are all connected to the first end of the first connector; The second end of the first connector is connected to the first substrate.

8. The storage system according to claim 6, characterized in that: The second data storage device comprises a hard disk expansion board and a second substrate; wherein the hard disk expansion board comprises a plurality of second connectors, a plurality of signal conditioning cards and a plurality of second interfaces; A third preset number of hard disks are respectively connected to the first ends of the second connector; The second end of the second connector corresponds to the first end of the signal conditioning card; The second end of the signal conditioning card is connected to the first end of the corresponding second interface; and the third ends are connected to the second substrate; The second end of the second interface is connected to the first switch.

9. A cluster node, characterized in that: Comprising at least one storage system according to any one of claims 1 to 8; When there are multiple storage systems, the multiple storage systems are connected through optical fiber links.

10. A cluster system, characterized in that: comprising at least one cluster node as claimed in claim 9; When there are multiple cluster nodes, the multiple cluster nodes are connected through optical fiber links.

11. A storage resource scheduling method based on a storage system, characterized in that: The method applied to the first switch of the storage system according to any one of claims 1 to 8 comprises: Receiving storage resources sent by multiple storage controllers; wherein the storage resources are identified, processed and determined in the storage controller by a data request sent by a host; Acquire resources of the first memory; The resources of the first memory are allocated and scheduled according to the storage resources of the plurality of storage controllers, so as to realize the storage resource sharing of the first memory.

12. The storage resource scheduling method based on the storage system according to claim 11, characterized in that: Allocating and scheduling the resources of the first memory according to the storage resources of the plurality of storage controllers includes: Obtain target storage resources of a target storage controller; Pre-establishing a mapping relationship between the target storage controller and the first storage; Determine, according to the mapping relationship, whether the remaining resources of the first memory corresponding to the target storage controller are greater than the target storage resources; If the remaining resources of the first memory corresponding to the target storage controller are greater than or equal to the target storage resources, the first memory to which the remaining resources greater than or equal to the target storage resources belong is scheduled; If the remaining resources of the first memory corresponding to the target storage controller are smaller than the target storage resources, the remaining resources of the reserved idle first memory are scheduled to the target storage controller to facilitate the allocation of the target storage resources of the target storage controller.

13. The storage resource scheduling method based on the storage system according to claim 11, characterized in that: Also includes: The allocation scheduling process of storage resources and storage resource information are displayed through the interface; wherein the list corresponding to the storage resource information at least includes a device resource list, a host resource list and a port resource list; Correspondingly, the allocation and scheduling processing is implemented through the touch screen interface.

14. A storage resource scheduling device based on a storage system, characterized in that: The first switch applied to the storage system according to any one of claims 1 to 8, the device comprising: A receiving module, used for receiving storage resources sent by a plurality of storage controllers; wherein the storage resources are identified and processed in the storage controller by a data request sent by a host; An acquisition module, used for acquiring resources of the first memory; The allocation and scheduling module is used to perform allocation and scheduling processing on the resources of the first memory according to the storage resources of multiple storage controllers to realize the storage resource sharing of the first memory.

15. A storage resource scheduling device based on a storage system, characterized in that: include: A second memory for storing a computer program; The second processor is used to implement the steps of the storage resource scheduling method based on the storage system as described in any one of claims 11 to 13 when executing the computer program.

16. A non-volatile storage medium, characterized in that: The non-volatile storage medium stores a computer program, and when the computer program is executed by the second processor, the steps of the storage resource scheduling method based on the storage system as described in any one of claims 11 to 13 are implemented.

17. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by the second processor, the steps of the storage resource scheduling method based on the storage system described in any one of claims 11 to 13 are implemented.

Citation Information

Patent Citations

  • Storing method, storing system and controller

    CN101763221A

  • Storage framework as well as initialization method, data storage method and data storage and management apparatus therefor

    CN105739930A