Hard disk management method and apparatus, and system

By implementing accurate identification and isolation methods in the storage controller and control unit, local faults in the hard disk are identified and isolated, the problem of high frequency of hard disk failure detection and replacement is solved, and resource conservation and extended hard disk service life are achieved.

WO2025001142A1PCT designated stage expired Publication Date: 2025-01-02HUAWEI TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/075513
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-28
Filing Date
2024-02-02
Publication Date
2025-01-02

AI Technical Summary

Technical Problem

With the increase in the traffic volume in the data center, the frequency of hard disk failure detection and replacement increases, resulting in an increase in the cost and resource waste of storage nodes. It is difficult for the existing technology to effectively identify and isolate local faults in the hard disk, resulting in wasting available space in the entire disk isolation.

Method used

By implementing accurate identification and isolation methods in the storage controller and control unit, the physical attribute detection of local areas is used to identify the faulty head or disk surface, and the notification information is passed to isolate the unavailable physical space, avoid isolating the entire disk, and extend the use of the hard disk. Duration, saving resources.

Benefits of technology

It realizes accurate identification and isolation of local faults in hard disks, reduces the frequency of isolation of the entire hard disk by storage nodes, reduces the waste of storage and computing resources, extends the service life of the hard disk, and reduces the cost of replacing the hard disk.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024075513_02012025_PF_FP_ABST
    Figure CN2024075513_02012025_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in the present application are a hard disk management method and apparatus, and a system. At least one storage node in the system can accurately identify a local area in a hard disk that has a fault, determine a physical space corresponding to the local area, and thus accurately isolate the physical space, which helps to prolong the service life of a hard disk while ensuring the reliability of data in the hard disk, and reduces the frequency of a storage system isolating the entire hard disk, thereby facilitating the reduction of the cost of the storage system. In addition, since a detection result of physical attributes of a local area generally does not depend on a large amount of I / O access to a corresponding physical space, the storage node can identify, on the basis of the detection result of the physical attributes, the local area that has a fault, and then determine an unavailable physical space, which helps to identify and isolate the unavailable physical space before a computing node performs a large amount of access to the unavailable physical space, thereby improving data reliability, and reduce the time delay caused by failure to access the physical space.
Need to check novelty before this filing date? Find Prior Art

Description

Hard disk management method, device and system

[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on June 28, 2023, with application number 202310778132.6 and invention name “A storage array”, and the Chinese patent application filed with the State Intellectual Property Office of China on September 28, 2023, with application number 202311294459.2 and invention name “Hard disk management method, device and system”, all contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of storage technology, and in particular to a hard disk management method, device, and system. Background Art

[0003] As the volume of business within data centers continues to grow, the amount of data to be stored is also increasing. Consequently, the number of hard drives in storage nodes is also increasing. The health of the hard drives directly affects the security of the data stored on them. To improve the security of data in storage nodes, storage nodes generally identify faulty hard drives based on the entire drive's dimensional data. For example, when a hard drive's input / output (I / O) errors reach a threshold, the storage node isolates the entire drive. For example, the storage node can prompt a hard drive replacement or perform redundancy recovery on the data stored on the entire drive.

[0004] As the capacity of hard drives continues to increase, the price of hard drives is also getting higher and higher, and the cost of replacing hard drives is constantly increasing. In addition, the storage node will take a longer time to perform redundant recovery of data on the entire hard drive, consuming more storage resources and computing resources.

[0005] Summary of the Invention

[0006] The present application provides a hard disk management method, device, and system for reducing the frequency of hard disk replacement in storage nodes, reducing the cost of storage nodes, and saving storage resources and computing resources of storage nodes.

[0007] The present application provides a method for managing a hard disk. The hard disk can provide a physical space for data storage for a storage node. The hard disk can include a storage controller and a storage component. The storage component can write data to or read data from the physical space for data storage under the control of the storage controller. The storage controller is used to connect to a control unit of a storage node, can receive data access requests from the control unit, and access the physical space provided by the storage component based on the data access request. The physical space provided by the storage component can refer to the physical space in which the storage component can write data and / or read data under the control of the storage controller.

[0008] In the first aspect, the execution subject of the method may be a hard disk or a module in the hard disk. Taking the execution of the method by a storage controller as an example, the method may include: the storage controller identifies the health status of a local area in the storage component, and the local area is used to provide a part of the physical space in the entire physical space provided by the storage component; when the health status of the local area indicates that the local area is faulty, the storage controller determines that the part of the physical space is unavailable.

[0009] After the storage controller determines that a part of the physical space is unavailable, it helps the storage controller to more accurately determine the available physical space in the hard disk, which helps the hard disk continue to provide reliable storage services for the storage node, extend the service life of the hard disk, reduce the frequency of storage nodes isolating the entire hard disk, reduce the cost of storage nodes, and save storage and computing resources of storage nodes.

[0010] Optionally, the storage controller identifies the health status of the local area, including: the storage controller obtains operating information of the local area, the operating information includes values ​​of one or more physical properties of the local area; the storage controller identifies the health status of the local area based on the operating information.

[0011] Optionally, the one or more physical properties include at least one of the following physical properties: temperature, size, motion parameters, and electrical parameters. For example, the hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads (such as one magnetic head), the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal. The hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

[0012] The detection results of the physical properties of a local area generally do not depend on a large number of I / O accesses to the corresponding physical space. Identifying the health status of the local area based on the detection results of the physical properties of the local area is conducive to isolating the physical space before the control unit accesses the corresponding physical space in large numbers, improving data reliability, and reducing the delay caused by failure to access the physical space.

[0013] Optionally, the method further includes: the storage controller transmitting a notification message to the control unit, wherein the notification message is used to instruct the control unit to isolate the portion of physical space. This helps prevent the control unit from continuing to access the portion of physical space, thereby improving data reliability and reducing data access latency.

[0014] Optionally, the notification information includes the address of the portion of physical space, and the notification information is used to indicate that the address of the portion of physical space is unavailable, which helps the control unit not to subsequently allocate the address, thereby avoiding further access to the portion of physical space.

[0015] Optionally, the notification information includes a first address of a first physical space in which data is written in the portion of physical space, and the notification information is used to instruct the control unit to perform redundancy repair on the data at the first address. This facilitates the control unit performing redundancy repair on the data written in the portion of physical space, thereby improving the reliability of data stored in the storage node.

[0016] Optionally, the notification information includes capacity information, which is used to determine the capacity of the portion of physical space, and the notification information is used to indicate that the hard disk has lost the capacity. This helps the control unit determine the current available capacity of the hard disk and then determine the isolation strategy. For example, when the capacity exceeds a threshold, all physical space in the hard disk is isolated, or the storage pool is updated according to the capacity, for example, the storage pool is reduced in size, or the capacity of the spare physical space is used to compensate for the lost capacity.

[0017] Optionally, the method further includes: receiving, by the storage controller, a data access request from the control unit; and when the address carried in the data access request points to the portion of physical space, transmitting, by the storage controller, a response message to the control unit, the response message indicating that the address carried in the data access request is unavailable. This helps to avoid low data reliability resulting from the hard disk successfully writing data to the damaged area as requested, and also helps to reduce long access delays caused by the hard disk returning an error to the control unit after failing to access the damaged area.

[0018] In the second aspect, the execution subject of the method can be the control unit or a module in the control unit. Taking the control unit executing the method as an example, the method may include: the control unit obtains notification information from the hard disk, the notification information is transmitted by the hard disk to the control unit when a local area in the storage component fails, the local area is used to provide a part of the physical space in the entire physical space provided by the storage component, and the notification information is used to indicate the isolation of the part of the physical space; the control unit isolates the part of the physical space. When a local area in the hard disk fails, it will cause a part of the physical space in the hard disk to be unavailable. The control unit isolates the part of the physical space according to the notification information, which is conducive to the control unit continuing to access the available physical space in the hard disk. Under the premise of ensuring the reliability of the hard disk, the service life of the hard disk is extended, the frequency of isolating the entire hard disk is reduced, the cost of the storage node is reduced, and the storage resources and computing resources of the storage node are saved.

[0019] Optionally, the notification information includes an address of the portion of physical space, and isolating the portion of physical space includes: the control unit updating an available address of the hard disk, where the available address is an address of allocatable physical space on the hard disk, and the updated available address excludes the address of the portion of physical space. This facilitates the control unit not subsequently allocating the address, thereby preventing further access to the portion of physical space.

[0020] Optionally, the notification information includes a first address of a physical space in which data is written in the portion of physical space, and isolating the portion of physical space includes: the control unit performing redundancy repair on the data at the first address. This facilitates the control unit performing redundancy repair on the data written in the portion of physical space, thereby improving the reliability of data stored in the storage node.

[0021] In a third aspect, the execution subject of the method may be the control unit or a module in the control unit. Taking the control unit executing the method as an example, the method may include: the control unit obtains operating information of a local area of ​​the storage component, the operating information including values ​​of one or more physical properties of the local area, the local area being used to provide a portion of the total physical space provided by the storage component; the control unit identifies the health status of the local area based on the operating information; and when the health status of the local area indicates a failure of the local area, the control unit determines that the portion of physical space is unavailable.

[0022] After the control unit determines that a portion of the physical space in the hard disk is unavailable, it is helpful for the control unit to more accurately determine the available physical space in the hard disk, which is helpful for the hard disk to continue to provide reliable storage services for the storage node, extend the use time of the hard disk, reduce the frequency of isolating the entire hard disk, reduce the cost of the storage node, and save the storage resources and computing resources of the storage node.

[0023] Optionally, the one or more physical properties include at least one of the following physical properties: temperature, size, motion parameters, and electrical parameters. For example, the hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads (such as one magnetic head), the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal. The hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

[0024] The detection results of the physical properties of a local area generally do not depend on a large number of I / O accesses to the corresponding physical space. Identifying the health status of the local area based on the detection results of the physical properties of the local area is conducive to isolating the physical space before the control unit accesses the corresponding physical space in large numbers, improving data reliability, and reducing the delay caused by failure to access the physical space.

[0025] Optionally, the method further includes: controlling the control unit to isolate the portion of the physical space.

[0026] Optionally, isolating the portion of physical space includes: determining, by the control unit, an address of the portion of physical space; and updating, by the control unit, an available address of the hard disk, wherein the available address is an address of allocatable physical space in the hard disk, and the updated available address excludes the address of the portion of physical space. This facilitates the control unit not subsequently allocating the address, thereby preventing further access to the portion of physical space.

[0027] Optionally, isolating the portion of physical space by the control unit includes: determining a first address of a physical space in which data is written in the portion of physical space by the control unit; and performing redundancy repair on the data at the first address by the control unit. This facilitates the control unit performing redundancy repair on the data written in the portion of physical space.

[0028] Optionally, the method further includes: determining, by the control unit, the capacity of the portion of physical space; and isolating, when the capacity exceeds a threshold, all physical space in the hard disk. This facilitates the control unit determining the current available capacity of the hard disk and subsequently determining an isolation strategy. For example, when the capacity exceeds the threshold, all physical space in the hard disk may be isolated, or a storage pool may be updated based on the capacity, such as by shrinking the storage pool, or the capacity of spare physical space may be used to compensate for the lost capacity.

[0029] In a fourth aspect, the execution subject of the method can be a hard disk or a module in the hard disk. Taking the execution of the method by a storage controller as an example, the method can include: the storage controller obtains the operating information of the local area, the operating information includes the value of one or more physical properties of the local area in the hard disk, the operating information is used to identify the health status of the local area, and the local area is used to provide a part of the physical space provided by the storage component; the storage controller transmits the operating information to the control unit. In this way, when a local area fails, it is beneficial for the control unit to determine that this part of the physical space is unavailable based on the operating information, avoiding the control unit from continuing to access this part of the physical space, thereby improving data reliability and reducing latency; at the same time, it is beneficial for the hard disk to more accurately determine the available physical space, thereby facilitating the hard disk to continue to provide reliable storage services for the storage node, reducing the waste of available physical space in the hard disk, and thus reducing the cost of the storage node.

[0030] Optionally, the one or more physical properties include at least one of the following physical properties: temperature, size, motion parameters, and electrical parameters. For example, the hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads (such as one magnetic head), the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal. The hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

[0031] The detection results of the physical properties of a local area generally do not depend on a large number of I / O accesses to the corresponding physical space. Identifying the health status of the local area based on the detection results of the physical properties of the local area is conducive to isolating the physical space before the control unit accesses the corresponding physical space in large numbers, improving data reliability, and reducing the delay caused by failure to access the physical space.

[0032] In a fifth aspect, the present application provides a hard disk, which includes a storage controller and a storage component, wherein the storage controller is used to connect to the control unit of the storage node, and the storage component is used to provide the control unit with physical space for storing data under the control of the storage controller, and the storage controller is used to receive a data access request from the control unit and access the physical space provided by the storage component according to the data access request, and the storage controller is used to execute the method described in the first aspect or the fourth aspect.

[0033] In a sixth aspect, the present application provides a storage node, comprising a control unit and a communication unit, the control unit being connected to the communication unit, the communication module being configured to communicate with a hard disk, the control unit being configured to connect to the hard disk via the communication unit, and the control unit being configured to execute the method described in the second or third aspect. The present application does not limit the number of hard disks connected to the communication unit, nor does it limit the communication unit to being directly connected to a hard disk. For example, the communication unit may be configured to connect to a hard disk enclosure, and the communication unit may connect to the hard disks in the hard disk enclosure via the controller of the hard disk enclosure.

[0034] Optionally, the storage node further includes one or more hard disks, which are connected to the communication unit, and the one or more hard disks include at least one hard disk as described in the fifth aspect.

[0035] In a seventh aspect, the present application provides a computer-readable storage medium, which includes computer-executable instructions. When the computer-executable instructions are run on a computer, the computer executes the method described in any one of the first to fourth aspects.

[0036] In an eighth aspect, the present application provides a system comprising a plurality of storage nodes as described in the sixth aspect connected to each other.

[0037] Optionally, the system further includes one or more computing nodes, and the computing nodes are used to send data access requests to the storage nodes.

[0038] The present application also provides a hard disk management device. The hard disk can provide a physical space for data storage for a storage node. The hard disk can include a storage controller and a storage component. The storage component can write data to or read data from the physical space for data storage under the control of the storage controller. The storage controller is used to connect to a control unit of a storage node, can receive data access requests from the control unit, and access the physical space provided by the storage component based on the data access requests. The physical space provided by the storage component can refer to the physical space in which the storage component can write data and / or read data under the control of the storage controller.

[0039] In a ninth aspect, the management device is the hard disk, or is provided in the hard disk and is a module in the hard disk. The management device may include an identification module and a determination module. The identification module is configured to identify the health status of a local area in the hard disk, where the local area is used to provide a portion of the total physical space provided by the storage component. The determination module is configured to determine that the portion of physical space is unavailable when the health status of the local area indicates a failure in the local area.

[0040] Optionally, the identification module is used to: obtain operating information of a local area, where the operating information includes values ​​of one or more physical properties of the local area; and identify a health status of the local area based on the operating information.

[0041] Optionally, the one or more physical properties include at least one of the following physical properties: temperature, size, motion parameters, and electrical parameters. For example, the hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads (such as one magnetic head), the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal. The hard disk is a magnetic medium hard disk HDD, the storage component includes a plurality of magnetic heads, the local area is a portion of the plurality of magnetic heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

[0042] Optionally, the management device may further include a communication module, which is used to transmit notification information to the control unit, and the notification information is used to instruct to isolate the part of the physical space.

[0043] Optionally, the notification information includes the address of the part of the physical space, and the notification information is used to indicate that the address of the part of the physical space is unavailable.

[0044] Optionally, the notification information includes a first address of a first physical space where data is written in the portion of physical space, and the notification information is used to instruct the control unit to perform redundancy repair on the data in the first address.

[0045] Optionally, the notification information includes capacity information, where the capacity information is used to determine the capacity of the portion of physical space, and the notification information is used to indicate that the hard disk has lost the capacity.

[0046] Optionally, the communication module is also used to: receive a data access request from the control unit; when the address carried by the data access request points to the part of the physical space, transmit response information to the control unit, wherein the response information is used to indicate that the address carried by the data access request is unavailable.

[0047] In the tenth aspect, the management device is the control unit, or is provided in the control unit and is a module in the control unit. The management device includes an acquisition module and an isolation module. The acquisition module is used to obtain notification information from the hard disk, and the notification information is transmitted by the hard disk to the control unit when a local area in the storage component fails. The local area is used to provide a part of the physical space in the entire physical space provided by the storage component, and the notification information is used to instruct the isolation of the part of the physical space. The isolation module is used to isolate the part of the physical space.

[0048] Optionally, the notification information includes the address of the part of physical space, and the isolation module is used to: update the available address of the hard disk, the available address is the address of the allocatable physical space in the hard disk, and the updated available address does not include the address of the part of physical space.

[0049] Optionally, the notification information includes a first address of the physical space where data is written in the portion of physical space, and the isolation module is used to perform redundancy repair on the data in the first address.

[0050] In the eleventh aspect, the management device is the control unit, or is provided in the control unit and is a module in the control unit, and the management device includes an acquisition module and a determination module. The acquisition module is configured to acquire operating information of the local area, wherein the operating information includes values ​​of one or more physical properties of the local area in the hard disk, and the local area is configured to provide a portion of the total physical space provided by the storage component. The determination module is configured to identify the health status of the local area based on the operating information; and when the health status of the local area indicates a failure of the local area, determine that the portion of physical space is unavailable.

[0051] Optionally, the one or more physical properties include at least one of the following physical properties: temperature, size, motion parameter and electrical parameter.

[0052] Optionally, the hard disk is a magnetic medium hard disk HDD, the local area is a portion of the magnetic head in the HDD, the motion parameters of the portion of the magnetic head include the flying height of the portion of the magnetic head, and the electrical parameters of the portion of the magnetic head include the resistance and / or channel parameters of the portion of the magnetic head.

[0053] Optionally, the management device may further include an isolation module, which is used to isolate the part of the physical space.

[0054] Optionally, the isolation module is used to: determine the address of the portion of physical space; update the available address of the hard disk, the available address being the address of the allocatable physical space in the hard disk, and the updated available address does not include the address of the portion of physical space.

[0055] Optionally, the isolation module is used to: determine a first address of the physical space where data is written in the portion of physical space; and perform redundancy repair on the data in the first address.

[0056] Optionally, the isolation module is further used to: determine the capacity of the portion of physical space; and when the capacity exceeds a threshold, isolate all physical space in the hard disk.

[0057] In a twelfth aspect, the management device is the hard disk, or is provided in the hard disk and is a module in the hard disk. The device includes an acquisition module and a communication module. The acquisition module is used to obtain operating information of the local area, wherein the operating information includes the values ​​of one or more physical properties of the local area in the hard disk, and the operating information is used to identify the health status of the local area, and the local area is used to provide a portion of the total physical space provided by the storage component. The communication module is used to transmit the operating information to the control unit.

[0058] Optionally, the one or more physical properties include at least one of the following physical properties: temperature, size, motion parameter and electrical parameter.

[0059] Optionally, the hard disk is a magnetic medium hard disk HDD, the local area is a portion of the magnetic head in the HDD, the motion parameters of the portion of the magnetic head include the flying height of the portion of the magnetic head, and the electrical parameters of the portion of the magnetic head include the resistance and / or channel parameters of the portion of the magnetic head.

[0060] Since the various devices provided in this application can be used to execute the aforementioned method steps, the technical effects that can be obtained by the various devices in this application can refer to the technical effects obtained by the aforementioned corresponding methods, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0061] FIG1 exemplarily shows a centralized storage system using a disk-controller separation architecture;

[0062] FIG2 exemplarily shows a distributed storage system using a fully converged architecture;

[0063] FIG3 exemplarily shows a possible structure of a HDD;

[0064] Figures 4 and 5 schematically illustrate a possible process of the method of the present application;

[0065] FIG6 schematically shows another possible structure of the system of the present application;

[0066] 7 to 10 schematically illustrate a possible structure of the management device provided in this application. DETAILED DESCRIPTION

[0067] The following first introduces the application scenarios to which this application is applicable with reference to the accompanying drawings.

[0068] The present application can be applied to the application scenario of a centralized storage system. The so-called centralized storage system refers to a central node composed of one or more main devices, in which data is centrally stored, and all data processing services of the entire system are centrally deployed on this central node. In other words, in a centralized storage system, the terminal or client is only responsible for data input and output, while the storage and control processing of the data are completely handed over to the central node. The biggest feature of a centralized system is its simple deployment structure. There is no need to consider how to deploy services to multiple nodes, nor is there any need to consider the distributed collaboration issues between multiple nodes.

[0069] FIG1 exemplarily shows a centralized storage system that adopts a disk-controller separation architecture. In the centralized storage system shown in FIG1 , users access data through application programs. The computers that run these applications are called "application servers." The application server 100 can be a physical machine or a virtual machine. Physical application servers include but are not limited to desktop computers, servers, laptops, and mobile devices. The application server accesses the storage system through a fiber optic switch 110 to access data. However, the switch 110 is only an optional device, and the application server 100 can also communicate directly with the storage system 120 through the network. Alternatively, the fiber optic switch 110 can also be replaced with an Ethernet switch, an InfiniBand switch, a RoCE (RDMA over Converged Ethernet) switch, etc.

[0070] The storage system 120 shown in Figure 1 is a centralized storage system. A centralized storage system is characterized by a unified entry point through which all data from external devices must pass. This entry point is the centralized storage system's engine 121. Engine 121 is the core component of the centralized storage system, implementing many of the system's advanced functions.

[0071] As shown in Figure 1, there are one or more controllers in the engine 121. Figure 1 uses the example of an engine 121 containing two controllers for illustration. A mirror channel is provided between controller 0 and controller 1. Therefore, when controller 0 writes a copy of data to its memory 124, a copy of the data can be sent to controller 1 via the mirror channel, and controller 1 stores the copy in its local memory 124. Thus, controller 0 and controller 1 serve as backups for each other. When controller 0 fails, controller 1 can take over the business of controller 0, and when controller 1 fails, controller 0 can take over the business of controller 1, thereby avoiding the unavailability of the entire storage system 120 due to hardware failure. When four controllers are deployed in the engine 121, there is a mirror channel between any two controllers, so any two controllers serve as backups for each other.

[0072] The engine 121 also includes a front-end interface 125 and a back-end interface 126. The front-end interface 125 is used to communicate with the application server 100, thereby providing storage services for the application server 100. The back-end interface 126 is used to communicate with the hard disk 133 to expand the storage system capacity. Through the back-end interface 126, the engine 121 can connect to more hard disks 133, thereby forming a very large storage resource pool (or storage pool).

[0073] In terms of hardware, as shown in FIG1 , the controller 0 may include at least a processor 123 and a memory 124. The processor 123 is a central processing unit (CPU) that is used to process data access requests (such as read / write data requests) from outside the storage system (server or other storage system), and is also used to process requests generated within the storage system. Exemplarily, when the processor 123 receives write data requests sent by the application server 100 through the front-end port 125, it temporarily stores the data in these write data requests in the memory 124. When the total amount of data in the memory 124 reaches a certain threshold, the processor 123 sends the data stored in the memory 124 to the hard disk 133 through the back-end port for persistent storage.

[0074] Memory 124 refers to internal storage that directly exchanges data with the processor. It can read and write data at any time and at a high speed, serving as temporary data storage for the operating system or other running programs. Memory includes at least two types of memory. For example, memory can be either random access memory (RAM) or read-only memory (ROM). For example, ROM is dynamic random access memory (DRAM) or storage class memory (SCM). DRAM is a type of semiconductor memory that, like most random access memory (RAM), is a volatile memory device. SCM is a hybrid storage technology that combines the characteristics of traditional storage devices and memory. Storage class memory can provide faster read and write speeds than hard drives, but has slower access speeds than DRAM and is also less expensive than DRAM. However, DRAM and SCM are merely exemplary in this embodiment; memory can also include other types of random access memory, such as static random access memory (SRAM). As for the read-only memory, for example, it can be a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), etc. In addition, the memory 124 can also be a dual in-line memory module or a dual-line memory module (DIMM), that is, a module composed of dynamic random access memory (DRAM), or a solid state disk (SSD). In actual applications, multiple memories 124 and different types of memories 124 can be configured in the controller 0. This embodiment does not limit the number and type of memory 124. In addition, the memory 124 can be configured to have a power-saving function. The power-saving function means that when the system loses power and then powers on again, the data stored in the memory 124 will not be lost. A memory with a power-saving function is called a non-volatile memory.

[0075] Memory 124 stores software programs, and processor 123 executes the software programs in memory 124 to manage the hard disks. For example, hard disks can be abstracted into storage pools, which are then divided into LUNs for server use. The LUNs here are essentially the hard disks seen on the server. Of course, some centralized storage systems are also file servers, providing shared file services for servers.

[0076] The hardware components and software structure of controller 1 (and other controllers not shown in FIG. 1 ) are similar to those of controller 0 and are not described in detail here.

[0077] In the centralized storage system with separate disk and controller architecture shown in Figure 1 , the engine 121 may not have a hard drive slot. The hard drive 133 must be placed in the storage device 130, and the back-end interface 126 communicates with the storage device 130. The back-end interface 126 exists in the form of an adapter card within the engine 121. Two or more back-end interfaces 126 can be used simultaneously on one engine 121 to connect to multiple hard drive enclosures. Alternatively, the adapter card can be integrated into the motherboard, in which case the adapter card can communicate with the processor 123 via the PCIE bus.

[0078] It should be noted that FIG1 only shows one engine 121 . However, in actual applications, the storage system may include two or more engines 121 , and redundancy or load balancing may be performed between the multiple engines 121 .

[0079] Storage device 130 includes a controller 131 and several hard disks 133. Controller 131 can have various forms. In one case, storage device 130 can be a smart disk enclosure, as shown in Figure 1. Controller 131 includes a CPU and memory. The CPU is used to perform operations such as address translation and reading and writing data. The memory is used to temporarily store data to be written to hard disk 133, or data read from hard disk 133 to be sent to controller 0 or controller 1. In another case, controller 131 is a programmable electronic component, such as a data processing unit (DPU). A DPU has the versatility and programmability of a CPU, but is more specialized and can efficiently operate on network data packets, storage requests, or analysis requests. A DPU is distinguished from a CPU by its high degree of parallelism (it needs to process a large number of requests). Optionally, the DPU can be replaced with a processing chip such as a graphics processing unit (GPU) or an embedded neural network processing unit (NPU). Typically, the number of controllers 131 can be one, two, or more. When the storage device 130 includes at least two controllers 131, the hard disk 133 and the controller 131 may have an ownership relationship. If the hard disk 133 and the controller 131 have an ownership relationship, then each controller 131 can only access the hard disk that belongs to it, which often involves forwarding data access requests between the controllers 131, resulting in a longer data access path. In addition, if the storage space is insufficient, when adding a new hard disk 133 to the storage device 130, it is necessary to rebind the ownership relationship between the hard disk 133 and the controller 131, which is complicated and leads to poor scalability of the storage space. Therefore, in another embodiment, the functions of the controller 131 can be offloaded to the network card 132. In other words, in this embodiment, the storage device 130 does not have a controller 131 inside, but the network card 132 completes data reading and writing, address conversion and other computing functions. In this case, the network card 132 is an intelligent network card. It can include a CPU and memory. In some application scenarios, the network card 132 may also have a persistent storage medium, such as persistent memory (PM), non-volatile random access memory (NVRAM), or phase change memory (PCM). The CPU is used to perform operations such as address translation and reading and writing data. The memory is used to temporarily store data to be written to the hard disk 133 or read from the hard disk 133 to be sent to the controller.It can also be a programmable electronic component, such as a data processing unit (DPU). The DPU has the versatility and programmability of the CPU, but is more specialized and can run efficiently on network data packets, storage requests or analysis requests. The DPU is distinguished from the CPU by a greater degree of parallelism (needing to process a large number of requests). Optionally, the DPU here can also be replaced with a processing chip such as a graphics processing unit (GPU) or an embedded neural-network processing unit (NPU). There is no ownership relationship between the network card 132 and the hard disk 133 in the storage device 130. The network card 132 can access any hard disk 133 in the storage device 130, so it is more convenient to expand the hard disk when the storage space is insufficient.

[0080] Depending on the communication protocol between the engine 121 and the storage device 130, the storage device 130 may be a SAS disk enclosure, an NVMe disk enclosure, an IP disk enclosure, or other types of disk enclosures. SAS disk enclosures utilize the SAS 3.0 protocol, each supporting 25 SAS hard drives. The engine 121 connects to the storage device 130 via an onboard SAS interface or a SAS interface module. An NVMe disk enclosure, more like a complete computer system, houses NVMe hard drives. The NVMe disk enclosure then connects to the engine 121 via an RDMA port.

[0081] Of course, the centralized storage system using a separate disk-controller architecture shown in Figure 1 is merely an example. In actual applications, a centralized storage system can also adopt an integrated disk-controller architecture. Unlike the separate disk-controller architecture shown in Figure 1, in the integrated disk-controller architecture, the engine 121 has a hard drive slot, and the hard drive 133 can be directly deployed in the engine 121. The back-end interface 126 is an optional configuration. When the system storage space is insufficient, more hard drives or hard drive enclosures can be connected through the back-end interface 126.

[0082] This application can be applied to distributed storage system scenarios. A distributed storage system is a system that stores data in a distributed manner across multiple independent storage nodes. Traditional network storage systems use centralized storage arrays to store all data. The performance of the storage array is both a bottleneck for system performance and a focus for reliability and security, failing to meet the needs of large-scale storage applications. Distributed network storage systems employ a scalable system architecture, utilizing multiple storage nodes to share the storage load. This not only improves system reliability, availability, and access efficiency, but also facilitates scalability.

[0083] FIG2 exemplifies a distributed storage system using a fully converged architecture. The distributed storage system shown in FIG2 includes a server cluster, which includes one or more servers 210 ( FIG2 shows three servers 210, but is not limited to three servers 210). Each server 210 can communicate with each other. A server 210 is a device that has both computing and storage capabilities, such as a server or desktop computer. In terms of software, each server 210 has an operating system. A virtual machine 211 can be created on a server 210. The computing resources required by the virtual machine 211 are derived from the local processor 212 and memory 213 of the server 210. The storage resources required by the virtual machine 211 can be derived from the local hard disk 215 of the server 210 or from the hard disks 215 of other servers 210. In addition, various applications can run in the virtual machine 211, and users can trigger data access requests through the applications in the virtual machine 211.

[0084] In terms of hardware, as shown in Figure 2, the server 210 includes at least a processor 212, a memory 213, a network card 214 and a hard disk 215. The processor 212, the memory 213, the network card 214 and the hard disk 215 are connected via a bus. Among them, the processor 212 and the memory 213 are used to provide computing resources. Specifically, the processor 212 may include one or more central processing units (CPUs), and a CPU may have one or more CPU cores. This embodiment does not limit the number of CPUs and the number of CPU cores. The processor 212 is used to process data access requests from outside the server 210, or requests generated within the server 210. For example, when the processor 212 receives a write data request sent by a user, it temporarily saves the data in these write data requests in the memory 213. When the total amount of data in the memory 213 reaches a certain threshold, the processor 212 sends the data stored in the memory 213 to the hard disk 215 for persistent storage. In addition, the processor 212 is also used for computing or processing data, such as metadata management, data deduplication, data compression, data verification, virtualized storage space, and address translation.

[0085] Memory 213 refers to internal memory that directly exchanges data with the processor. It can read and write data at any time and at a high speed, serving as temporary data storage for the operating system or other running programs. Memory includes at least two types of memory. For example, memory can be either random access memory (RAM) or read-only memory (ROM). For example, random access memory is dynamic random access memory (DRAM) or storage class memory (SCM). DRAM is a type of semiconductor memory that, like most random access memory (RAM), is a volatile memory device. SCM is a hybrid storage technology that combines the characteristics of traditional storage devices and memory. Storage class memory can provide faster read and write speeds than hard drives, but has slower access speeds than DRAM and is also cheaper than DRAM. However, DRAM and SCM are merely exemplary in this embodiment; memory can also include other random access memories, such as static random access memory (SRAM). As for the read-only memory, for example, it can be a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), etc. In addition, the memory 213 can also be a dual in-line memory module or a dual-line memory module (DIMM), that is, a module composed of dynamic random access memory (DRAM), or a solid state disk (SSD). In actual applications, the server 210 can be configured with multiple memories 213, as well as different types of memories 213. This embodiment does not limit the number and type of memory 213. In addition, the memory 213 can be configured to have a power-saving function. The power-saving function means that when the system loses power and then powers on again, the data stored in the memory 213 will not be lost. A memory with a power-saving function is called a non-volatile memory. The network card 214 is used to communicate with other application servers 210.

[0086] The hard disk mentioned in this application is used to provide storage resources, such as storing data. It can be a magnetic disk or other types of storage media, such as a hard disk drive (HDD), a solid-state drive (SSD), a shingled magnetic recording hard disk, or a magnetic tape.

[0087] Of course, the distributed storage system using a fully converged architecture shown in FIG2 is merely an example. In actual applications, the distributed storage system may also adopt a storage-computing integrated architecture. Unlike the fully converged architecture shown in FIG2 , in the storage-computing integrated architecture, no virtual machine is required to be created on each server 210. Instead, the processor 212 on each server 210 can receive external data access requests and perform corresponding read and write data processing.

[0088] Alternatively, a distributed storage system may also adopt a storage-computing separation architecture. This application refers to the node used to run the application that triggers the data access request as a computing node. The computing node is, for example, the application server 100 shown in Figure 1 or the VM 211 shown in Figure 2. This application refers to the node used to process the data access request as a storage node. In the storage-computing integration architecture, the computing nodes and storage nodes are deployed in the same physical device. In the storage-computing separation architecture, the computing nodes and storage nodes are deployed in different physical devices.

[0089] Alternatively, a distributed storage system can adopt a structured memory fabric (MF) architecture. Unlike the previously mentioned distributed storage system with a storage-computing separation architecture, each storage node in an MF architecture contains different types of storage media, such as DRAM, SCM, and hard disks. These different types of storage media all provide memory interfaces that can be directly accessed by the processor. Furthermore, the various types of memory contained in these storage nodes form a storage pool.

[0090] The storage system may include a management node (not shown in Figures 1 and 2). The management node is used to create and manage storage pools. Optionally, the management node is a node elected from the storage nodes.

[0091] Not every storage node in the storage system must contribute storage space to the storage pool. A storage pool may only cover some of the storage nodes in the cluster. In some application scenarios, two or more storage pools may be created in the storage system, each of which covers one or more storage nodes, and these storage nodes provide storage space for the storage pool. The storage nodes occupied by different storage pools may or may not overlap. In summary, the storage pool in this embodiment is established in at least two storage nodes, and the storage space it contains comes from at least two different types of storage.

[0092] Regarding the creation of storage pools. Each storage node can regularly report storage status information to the management node through the heartbeat channel. There can be one management node or multiple management nodes can be deployed. It can be deployed in the storage system as an independent node or jointly deployed with the storage nodes. In other words, one or more storage nodes assume the functions of the management node. The status information of the storage includes but is not limited to: the types of various storage devices contained in the storage node, the health status, the total capacity of each storage device, the available capacity, etc. The management node creates a storage pool based on the collected information. Creation means that the storage space provided by each storage node is centralized as a storage pool for unified management. Therefore, the physical space of the storage pool comes from the various storage devices contained in each storage node. However, in some scenarios, the storage node can selectively provide storage to the storage pool based on its own situation, such as the health status of the storage device. In other words, it is possible that some storage devices in some storage nodes are not part of the storage pool.

[0093] After collecting the information, the management node needs to uniformly address the storage space included in the storage pool. After unified addressing, each segment of the storage pool has a unique global address. The so-called global address indicates a space that is unique in the storage pool, and each storage node 20 knows the meaning of the address. After a physical space is allocated to a segment of the storage pool, the global address of the space has its corresponding physical address. The physical address indicates which storage node and memory the space represented by the global address is actually located on, as well as the offset in the memory, that is, the location of the physical space. Each segment of space here can be a "page".

[0094] In practical applications, to ensure data reliability, erasure coding (EC) verification mechanisms or multi-copy mechanisms are often used to achieve data redundancy. The EC verification mechanism involves dividing data into at least two data shards and calculating the parity shards of the at least two data shards according to a specific verification algorithm. If one data shard is lost, the data can be restored using the other data shard and the parity shard. Therefore, for data, its global address is a collection of multiple fine-grained global addresses, each of which corresponds to the physical address of a data shard / parity shard. The multi-copy mechanism involves storing at least two identical copies of data, and these at least two copies of data are stored at two different physical addresses. If one copy of the data is lost, it can be restored using the other copies of the data. Therefore, for data, its global address is also a collection of multiple fine-grained global addresses, each of which corresponds to the physical address of a data copy.

[0095] The management node can allocate physical space for each global address after creating a storage pool. It can also allocate physical space for the global address corresponding to a write request when receiving a write request. The correspondence between each global address and its physical address is recorded in an index table, which the management node synchronizes with each storage node. Each storage node stores the index table so that it can query the physical address corresponding to the global address when subsequently reading or writing data.

[0096] When a new storage node joins the storage system, the management node collects node update information, incorporates the new storage node into the storage pool, addresses the storage space contained in the storage node, thereby generating a new global address, and then refreshes the correspondence between the partition and the global address (because the total number of partitions remains unchanged regardless of expansion or contraction). Expansion is also applicable to situations where some storage nodes have added memory or hard disks. The management node regularly collects status information of the memory contained in each storage node. If a new memory is added, it is incorporated into the storage pool and the new storage space is addressed, thereby generating a new global address, and then refreshing the correspondence between the partition and the global address. Similarly, the storage pool provided in this embodiment also supports contraction. Contraction refers to reducing the hard disks in the storage pool. By moving the data of the disk to be contracted to other disks, the external physical overall capacity will be reduced, but the number of partitions will not change. It is sufficient to update the correspondence between the global address and the partition.

[0097] The health of hard drives directly affects the security of the data stored on them. To improve data security within storage systems, storage systems can identify and isolate faulty drives based on drive-level data, such as self-monitoring analysis and reporting technology (SMART) data, input / output (I / O) data, or grown defect list (GList) data.

[0098] However, when a storage system determines a hard drive failure based on full-disk dimensional data, it often only detects damage in a local area, which typically renders only a portion of the drive's physical space unusable. The storage system isolates the entire drive, wasting the available physical space. As hard drive capacities continue to increase, their prices are also rising, increasing the cost of replacing drives. Furthermore, restoring data from the entire drive takes longer for the storage node, consuming more storage and computing resources.

[0099] Figure 3 schematically illustrates a possible structure of an HDD. As shown in Figure 3, the HDD includes a storage controller, a head drive mechanism, a spindle drive mechanism, a spindle, and multiple disks (or discs). This application does not limit the number of disks in the HDD. Figure 3 schematically illustrates a disk (referred to as disk i) in the HDD. Each disk may include two disk surfaces (referred to as disk surfaces), and the two disk surfaces of disk i are respectively denoted as disk surface i1 and disk surface i2. The HDD is also configured with a magnetic head for each disk surface. This application refers to the magnetic head corresponding to disk surface i1 as magnetic head i1, and the magnetic head corresponding to disk surface i2 as magnetic head i2. Figure 3 schematically illustrates disk surface i1 and magnetic head i1.

[0100] The spindle is driven by a spindle drive mechanism to rotate at high speed. The platters rotate with the spindle, and the head is moved by the head drive mechanism. The storage controller controls the head drive mechanism to move the head to a specific location on the disk surface, and then stores data in or reads data from the physical space corresponding to that location.

[0101] Different heads typically access different slice locations, meaning they typically correspond to different physical spaces. If a head fails in an HDD, the physical space corresponding to that head becomes unavailable, but the physical space corresponding to other heads continues to provide usable physical space for the storage system. If a storage system isolates all of the HDD's physical space, this wastes the HDD's available physical space.

[0102] The present application provides a storage system, which can be any of the storage systems described above, and at least one storage node in the storage system has the function of precise identification and precise isolation. A storage node with this function can identify a damaged / faulty local area in a hard disk, where the failure of this local area will cause a portion of the physical space in the hard disk to be unavailable, isolate this portion of the physical space, and continue to use the other available physical space in the hard disk. In this way, when a local area in a storage component is damaged, the storage node does not need to isolate the entire hard disk, which not only saves other available physical space in the hard disk, but also reduces the waste of computing resources and other storage resources caused by restoring the entire disk data.

[0103] A storage node may include a control unit and a communication unit. The communication unit is used to connect to one or more hard disks. The control unit is responsible for processing data access requests from outside the storage node or requests generated within the storage node, sending data to the hard disks for persistent storage or reading data from the hard disks.

[0104] This application does not limit the type of storage node. For example, the storage node may be a storage device, and the control unit may be a controller in the storage device, and the controller in the storage device is used to connect one or more hard disks. For example, the storage device may be a hard disk frame. For example, the storage node may be a server, and the control unit may be a processor in the server. For example, the storage node may be a centralized storage system (or storage array), and the control unit may be an engine of the centralized storage system or a controller in the engine. For example, the storage node may be a storage node in a distributed storage system, and the control unit may be a processor in the storage node. This application does not limit the implementation of the control unit. For example, the control unit may include a processor and memory, or the control unit may include a DPU, or the control unit may be a network card, etc. The communication unit may be an interface or a network card, etc.

[0105] A hard disk may include a storage controller and a storage component. The storage component provides the storage controller with physical space for data storage. The storage controller communicates with the control unit, receiving data access requests from the control unit and sending responses to the control unit. The storage controller also controls the storage component's access to the designated physical space.

[0106] The storage component may include multiple local areas of the same type, and the local areas in the storage component are used to provide a portion of the physical space in the total physical space provided by the storage component. Taking the hard disk as an HDD as an example, the storage component may include multiple magnetic heads in the HDD. Each magnetic head can work independently. The local area may be one of the multiple magnetic heads, and the physical space corresponding to the local area may be the physical space corresponding to the magnetic head. Alternatively, the local area may be a group of magnetic heads among multiple magnetic heads, and the physical space corresponding to a group of magnetic heads may be the union of the physical spaces corresponding to each magnetic head in the group of magnetic heads. The present application does not limit the position of each magnetic head in a group of magnetic heads. For example, each magnetic head in a group of magnetic heads may correspond to the same disk or to the same disk surface. Alternatively, continuing to take the hard disk as an HDD as an example, the storage component may include multiple disks in the HDD. The local area may be one of the multiple disks, or a disk surface in a disk, or an area on a disk surface.

[0107] A hard disk can also include other storage components of different types. These multiple types of storage components can collectively provide physical space for data storage. Continuing with the HDD as an example, the multiple platters and multiple heads in the hard disk can be different types of storage components. These multiple platters and multiple heads work together to provide physical space for data storage for the storage controller, enabling it to read data from or write data to the storage controller.

[0108] The following examples illustrate possible implementations of storage nodes to achieve the above functions.

[0109] In a first possible implementation, at least one hard disk of the storage node has an accurate identification (or local identification) function. A hard disk with an accurate identification function can identify a damaged local area, where damage to the local area means that the corresponding physical space (called the target physical space) is unavailable. The hard disk can also transmit a notification message to the control unit to instruct the isolation of the physical space. In the storage system provided in the present application, the control unit has an accurate isolation (or local isolation) function. After the control unit obtains the notification message, it can isolate the target physical space and continue to use other available physical spaces in the hard disk except the target physical space.

[0110] Based on the first possible implementation, the following example describes a method flow applied to a storage node. By executing this method flow, the storage node can achieve precise identification and precise isolation functions. As shown in Figure 4, this method flow may include S401 and S402.

[0111] S401: The storage controller identifies the health status of a local area in the hard disk;

[0112] The storage controller can identify the health status of a local area in the hard disk. The health status of the local area is used to indicate whether the local area is faulty or not. The local area can be any of the local areas described above.

[0113] This application does not limit the manner in which the storage controller identifies the health status of a local area in the hard disk. Optionally, the storage controller may obtain operating information of the local area and identify the health status of the local area based on the operating information.

[0114] The operational information may include values ​​of one or more physical properties of the local area. The one or more physical properties may include at least one of the following: temperature, size, motion parameters, and electrical parameters. The electrical parameters may include at least one of the following: resistance, power, and channel parameters. Optionally, the physical properties of the local area may also include comprehensive physical properties, where the comprehensive physical property value is related to the values ​​of multiple physical properties. For example, the comprehensive physical property value may be related to the values ​​of the two aforementioned physical properties.

[0115] Taking the hard disk as the HDD shown in FIG3 and the local area as the magnetic head i1 shown in FIG3 as an example, when the storage controller controls the magnetic head i1 to read data, the magnetic head i1 reads an analog signal from the disk surface i1. After the analog signal is equalized (e.g., amplified, filtered, and / or shaped), analog-to-digital (A / D) conversion is performed to obtain the read data. Deterioration of the quality parameters of the magnetic head signal of magnetic head i1 will reduce the reliability of the data read by magnetic head i1, rendering magnetic head i1 unusable. Therefore, the physical properties of magnetic head i1 may include the quality parameters of the magnetic head signal of magnetic head i1. The quality parameters of the magnetic head signal may include seek positioning error, / or the signal-to-noise ratio of the magnetic head signal, / or the amplitude of the magnetic head signal, and / or the bit error rate (BER) of the magnetic head signal. The data obtained after the A / D conversion of the analog signal read by magnetic head i1 may contain some bit errors, and only after error checking and correction (ECC) can correct data be obtained. The bit error rate (BER) is calculated by dividing the number of bit errors by the total number of bits in the bit stream. BER reflects the signal-to-noise ratio of the read signal from head i1 and reflects the performance and health of head i1. The seek positioning error of head i1 can be a repeatable error (repeatable runout) or a non-repeatable error (unrepeatable runout).

[0116] The electrical parameters of the magnetic head i1 may include the resistance of the magnetic head i1. The magnetic head itself is a magnetoresistor. If the reference resistance of the magnetic head i1 (the resistance when there is no external magnetic field) changes, the BER of the magnetic head i1 will also deteriorate, thereby rendering the magnetic head i1 unusable.

[0117] The motion parameter of the magnetic head i1 can be the flying height of the magnetic head i1 (referred to as the flying height). If the flying height varies, the amplitude and signal-to-noise ratio of the read signal of the magnetic head i1 will be degraded, thereby rendering the magnetic head i1 unusable.

[0118] Taking the local area as the magnetic arm corresponding to the magnetic head i1 as an example, the motion parameters of the magnetic arm may be the swing parameters or positioning parameters of the magnetic arm, and the physical space corresponding to the magnetic arm may be the physical space corresponding to the corresponding magnetic head.

[0119] The detection results of physical properties generally do not rely on a large number of I / O accesses to the corresponding physical space. Identifying the health status of a local area based on the detection results of physical properties is conducive to isolating the physical space before a large number of computing nodes access the corresponding physical space, improving data reliability, and reducing the delay caused by failure to access the physical space.

[0120] This application does not limit the way in which the storage controller obtains operating information. As shown in Figure 3, the HDD may include a detection module, which can be used to detect the value of the physical properties of a local area (such as the magnetic head i1), and the storage controller can obtain the detection results from the detection module. This application does not limit the number, position, and type of detection modules. For example, the detection module in the HDD may include a thermistor provided on the magnetic head, and each magnetic head may be provided with an independent thermistor, and the temperature of the magnetic head is detected by the thermistor on the magnetic head. For example, the temperature of the magnetic head i1 is detected by the thermistor on the magnetic head i1.

[0121] Optionally, the operation information may further include whole-disk dimension data of the hard disk, and the storage controller may identify the health status of the local area by combining the whole-disk dimension data and one or more physical property values ​​of the local area.

[0122] This application does not limit the manner in which the storage controller determines the health status of the local area based on the operating information.

[0123] Taking the magnetic head i1 as an example, the following describes possible ways in which the storage controller determines a fault in the magnetic head i1 based on values ​​of one or more physical properties of the magnetic head i1.

[0124] For example, when a single physical attribute of the magnetic head i1 (such as fly height, BitErr error rate, or magnetic head temperature) exceeds a threshold, the storage controller may determine that the magnetic head i1 is faulty.

[0125] Alternatively, for example, when the value of each of the multiple physical properties of the magnetic head i1 exceeds a threshold, the storage controller may determine that the magnetic head i1 is faulty.

[0126] The storage controller can automatically trigger the execution of S401, or the control unit can extend the ModePage protocol setting through the hard disk firmware (FW) when detecting that a hard disk is connected. When the hard disk supports the local identification algorithm (or function), the storage controller can start the local identification function and trigger the execution of S401.

[0127] The storage controller can trigger the execution of step S401 for each local area in the hard disk, or the storage controller can identify the local area of ​​suspected fault based on the whole disk dimensional data, and then trigger the execution of step S401 for the local area of ​​suspected fault. For the head / arm of the HDD, the storage controller can determine that the head of the GList data bad block is the local area of ​​suspected fault, and / or determine that the head corresponding to the I / O error is the local area of ​​suspected fault, and / or determine that the head corresponding to the SMART data / log page (LogPage) / disk parameter abnormality and other problems is the local area of ​​suspected fault. The log page is a log containing the statistical values ​​of the hard disk, which can be used to record operation information. For example, the log page can record statistical values ​​such as the write amount, uncorrected error count (UNC), physical properties of each local area, and record the value of the hard disk operation cycle status. For the magnetic recording area of ​​the HDD (such as the disk surface area), the storage controller can perform verification (verify) cycle scans, record damaged areas, and / or perform scenario-based scans, such as I / O bad sectors triggering area scans, intermittent vibrations triggering area scans, or internal disk scan results detection, etc., to determine the suspected faulty magnetic recording area.

[0128] S402: When the health status of the local area indicates a local area failure, the storage controller determines that the target physical space is unavailable;

[0129] After the storage controller identifies the health status of a local area, if that local area fails, it can determine that the corresponding physical space is unavailable. This helps prevent the control unit from continuing to access that portion of physical space, thereby improving data reliability and reducing latency. It also helps the hard drive more accurately determine available physical space, allowing the hard drive to continue providing reliable storage services to the storage node and reducing waste.

[0130] For the convenience of description, the present application refers to the physical space corresponding to the local area as the target physical space. As described above, the target physical space is a portion of the entire physical space provided by the hard disk.

[0131] This application does not limit the specific type of local area failure, as long as the local area failure causes the corresponding physical space to be unavailable. Taking HDD as an example, the failure type can be cross-track scratches, regional scratches, single-track complete scratches, or single-head scratches, etc. as shown in Figure 3. This application does not limit the criteria for determining whether the physical space is unavailable. For example, the situation where the physical space is unavailable may include the storage controller being unable to access the physical space, or although the storage controller can access the physical space, the physical space has a high risk of failure.

[0132] Taking a hard disk drive (HDD) as an example, the damaged local area may be one head or a group of heads among the multiple heads in the HDD, and the target physical space may be the entire physical space corresponding to the head or group of heads. When the HDD is configured with one head for a single disk surface, the single head corresponds to the entire physical space on the single disk surface. Alternatively, the HDD may be configured with at least two heads for a single disk surface, each head corresponding to a portion of the physical space on the disk surface. In this case, the physical space corresponding to the single head may be a portion of the physical space on the single disk surface.

[0133] Continuing with the example of a hard disk drive (HDD), the damaged local area can be an area on a disk surface of the HDD. This application does not limit the shape or size of this area. For example, the damaged area can include the cross-track scratch area shown in FIG3 (i.e., a partial area within multiple tracks), and / or the area including the complete scratch of a single track shown in FIG3 (i.e., a complete single track area), and / or the area including the regional scratch shown in FIG3.

[0134] The storage controller accurately identifies the physical space corresponding to the damaged local area, which helps prevent the control unit from continuing to access this part of the physical space, thereby improving data reliability. At the same time, it helps the hard disk more accurately determine the available physical space, so that the hard disk can continue to provide reliable storage services for the storage node, extend the service life of the hard disk, and reduce the frequency of the storage system isolating the entire hard disk, thereby helping to reduce the cost of the storage system and save the storage and computing resources of the storage system.

[0135] The storage controller may establish a correspondence between the physical address of the physical space and the logical address before receiving the request, or in other words, the correspondence between the physical address of the physical space in the hard disk and the logical address is fixed. Alternatively, the storage controller may record the physical address of the available physical space in the hard disk or record the physical address of the unavailable physical space, and the storage controller may allocate available physical space to the logical address carried in the request after receiving the request (i.e., establish a correspondence between the logical address and the physical address). After the storage controller determines that the target physical space is unavailable, the storage controller may no longer allocate the target physical space, and may continue to allocate available physical space other than the target physical space, thereby preventing the computing node from accessing the physical space.

[0136] Optionally, as shown in FIG4 , after S402 , the method may further include S403 .

[0137] S403: The storage controller transmits notification information to the control unit;

[0138] After determining that the target physical space is unavailable, the storage controller may transmit a notification message to the control unit, where the notification message is used to instruct the target physical space to be isolated.

[0139] This application does not limit the way in which the storage controller transmits notification information to the control unit. Optionally, the storage controller can send notification information to the control unit. Alternatively, the storage controller can store the notification information in the hard disk. For example, the storage controller can store the notification information in a target storage location in the hard disk, and the control unit can read the notification information from the target storage location. Alternatively, the storage controller can store the notification information according to the target file name, and the control unit can obtain the notification information by searching for the target file name (for example, "part-err-log"). The control unit can periodically search for notification information in the hard disk, or the storage controller can carry an error code through an error event or in an I / O response to notify the control unit of a local area failure in the hard disk. Accordingly, the control unit can read the notification information recorded in the disk through an extended protocol.

[0140] Optionally, as shown in FIG4 , after S403 , the method may further include S404 .

[0141] S404. The control unit isolates the target physical space according to the notification information.

[0142] After receiving the notification information, the control unit can isolate the target physical space based on the notification information. This helps the control unit not to allocate the target physical space in the future, thereby avoiding further access to this part of the physical space, improving data reliability and reducing latency.

[0143] The following examples illustrate the content of the notification information and possible ways for the control unit to isolate the target physical space based on the notification information.

[0144] Optionally, the notification information may include an address pointing to the target physical space, where the address may be used to indicate all or part of the physical space in the target physical space. The notification information may indicate that the address is unavailable.

[0145] Storage controllers typically use physical addresses in physical space to write data to or read data from physical space. After determining the target physical space, the storage controller can determine the physical address of the target physical space. Taking HDDs as an example, the smallest area on the disk surface that stores data is called a sector, and the physical address of the physical space is the cylinder-header-sector (CHS).

[0146] The physical address of a hard drive's physical space is generally an internal physical concept of the hard drive's storage controller. The storage controller typically virtualizes the physical space into logical blocks for use by the control unit. Therefore, the control unit can generally perceive the logical address of the physical space, such as the logical block address (LBA).

[0147] The address in the notification information can be a physical address (e.g., CHS) or a logical address (e.g., LBA). Alternatively, the notification information can associate the physical address and logical address of the storage target physical space. For example, the addresses in the notification information can include LBA 0 to LBA 100 and LBA 200 to LBA 300. Taking an HDD as an example, LBA N can represent logical sector N.

[0148] This application refers to the address used to indicate all physical spaces in the target physical space as the target address. Optionally, the notification information may include the target address. After the control unit obtains the fault information, it can isolate the target address, or in other words, isolate the physical space indicated by the target address (i.e., the target physical space). The following describes possible implementation methods for the control unit to isolate the target address.

[0149] Optionally, for the address in the target address where data has been written (called the first address), the control unit can perform redundant recovery of the data therein. The control unit can store the recovered data in other available physical space and refresh the correspondence between the storage address of the data and the logical address. This is conducive to improving the reliability of the data written to the storage node. The present application does not limit the specific way in which the control unit recovers the data. For example, the data stored at the logical address is a data fragment or a check fragment or a data copy stored according to a redundant mechanism. The control unit can recover the data stored at the logical address according to the corresponding redundant mechanism.

[0150] Optionally, the control unit may not assign the target address to a storage address in the storage pool, but may instead assign an available address on the hard disk other than the target address to the storage address in the storage pool. For example, the control unit may update the recorded available addresses of the hard disk, where the available addresses are the addresses of the allocable physical space on the hard disk. The updated available addresses do not include the target address. This reduces the latency of data write requests while improving data reliability.

[0151] Optionally, the control unit may determine the capacity (or size) of the physical space corresponding to the target address, thereby determining the lost capacity of the hard disk and updating the available capacity of the hard disk.

[0152] Optionally, the control unit may update the storage pool based on the lost available capacity of the hard disk. For example, the control unit may shrink the storage pool based on the lost available capacity, thereby reducing the external physical overall capacity of the storage pool. Or, for example, the control unit may use spare physical space to replace the lost physical space of the storage pool, and the external physical overall capacity of the storage pool remains unchanged. The spare physical space may be, for example, hot spare space or redundant (overprovision, OP) space. Hot spare space refers to the space reserved by the storage pool, and a portion of it is reserved for problem disks in the storage pool as hot spare reserved space for data recovery.

[0153] Optionally, the control unit can determine whether the lost capacity of the hard drive exceeds the hot spare capacity of the storage pool. If the lost capacity exceeds the hot spare capacity of the storage pool, the control unit can place the entire hard drive in pre-failure isolation and replace the entire drive. The hot spare capacity can refer to a capacity threshold determined based on the total capacity of the hot spare space.

[0154] The present application does not limit the control unit to independently complete the above isolation operation. Optionally, the control unit can work together with the control units of other storage nodes to jointly perform the above isolation operation.

[0155] In the above example, taking the target address as a logical address, the storage controller can optionally generate and transmit fault information to the control unit after determining the physical address of the target physical space. The fault information includes the physical address of the target physical space. In other words, the target address can be a physical address. After the control unit obtains the fault information, it can determine the logical address corresponding to the physical address based on the correspondence between the physical address and the logical address, and then isolate the LBA.

[0156] In this application, the physical space in which data is written in the target physical space is referred to as the first physical space, and the address used to indicate the first physical space is referred to as the first address. Optionally, the notification information may include the first address. After receiving the notification information, the control unit may perform redundant recovery on the data in the first address. The details of the control unit performing redundant recovery on the data in the first address can be referred to in the relevant content above and will not be repeated here.

[0157] Since data has already been written to the target address, the control unit can recover the data therein and store the recovered data in other available physical space, refreshing the correspondence between the data's storage address and logical address. Optionally, the control unit may not allocate the first address to a storage address in the storage pool, but instead allocate other available addresses in the hard disk other than the first address to a storage address in the storage pool.

[0158] Optionally, the notification information includes capacity information, which is used to determine the capacity of the target physical space. The notification information indicates that the hard disk has lost capacity. The control unit can determine the lost available capacity of the storage pool based on the status information and then update the storage pool based on the lost available capacity. For possible methods for the control unit to update the storage pool based on the lost available capacity of the hard disk, please refer to the relevant content above and will not be repeated here.

[0159] The present application does not limit the control unit to independently complete the above isolation operation. Optionally, the control unit can work together with the control units of other storage nodes (such as management nodes) to jointly perform the above isolation operation.

[0160] Optionally, the notification information may include at least one of a target address, a first address, and capacity information.

[0161] Optionally, as shown in FIG4 , after S402 , the method may further include S405 - S406 .

[0162] S405: The control unit sends a data access request to the storage controller;

[0163] The control unit may send a data access request to the storage controller, wherein a read data request is used to request to read data from an address carried in the request, and a write data request is used to request to write data to an address carried in the request.

[0164] S406. When the address carried in the data access request points to the target physical space, the storage controller transmits response information to the control unit, where the response information is used to indicate that the address carried in the data access request is unavailable.

[0165] After receiving a data access request, the storage controller determines whether the address carried in the request points to the target physical space. If so, the storage controller transmits a response message to the control unit, indicating that the address carried in the data access request is unavailable. This helps prevent the hard drive from writing data to damaged areas based on the request, thereby improving data reliability.

[0166] The address carried in the request points to the target physical space, which means that the physical space indicated by the address belongs to the target physical space. This application does not limit the address to being used to indicate all physical spaces in the target physical space.

[0167] Optionally, the storage controller may not count the I / O error into the whole disk dimension data to avoid reaching the threshold and reporting the whole disk pre-failure event to the outside, and repeatedly detect the damaged area in the disk and report the whole disk pre-failure event to the outside to avoid the whole disk isolation due to access to the locally isolated target physical space.

[0168] In a second possible implementation, the control unit of the storage node has the ability to accurately identify at least one hard drive. The control unit can obtain underlying information about a local area on the hard drive, identify the damaged local area based on the acquired underlying information, and determine the physical space corresponding to the local area (i.e., the target physical space). The control unit also has a precise isolation function. After determining the target physical space, the control unit can isolate the target physical space and continue to use the remaining available physical space on the hard drive.

[0169] Based on the second possible implementation, the following example describes another method flow applied to a storage node. By executing this method flow, the storage node can achieve precise identification and precise isolation functions. As shown in Figure 5, this method flow may include S501 to S504.

[0170] S501: The storage controller obtains operation information of a local area;

[0171] The storage controller can obtain operating information of the local area. The operating information and the method for obtaining the operating information can be understood with reference to the relevant content in S401. For example, the operating information can include the values ​​of one or more physical properties of the local area. The one or more physical properties can include at least one of the following physical properties: temperature, size, motion parameters, and electrical parameters. The physical properties can be understood with reference to the relevant content in S401 and will not be further described here. The local area can be any of the local areas described above.

[0172] S502: The storage controller transmits operation information to the control unit;

[0173] After obtaining the operating information of the local area, the storage controller can transmit this information to the control unit. In return, the control unit can obtain the operating information of the local area. This helps the control unit accurately identify the damaged local area based on the operating information and determine the unusable physical space on the hard drive.

[0174] S503, the control unit identifies the health status of the local area based on the operation information;

[0175] After obtaining the operating information, the control unit can identify the health status of the local area of ​​the hard disk based on the operating information. This application does not limit the manner in which the storage controller determines the health status of the local area based on the operating information. The manner in which the control unit determines the health status of the local area based on the operating information can be referred to in S401.

[0176] The operational information of a local area includes the values ​​of its physical properties. Because the results of physical property detection generally do not rely on a large number of I / O accesses to the corresponding physical space, identifying the health status of a local area based on these physical property detection results helps isolate the physical space before a large number of compute nodes access it, improving data reliability and reducing latency caused by failed accesses to the physical space.

[0177] S504: When the health status of the local area indicates a local area failure, the control unit determines that the target physical space is unavailable;

[0178] After the control unit identifies the health status of a local area, if that local area fails, it can determine that the corresponding physical space is unavailable. This helps prevent the control unit from continuing to access that portion of physical space, thereby improving data reliability and reducing latency. It also helps the hard drive more accurately determine available physical space, allowing the hard drive to continue providing reliable storage services to the storage node and reducing waste.

[0179] For the convenience of description, the present application refers to the physical space corresponding to the local area as the target physical space. As described above, the target physical space is a portion of the entire physical space provided by the hard disk.

[0180] This application does not limit the specific type of local area failure, as long as the local area failure causes the corresponding physical space to be unavailable. The type of local area failure and the corresponding target physical space can be understood by referring to the relevant content in S402 and will not be repeated here.

[0181] The control unit accurately identifies the physical space corresponding to the damaged local area, which helps to prevent the control unit from continuing to access this part of the physical space, thereby improving data reliability and reducing latency; at the same time, it helps the control unit more accurately determine the available physical space in the hard disk, thereby helping the control unit continue to use the physical space provided by the hard disk.

[0182] As shown in FIG5 , optionally, after S504 , the method may further include S505 .

[0183] S505: Control the unit to isolate the target physical space;

[0184] After the control unit determines that the target physical space is unavailable, it can isolate the target physical space. This helps the control unit not to allocate the target physical space in the future, thereby avoiding further access to this part of the physical space, improving data reliability and reducing latency.

[0185] The following examples illustrate possible ways in which a control unit can isolate a target physical space.

[0186] Optionally, after the control unit determines the target physical space, it can determine the address of the target physical space (referred to as the target address), and then isolate the target address. For example, the control unit can convert the physical address of the target physical address into a logical address, and then determine that the logical address is unavailable. The control unit may not assign the target address to the storage address in the storage pool, and assign other available addresses in the hard disk other than the target address to the storage address in the storage pool. For example, the control unit can update the recorded available address of the hard disk, where the available address of the hard disk is the address of the allocable physical space in the hard disk, and the updated available address does not include the target address. In this way, on the one hand, the delay of the data write request is reduced, and on the other hand, the reliability of the data is improved.

[0187] Optionally, after the control unit determines the target physical space, it can determine the address (referred to as the first address) of the physical space (referred to as the first physical space) in which data has been written in the target physical space, and the control unit can perform redundant recovery on the data in the first address. The control unit can store the recovered data in other available physical spaces, and refresh the correspondence between the storage address of the data and the logical address. This is conducive to improving the reliability of the data written to the storage node. The present application does not limit the specific manner in which the control unit recovers data. For example, the data stored at the logical address is a data fragment or a check fragment or a data copy stored according to a redundant mechanism. The control unit can recover the data stored at the logical address according to the corresponding redundant mechanism.

[0188] Optionally, the control unit can determine the capacity (or size) of the target physical space, thereby determining the lost capacity of the hard disk and updating the available capacity of the hard disk. The control unit can update the storage pool based on the lost available capacity. For example, the control unit can update the capacity of the storage space of the storage pool. For example, the control unit can use spare physical space to make up for the lost physical space of the storage pool. For example, the control unit can determine whether the lost capacity of the hard disk exceeds the hot standby capacity of the storage pool. When the lost capacity exceeds the hot standby capacity of the storage pool, the control unit can set the entire disk to pre-failure isolation and replace the entire disk.

[0189] The present application does not limit the control unit to independently complete the above isolation operation. Optionally, the control unit can work together with the control units of other storage nodes to jointly perform the above isolation operation.

[0190] The hard disk is taken as an example above. Optionally, the hard disk may be other types of storage media other than the HDD, such as a magnetic tape or an SSD.

[0191] The local area of ​​the tape may be a portion of the magnetic head, a portion of the tape medium, or a portion of a device related to the operation of the magnetic head and the tape. The physical properties of the magnetic head may include at least one of the following information: a read / write error rate, a head temperature, and a read / write test error ratio. The target physical space may be the physical space in the tape medium segment corresponding to the damaged magnetic head.

[0192] The local area of ​​the SSD can be part of the SSD controller or part of the SSD logic gate (NAND) media. For SSD media problems, this can be anomalies in the controller accessing part of the media, or problems with some flash memory chips (dies) containing stored data in the NAND media. The target physical space can be a portion of the physical space in the NAND flash memory, for example, the target physical space can be physical space in one or more flash memory chips (dies) or physical space in one or more blocks in the flash memory chip.

[0193] The above describes in detail the storage system and the method involved in the storage system provided by the present application. In order to facilitate better implementation of the above solution of the present application, correspondingly, related equipment for cooperating in implementing the above solution is also provided below.

[0194] Figure 6 schematically illustrates another possible storage system. As shown in Figure 6, the storage system includes a service host, an array (or array controller), and hard disks. The service host is communicatively connected to the array controller, which is in turn connected to the hard disks. In some examples, the array can be replaced with a server. The service host can be understood as the application server or compute node described above.

[0195] As shown in FIG6 , the array may include a driver group (DRV) running on an operating system (OS), a disk object management module, a disk space management module, and an array input and output (IO) module.

[0196] The hard disk can be connected to a DRV, which is connected to a disk object management module. The hard disk can provide an algorithm to detect damaged local areas (e.g., a head or platter area) in a storage component, for example, by executing S401 and S402, and notify the disk object management module via the DRV, for example, by executing S403 to transmit notification information to the disk object management module.

[0197] The disk object management module can issue commands to the hard drive to obtain information about damaged local areas, such as by executing S403 to isolate and prevent access. The disk object management module is connected to the disk space management module and can notify the disk space management module. Alternatively, the disk object management module can independently detect damaged local areas using an algorithm, such as by executing S502-S503.

[0198] The disk space management module is used to perform redundancy repair and hot spare space replacement for the logical addresses of the damaged local area, and to update the lost capacity externally, for example, by executing S404 or S505. The disk space management module is connected to the array I / O module and can update the logical addresses of available physical space to the array I / O. The array I / O module is connected to the service host and is used to receive data access requests from the service host, allocate logical addresses of available physical space to the data access requests, and not allocate logical addresses of unavailable physical space. This prevents the service host from accessing the physical space corresponding to the damaged local area on the hard disk.

[0199] The functions of the array can be understood by referring to the functions of the control unit of the storage node described above. This application does not limit the division method of each module in the control unit. Figure 6 is only an example. Other division methods of each module in the control unit will be described later.

[0200] 7 , which schematically illustrates a hard disk management device provided by the present application, the management device may be the hard disk or a storage controller in the hard disk, or may be provided in a storage controller. As shown in FIG7 , the management device 7 includes an identification module 701 and a determination module 702 .

[0201] The identification module 701 is used to identify the health status of a local area in the hard disk. For specific implementation, please refer to the description of step S401 in FIG4 , which will not be repeated here.

[0202] The determination module 702 is used to determine that a portion of the physical space is unavailable when the health status of the local area indicates a local area failure. Please refer to the description of step S402 for specific implementation, which will not be repeated here.

[0203] Optionally, the management device 7 may further include a communication module 703. The communication module 703 is used to transmit notification information to the control unit. For specific implementation methods, please refer to the relevant description of step S403, which will not be repeated here.

[0204] Optionally, communication module 703 may also be configured to receive a data access request from the control unit; when the address carried in the data access request points to a portion of the physical space, the communication module 703 may transmit a response message to the control unit, indicating that the address carried in the data access request is unavailable. For specific implementation methods, please refer to the description of steps S405 and S406, which will not be repeated here.

[0205] 8 , which schematically illustrates a hard disk management device provided by the present application, the management device may be the control unit described above or may be disposed in the control unit. As shown in FIG8 , the management device 8 includes an acquisition module 801 and an isolation module 802 .

[0206] The acquisition module 801 is used to acquire notification information from the hard disk. For specific implementation, please refer to the description of step S403 in FIG4 , which will not be repeated here.

[0207] The isolation module 802 is used to isolate a portion of the physical space. For specific implementation methods, please refer to the relevant description of step S404, which will not be repeated here.

[0208] 9 , which schematically illustrates a hard disk management device provided by the present application, the management device may be the control unit described above or may be provided in the control unit. As shown in FIG9 , the management device 9 includes an acquisition module 901 and a determination module 902 .

[0209] The acquisition module 901 is used to acquire the operation information of the local area. For the specific implementation method, please refer to the relevant description of step S502 in Figure 5, which will not be repeated here.

[0210] Determination module 902 identifies the health status of the local area based on the operation information; when the health status of the local area indicates a local area failure, a portion of the physical space is determined to be unavailable. The specific implementation method is described in the relevant description of steps S503 to S504 and will not be repeated here.

[0211] Optionally, the management device 9 may further include an isolation module 903. The isolation module 903 is used to isolate a portion of the physical space. For specific implementation methods, please refer to the relevant description of step S505. For example, optionally, the isolation module 903 is used to determine the address of a portion of the physical space; and update the available address of the hard disk. Optionally, the isolation module 903 is used to determine the first address of the physical space where data is written in a portion of the physical space; and perform redundant repair on the data in the first address. Optionally, the isolation module 903 is used to determine the capacity of a portion of the physical space; and when the capacity exceeds a threshold, isolate all the physical space in the hard disk.

[0212] Referring to Figure 10 , which schematically illustrates a hard disk management device provided by the present application, the management device may be the hard disk or a storage controller in the hard disk, or may be provided in a storage controller. As shown in Figure 10 , the management device 10 includes an acquisition module 1001 and a communication module 1002 .

[0213] The acquisition module 1001 is used to acquire the operation information of the local area. For the specific implementation method, please refer to the relevant description of step S501 in Figure 5, which will not be repeated here.

[0214] The communication module 1002 is used to transmit the operation information to the control unit. For the specific implementation method, please refer to the relevant description of step S502, which will not be repeated here.

[0215] The present application also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program. When the computer program is executed by a processor, part or all of the steps of any one of the above method embodiments can be implemented.

[0216] An embodiment of the present invention further provides a computer program, which includes instructions. When the computer program is executed by a computer, the computer can execute part or all of the steps of any method.

[0217] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0218] Those skilled in the art will appreciate that the aforementioned computer-readable storage media include various non-transitory machine-readable media that can store program codes, such as USB flash drives, mobile hard disks, magnetic disks, optical disks, RAM, SSDs, or non-volatile memories.

[0219] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited to the order of the actions described, because according to this application, certain steps may be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by this application. The "A and / or B" involved in the embodiments of this application can be understood to include both "A and B" and "A or B".

[0220] The terms "first," "second," "third," and "fourth," etc., in the specification and claims of this application and the accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or precedence. It should be understood that the terms used in this manner are interchangeable where appropriate and are merely used to describe the manner in which objects with the same attributes are described in the embodiments of this application.

[0221] In the several embodiments provided in this application, it should be understood that the disclosed devices can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the above-mentioned units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of devices or units can be electrical or other forms.

[0222] The units described above as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0223] In addition, the functional units in the embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0224] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present application, rather than to limit it.

Claims

1. A hard disk management method, characterized in that: The hard disk includes a storage controller and a storage component, the storage controller is used to receive a data access request from a control unit of a storage node, and access a physical space provided by the storage component according to the data access request. The method is applied to the hard disk, and the method includes: Identifying a health status of a local area in the storage component, the local area being used to provide a portion of the total physical space provided by the storage component; When the health status of the local area indicates that the local area is faulty, it is determined that the portion of the physical space is unavailable.

2. The method according to claim 1, characterized in that Identifying the health status of the local area includes: Acquiring operation information of the local area, the operation information including values ​​of one or more physical properties of the local area; A health status of the local area is identified based on the operating information.

3. The method according to claim 2, characterized in that The one or more physical properties include at least one of the following physical properties: temperature, size, motion parameter, and electrical parameter.

4. The method according to claim 3, characterized in that The hard disk is a magnetic medium hard disk HDD, the storage component includes multiple heads, the local area is a part of the multiple heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

5. The method according to any one of claims 1 to 4, characterized in that The method further comprises: Notification information is transmitted to the control unit, where the notification information is used to instruct to isolate the portion of the physical space.

6. The method according to claim 5, characterized in that The notification information includes the address of the portion of physical space, and the notification information is used to indicate that the address of the portion of physical space is unavailable.

7. The method according to claim 5 or 6, characterized in that: The notification information includes a first address of a first physical space in which data is written in the portion of physical space, and the notification information is used to instruct to perform redundancy repair on the data in the first address.

8. The method according to any one of claims 5 to 7, characterized in that: The notification information includes the capacity of the portion of physical space, and the notification information is used to indicate that the hard disk has lost the capacity.

9. The method according to any one of claims 1 to 8, characterized in that After determining that the portion of the physical space is unavailable, the method further includes: receiving a data access request from the control unit; When the address carried by the data access request points to the portion of physical space, response information is transmitted to the control unit, where the response information is used to indicate that the address carried by the data access request is unavailable.

10. A hard disk management method, characterized in that: The hard disk includes a storage controller and a storage component. The storage controller is used to receive a data access request from a control unit of a storage node and access a physical space provided by the storage component according to the data access request. The method is applied to the control unit, and the method includes: Acquire notification information from the hard disk, the notification information being transmitted by the hard disk to the control unit when a local area of ​​the storage component fails, the local area being used to provide a portion of the physical space of the entire physical space provided by the storage component, and the notification information being used to instruct to isolate the portion of the physical space; Isolate the portion of the physical space.

11. The method according to claim 10, characterized in that The notification information includes an address of the portion of the physical space, and the isolating the portion of the physical space includes: The available address of the hard disk is updated, where the available address is the address of the physical space that can be allocated in the hard disk, and the updated available address does not include the address of the part of the physical space.

12. The method according to claim 10 or 11, characterized in that: The notification information includes a first address of a physical space in which data is written in the portion of physical space, and isolating the portion of physical space includes: Redundancy repair is performed on the data in the first address.

13. A hard disk management method, characterized in that: The hard disk includes a storage controller and a storage component. The storage controller is used to receive a data access request from a control unit of a storage node and access a physical space provided by the storage component according to the data access request. The method is applied to the control unit, and the method includes: Acquire operation information of a local area of ​​the storage component, the local area being used to provide a portion of the physical space of the entire physical space provided by the storage component, the operation information including values ​​of one or more physical properties of the local area; identifying a health status of the local area according to the operation information; When the health status of the local area indicates that the local area is faulty, it is determined that the portion of the physical space is unavailable.

14. The method according to claim 13, characterized in that The one or more physical properties include at least one of the following physical properties: temperature, size, motion parameter, and electrical parameter.

15. The method according to claim 14, characterized in that The hard disk is a magnetic medium hard disk HDD, the storage component includes multiple heads, the local area is a part of the multiple heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

16. The method according to any one of claims 13 to 15, characterized in that The method further comprises: Isolate the portion of the physical space.

17. The method according to claim 16, characterized in that The isolating the portion of the physical space comprises: determining an address of the portion of physical space; The available address of the hard disk is updated, where the available address is the address of the physical space that can be allocated in the hard disk, and the updated available address does not include the address of the part of the physical space.

18. The method according to claim 16 or 17, characterized in that The isolating the portion of the physical space comprises: Determine a first address of a physical space in which data is written in the portion of physical space; Redundancy repair is performed on the data in the first address.

19. The method according to any one of claims 13 to 18, characterized in that: The method further comprises: determining a capacity of the portion of physical space; When the capacity exceeds a threshold, all physical space in the hard disk is isolated.

20. A hard disk management method, characterized in that: The hard disk includes a storage controller and a storage component, the storage controller is used to receive a data access request from a control unit of a storage node, and access a physical space provided by the storage component according to the data access request. The method is applied to the hard disk, and the method includes: Acquire operation information of a local area of ​​the storage component, the local area being used to provide a portion of a physical space of a total physical space provided by the storage component, the operation information comprising values ​​of one or more physical properties of the local area, the operation information being used to identify a health status of the local area; The operation information is transmitted to the control unit.

21. The method according to claim 20, characterized in that The one or more physical properties include at least one of the following physical properties: temperature, size, motion parameter, and electrical parameter.

22. The method according to claim 21, characterized in that The hard disk is a magnetic medium hard disk HDD, the storage component includes multiple heads, the local area is a part of the multiple heads, the motion parameters include the head flying height, and the electrical parameters include the head resistance and / or the signal-to-noise ratio of the head signal.

23. A hard disk, characterized in that: The hard disk includes a storage controller and a storage component, the storage controller is used to connect to the control unit of the storage node, the storage component is used to provide the control unit with physical space for storing data under the control of the storage controller, and the storage controller is used to execute the method as described in any one of claims 1-9 or the method as described in any one of claims 20-22.

24. A storage node, characterized in that: The storage node includes a control unit and a communication unit, the control unit is connected to the communication unit, the communication module is used to connect to the hard disk, and the control unit is used to execute the method according to any one of claims 10-19.

25. The storage node according to claim 24, characterized in that: The storage node further includes one or more hard disks connected to the communication unit, at least one of the one or more hard disks being as described in claim 23.

26. A storage system, characterized in that: The method comprises a plurality of storage nodes as claimed in claim 24 or 25 connected to each other.

27. A computer-readable storage medium, characterized in that: The computer-readable storage medium comprises computer-executable instructions, and when the computer-executable instructions are executed on a computer, the computer is caused to perform the method according to any one of claims 1 to 22.

28. A hard disk management device, characterized in that: The hard disk includes a storage controller and a storage component. The storage controller is used to receive a data access request from a control unit of a storage node and access a physical space provided by the storage component according to the data access request. The management device is applied to the hard disk, and the management device includes: an identification module, configured to identify a health status of a local area in the storage component, the local area being used to provide a portion of the total physical space provided by the storage component; A determination module is used to determine that the portion of the physical space is unavailable when the health status of the local area indicates that the local area is faulty.

29. A hard disk management device, characterized in that: The hard disk includes a storage controller and a storage component. The storage controller is used to receive a data access request from a control unit of a storage node and access a physical space provided by the storage component according to the data access request. The management device is applied to the control unit, and the management device includes: an acquisition module, configured to acquire notification information from the hard disk, wherein the notification information is transmitted by the hard disk to the control unit when a local area of ​​the storage component fails, the local area being used to provide a part of the physical space in the entire physical space provided by the storage component, and the notification information being used to instruct to isolate the part of the physical space; The isolation module is used to isolate the part of the physical space.

30. A hard disk management device, characterized in that: The hard disk includes a storage controller and a storage component. The storage controller is used to receive a data access request from a control unit of a storage node and access a physical space provided by the storage component according to the data access request. The management device is applied to the control unit, and the management device includes: an acquisition module, configured to acquire operation information of a local area of ​​the storage component, the local area being used to provide a portion of the physical space of the entire physical space provided by the storage component, the operation information including values ​​of one or more physical properties of the local area; a determination module, configured to identify the health status of the local area according to the operation information; The determination module is further configured to determine that the portion of the physical space is unavailable when the health status of the local area indicates that the local area is faulty.

31. A hard disk management device, characterized in that: The hard disk includes a storage controller and a storage component. The storage controller is used to receive a data access request from a control unit of a storage node and access a physical space provided by the storage component according to the data access request. The management device is applied to the hard disk, and the management device includes: an acquisition module, configured to acquire operation information of a local area of ​​the storage component, the local area being used to provide a portion of a physical space in a total physical space provided by the storage component, the operation information comprising values ​​of one or more physical properties of the local area, and the operation information being used to identify a health status of the local area; A communication device is used to transmit the operation information to the control unit.

Citation Information

Patent Citations

  • Hard disk management method, device and system

    CN119225628A

  • Data wiping method and device of solid state device

    CN105278876A

  • A method and device for processing a hard disk fault sector in an RAID array

    CN109814810A

  • Mechanical hard disk fault risk assessment method, mechanical hard disk and storage medium

    CN115700490A

  • Hard disk fault processing method, array controller and hard disk

    WO2020048442A1