Controller, magnetic tape unit device and storage system

By setting the gap between the magnetic head and the tape body in the tape drive and controlling the sliding of the magnetic head with a sensor module, the problem of magnetic head wear was solved, the tape life was extended, and the data access efficiency was optimized.

CN121237136APending Publication Date: 2025-12-30HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410874376.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-06-28
Publication Date
2025-12-30

AI Technical Summary

Technical Problem

The magnetic head in a magnetic tape drive causes significant wear on the tape, affecting its lifespan.

Method used

In tape drive equipment, a gap is set between the magnetic head and the tape body. When the movement distance is outside the target range, the gap is maintained to avoid friction; when the movement distance is within the target range, contact is made to access data. The movement distance is obtained by a sensor module and the controller instructs the magnetic head to slide to accurately access data.

Benefits of technology

This reduces wear on the tape by the magnetic head, extends the tape's lifespan, and does not affect the accuracy of data access, saving data access time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121237136A_ABST
    Figure CN121237136A_ABST
Patent Text Reader

Abstract

The invention discloses a controller, magnetic tape unit equipment and a storage system, and relates to the technical field of magnetic tapes. The problem of magnetic tape abrasion of magnetic tape unit equipment is solved. According to the specific scheme, a magnetic head is slidably connected with a base, so that a gap between the magnetic head and a belt body can be adjusted. The sensor module is used for acquiring the moving distance of the belt body. The controller is used for indicating the magnetic head to slide relative to the base according to the moving distance. When the moving distance of the belt body is out of the target distance interval, a gap is formed between the magnetic head and the belt body. The existence of the gap can reduce the abrasion of the magnetic head to the belt body. And when the moving distance is within the target distance interval, the magnetic head is in contact with the belt body and accesses data in the belt body.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of magnetic tape technology, and more particularly to a controller, magnetic tape drive device, and storage system. Background Technology

[0002] A tape drive is a single-drive product consisting of a tape drive and a tape. Tape drives typically read and write data by sliding the tape along a head within the tape drive. The thickness of the tape drive is related to the head travel height and the thickness of the tape drive housing. The head travel height is the sum of the height of the head body and the maximum distance the head body can travel during data access.

[0003] Compared to solid-state drives (SSDs) and hard disk drives (HDDs), tape drives have advantages such as low cost, high bandwidth, and large capacity expansion potential.

[0004] During the data management process, the magnetic head of the tape drive causes significant wear on the tape, affecting the tape's lifespan. Summary of the Invention

[0005] This application provides a controller, a tape drive device, and a storage system. The aim is to improve the problem of tape wear in tape drive devices.

[0006] To achieve the above objectives, this application adopts the following technical solution.

[0007] In a first aspect, this application provides a magnetic tape drive device. The magnetic tape drive device includes a base, a tape body, a sensor module, a magnetic head, and a controller. The tape body is disposed on the base and is used to store data. The sensor module is used to acquire the movement distance of the tape body. The magnetic head is slidably connected to the base. The controller is used to instruct the magnetic head to slide relative to the base according to the movement distance. Wherein, when the movement distance is outside a target distance range, there is a gap between the magnetic head and the tape body. When the movement distance is within the target distance range, the magnetic head contacts the tape body and accesses the data in the tape body.

[0008] Thus, during the addressing process of the tape drive, when the tape body's movement distance is less than the target distance range, the gap between the magnetic head and the tape body prevents the magnetic head from rubbing against the tape body, which helps reduce wear on the tape body and thus extends the tape's lifespan. When the tape body's movement distance reaches the target distance range, the magnetic head contacts the tape body and accesses the data within it. Since the magnetic head also has the function of accessing addresses within the tape body, it can accurately read the tape body's address and access the target data after contacting the tape body. Therefore, even if there is an error between the aforementioned target distance range and the address of the accessed target data, the magnetic head can still access the target data. In summary, the tape drive device provided in this application, without affecting the accuracy of the magnetic head's data access in the tape drive device, prevents friction between the tape body and the magnetic head during tape body movement, which helps reduce wear on the tape body from the magnetic head and thus extends the tape body's lifespan.

[0009] In conjunction with the first aspect, in some feasible methods, when the moving distance is outside the target distance range, the maximum moving speed of the tape is a first value. When the moving distance is within the target distance range, the maximum moving speed of the tape is a second value; the second value is less than the first value. Thus, when there is a gap between the magnetic head and the tape, the tape's moving speed is higher and faster, which avoids wear on the tape and saves time, thereby reducing data access time.

[0010] In conjunction with the first aspect, in some implementable ways, the controller is also configured to: determine an I / O scheduling scheme for target metric management based on the travel distance; the target metric includes one or a combination of the following: access latency, access bandwidth, the travel distance of the tape, and the wear of the tape.

[0011] In conjunction with the first aspect, in some feasible embodiments, the tape drive device also includes a slide rail. The sliding connection between the magnetic head and the base includes: the magnetic head and the base being slidably connected via the slide rail.

[0012] In conjunction with the first aspect, in some feasible implementations, the sensor module includes an encoding strip and a detection component. The encoding strip is connected to the tape body; the encoding strip includes multiple strips, each strip recording one code. The detection component is used to determine the movement distance based on the codes recorded on at least two of the multiple strips. Thus, the movement distance of the tape body can be obtained by detecting the codes recorded on different strips.

[0013] In conjunction with the first aspect, in some implementable methods, the plurality of strips includes a first strip and a second strip. The first strip includes at least one first identifier and at least one second identifier; the arrangement order of the identifiers in the first strip indicates a first code. The second strip includes at least one of the first identifiers and at least one of the second identifiers; the arrangement order of the identifiers in the second strip indicates a second code. The arrangement order of the identifiers in the first strip and the arrangement order of the identifiers in the second strip are different. The detection component is used to determine the travel distance based on the second code and the first code. Thus, the detection component identifies the first identifier and the second identifier, and then determines the first code and the second code based on the arrangement order of the first and second identifiers to determine the travel distance of the strip.

[0014] In conjunction with the first aspect, in some feasible embodiments, the first marking portion is a light-transmitting portion, and the second marking portion is a light-absorbing or reflective portion. Alternatively, the first marking portion is a reflective portion, and the second marking portion is a light-absorbing portion. Thus, the arrangement order of the first and second marking portions can be detected by a laser emitter and a laser receiver to identify the first code of the first strip record and the second code of the second strip record.

[0015] In conjunction with the first aspect, in some feasible methods, the first identification portion and the second identification portion have different light transmittance. Thus, the first identification portion and the second identification portion can be identified by detecting their light transmittance, and the first code of the first strip record and the second code of the second strip record can be identified based on the arrangement order of the first identification portion and the second identification portion.

[0016] In conjunction with the first aspect, in some feasible implementations, the capacitance values ​​of the first and second identifiers are different. Thus, the detection component detects the capacitance values ​​of the first and second identifiers, thereby obtaining a code indicated by the arrangement order of the first and second identifiers. The detection component determines the movement distance of the strip based on the codes recorded by at least two strips.

[0017] In conjunction with the first aspect, in some feasible implementations, the strip includes an image layer, and the detection component includes an image sensor for acquiring an image of the strip. Thus, the detection component can determine the movement distance of the strip based on at least two images.

[0018] In conjunction with the first aspect, in some feasible ways, the image layer includes one or a combination of the following: QR code, RFID code, barcode, or text label.

[0019] In conjunction with the first aspect, in some feasible methods, the coding strip is connected to one side of the strip body along its width. In this way, the coding strip does not occupy space in the thickness direction of the strip body, avoiding any increase in strip body thickness due to the coding strip. Furthermore, the length of the coding strip can be the same as the length of the strip body, allowing for a larger space in the equipment.

[0020] In conjunction with the first aspect, in some feasible implementations, the tape body includes multiple data areas for storing data and at least one connection area for not storing data; two adjacent data areas are connected by one of the connection areas; the encoding strip and the connection area are stacked along the thickness direction of the tape body. Since the connection area does not store data, the setting of the encoding strip has little impact on the data stored in the tape body. Furthermore, the setting of the encoding strip does not require space in the width direction of the tape body.

[0021] In conjunction with the first aspect, in some feasible embodiments, the tape drive further includes a drum connected to the base, on which the tape is wound. The sensor module includes an angle sensor for determining the travel distance based on the rotation angle of the drum. Thus, during the tape's movement, the drum and tape move synchronously; detecting the drum's rotation angle yields the tape's rotation angle, and the travel distance of the tape is determined by multiplying the radian corresponding to the rotation angle by the tape's radius.

[0022] In conjunction with the first aspect, in some feasible embodiments, the tape drive further includes: a spool connected to the base; and the tape wound around the spool. The sensor module includes a thickness sensor for determining the travel distance based on the thickness of the tape wound around the spool. Thus, during the movement of the tape, the thickness of the tape wound around the spool increases or decreases. The thickness of the tape wound around the spool is equal to the product of the tape thickness and the distance the tape travels. Therefore, the travel distance of the tape can be determined by the thickness of the tape wound around the spool.

[0023] In conjunction with the first aspect, in some feasible embodiments, the tape drive device further includes: a drum. The tape is wound on the drum; the sensor module includes a Hall encoder or a photoelectric encoder. The Hall encoder or the photoelectric encoder is mounted on the drum. Thus, the photoelectric encoder can convert the mechanical geometric displacement on the drum into pulses or digital signals via photoelectric conversion and transmit the pulses or digital signals to the controller. The sensor module can acquire the movement distance of the tape wound on the drum. Similarly, the Hall encoder can measure the movement distance of the tape wound on the drum.

[0024] In conjunction with the first aspect, in some implementable embodiments, the tape drive device also includes a driver. The driver is used to drive the magnetic head to slide relative to the base; a controller is signal-connected to the driver. The controller is used to instruct the driver to drive the magnetic head to slide relative to the base based on the distance traveled.

[0025] Secondly, embodiments of this application provide a storage system. The storage system includes a tape controller and one or more tape drives of any of the types provided in the first aspect. The tape controller is used to manage the tape drives according to data access requests.

[0026] Thirdly, embodiments of this application provide a controller. Applied to a magnetic tape drive, the magnetic tape drive includes a base, a magnetic head, and a tape for storing data. The tape is disposed on the base, and the magnetic head is slidably connected to the base. The controller includes a communication interface and a processor. The communication interface is used to receive the movement distance of the tape. The processor is used to send control commands based on the movement distance. The control commands are used to instruct the magnetic head to slide relative to the base. Wherein, when the movement distance is outside a target distance range, the control commands instruct that there is a gap between the magnetic head and the tape. When the movement distance is within the target distance range, the control commands instruct the magnetic head to contact the tape and access the data in the tape.

[0027] In conjunction with the third aspect, in some implementable methods, the control command is also used to indicate the moving speed of the belt; when the moving distance is outside the target distance range, the maximum moving speed of the belt is a first value. When the moving distance is within the target distance range, the maximum moving speed of the belt is a second value; the second value is less than the first value.

[0028] In conjunction with the third aspect, in some implementable ways, the processor is specifically used to: determine an I / O scheduling scheme for target metric management based on the travel distance; the target metric includes one or more of the following combinations: access latency, access bandwidth, the travel distance of the tape, and the wear of the tape.

[0029] Regarding the beneficial effects of any implementation method in the second or third aspect, please refer to the description of any optional implementation method in the first aspect, which will not be repeated here. Based on the implementation methods provided in the above aspects, this application can also make further combinations to provide more implementation methods. Attached Figure Description

[0030] Figure 1 This is a schematic diagram of the structure of a data access system provided in an embodiment of this application.

[0031] Figure 2 This is a schematic diagram of the first state of the tape drive device provided in the embodiments of this application.

[0032] Figure 3a This is a schematic diagram of the second state of the tape drive device provided in an embodiment of this application.

[0033] Figure 3b This is a control schematic diagram of the controller provided in an embodiment of this application.

[0034] Figure 3c This is a schematic diagram of an IO scheduling scheme provided in an embodiment of this application.

[0035] Figure 3d This is a schematic diagram of another IO scheduling scheme provided in an embodiment of this application.

[0036] Figure 3e This is a schematic diagram of another IO scheduling scheme provided in an embodiment of this application.

[0037] Figure 3f This is a schematic diagram of another IO scheduling scheme provided in an embodiment of this application.

[0038] Figure 4a This is a schematic diagram of a connection structure between a magnetic head and a base provided in an embodiment of this application.

[0039] Figure 4b This is a schematic diagram of another connection structure between the magnetic head and the base provided in an embodiment of this application.

[0040] Figure 5a This is a schematic diagram of the structure of a sensor module and a strip provided in an embodiment of this application.

[0041] Figure 5b This is a schematic diagram of the structure of a roll and a belt provided in an embodiment of this application.

[0042] Figure 6 This is a schematic diagram of another sensor module and strip provided in an embodiment of this application.

[0043] Figure 7 This is a schematic diagram of another sensor module and strip provided in an embodiment of this application.

[0044] Figure 8 This is a schematic diagram of another sensor module and strip provided in an embodiment of this application.

[0045] Figure 9 This is a schematic diagram of another sensor module and strip provided in an embodiment of this application.

[0046] Figure 10 This is a schematic diagram of the structure of a strip and a detection component provided in an embodiment of this application.

[0047] Figure 11a This is a schematic diagram of another strip and detection component provided in an embodiment of this application.

[0048] Figure 11b This is a schematic diagram of another strip and detection component provided in an embodiment of this application.

[0049] Figure 11c This is a schematic diagram of another strip and detection component provided in an embodiment of this application.

[0050] Figure 12 This is a schematic diagram of the structure of a sensor module provided in an embodiment of this application.

[0051] Figure 13 This is a schematic diagram of the structure of another sensor module provided in an embodiment of this application.

[0052] In the diagram: 100 - Data access device; 110 - Switch; 120 - Storage device; 121 - Engine; 1211 - Front-end interface; 1214 - Back-end interface; 1212 - Processor; 1213 - Memory; 122 - Hard disk enclosure; 1225 - Control unit; 1226 - Network interface card; 1224 - Hard disk; 1222 - Solid-state drive; 1221 - Mechanical hard disk; 200 - Tape drive; 210 - Base; 220 - Tape body; 221 - Data area; 222 - Connection area; 230 - Sensor module; 233 - Encoding strip; 23 2-Detection component; 2321-Laser emitter; 2322-Laser receiver; 240-Magnetic head; 241-Bracket; 243-Motor; 242-Read / write head; 244-Driver; 245-Slide rail; 250-Controller; 260-Roll; 201-First strip; 202-Second strip; 203-Third strip; 101-First marking section; 102-Second marking section; 21-First roller; 22-Second roller; 231-Strip; 235-Base film; 263-Roll; 261-First cover plate; 262-Second cover plate. Detailed Implementation

[0053] This application provides a controller, a magnetic tape drive, and a storage system. The magnetic tape drive includes a sensor module for acquiring the travel distance of the tape. During addressing, a gap exists between the read / write head and the tape, reducing friction and extending the tape's lifespan. The travel distance acquired by the sensor module indicates that the tape has moved to the vicinity of a target position, during which the read / write head and tape do not contact each other. When the tape reaches the vicinity of the target position, the read / write head contacts the tape, accurately acquiring the tape's address information and reading / writing data. Thus, this magnetic tape drive reduces friction between the read / write head and the tape without affecting the head's addressing and data reading capabilities.

[0054] The technical solutions involved in this application may be applied not only to current magnetic tape technology or storage devices, but also to future magnetic tape technology or storage devices, or to storage systems including magnetic tape media storage or storage devices. The terminology used in the embodiments section of this application is only for explaining specific embodiments of this application and is not intended to limit this application. A brief introduction to some concepts that may be involved in this application is given below.

[0055] Storage medium: A storage material used to record sound, images, digital signals, or other signals. This storage material may include, but is not limited to, magnetic tape, such as a tape-shaped material with a magnetic layer used to record sound, images, digital signals, or other signals. Magnetic tape contains a magnetic medium, such as magnetic powder, for storing data. For example, changes in the magnetic field in this magnetic medium are typically achieved by coating a plastic film substrate (support) with a layer of granular magnetic material or by evaporating and depositing a layer of magnetic oxide or alloy film. The substrate of magnetic tape may include, but is not limited to, paper, celluloid, or polyester film.

[0056] Magnetic head: A component that reads and writes data on magnetic tape using magnetic principles. It is divided into write heads and read heads. Write heads record data by magnetizing the magnetic medium (such as magnetic powder), while read heads read data from the magnetic medium by sensing its magnetic field.

[0057] To make the objectives, technical solutions, and advantages of this application clearer, the application will now be described in further detail with reference to the accompanying drawings.

[0058] In the following description, the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined with "first," "second," etc., may explicitly or implicitly include one or more of that feature. In the description of this application, unless otherwise stated, "a plurality of" means two or more.

[0059] Furthermore, in the embodiments of this application, directional terms such as "upper" and "lower" are defined relative to the orientation in which the components are schematically placed in the accompanying drawings. It should be understood that these directional terms are relative concepts, used for relative description and clarification, and can change accordingly depending on the orientation in which the components are placed in the accompanying drawings.

[0060] Figure 1 This is a schematic diagram of a data access system provided in this application. The data access system includes: a data access device 100 and a storage device 120. Figure 1 In the application scenario shown, users access data through applications. The computer running these applications can be referred to as a "computing device".

[0061] Data access device 100 can be a physical machine, a virtual machine, or a container. The physical machine can include, but is not limited to, one or both a client and a smart NIC. For example, data access device 100 includes a client, such as a host, desktop computer, server, laptop, or mobile device. Another example is that data access device 100 includes a smart NIC. This smart NIC, also known as a smart network adapter, not only performs the network transmission functions of a standard NIC but also provides a built-in programmable and configurable hardware acceleration engine. This improves application performance and significantly reduces CPU consumption in the host connected to the smart NIC, providing more CPU resources for the application. For example, in a highly virtualized environment, the host CPU needs to run open virtual switch (OVS) related tasks. Simultaneously, the host CPU also needs to handle storage, online or offline encryption / decryption of data packets, deep packet inspection, firewalls, complex routing, and other operations. These operations not only consume significant CPU resources but also, due to competition for CPU resources between different services, prevent the services from achieving optimal performance. As a hub connecting various services, smart network interface cards (NICs) accelerate these services.

[0062] In one possible example, data access device 100 accesses storage device 120 via a network to access data; for example, the network may include switch 110.

[0063] In another possible example, data access device 100 may also communicate with storage device 120 via a wired connection, such as a universal serial bus (USB) or a peripheral component interconnect express (PCIe) bus.

[0064] Figure 1 The storage device 120 shown can be a centralized storage system. A key feature of a centralized storage system is a unified entry point through which all data from external devices passes; this entry point is the engine 121 of the centralized storage system. The engine 121 has management functions, and many advanced functions of the storage system are implemented within it.

[0065] like Figure 1 As shown, engine 121 may have one or more controllers. Figure 1The following example illustrates the concept of engine 121 containing one controller. In one possible example, if engine 121 has multiple controllers, any two controllers can have a mirror channel, enabling any two controllers to serve as backups for each other, thereby preventing hardware failures from causing the entire storage device 120 to become unavailable. It should be understood that if engine 121 includes multiple controllers, then engine 121 can also be referred to as the array controller of storage device 120.

[0066] Engine 121 also includes a front-end interface 1211 and a back-end interface 1214. The front-end interface 1211 is used to communicate with the data access device 100 to provide data access services to the data access device 100. The back-end interface 1214 is used to communicate with hard drives to expand the capacity of the storage device 120. Through the back-end interface 1214, engine 121 can connect to more hard drives, thereby forming a very large storage resource pool.

[0067] In terms of hardware, such as Figure 1 As shown, the controller includes at least a processor 1212 and memory 1213. The processor 1212 is a central processing unit (CPU) used to process data access requests from outside the storage device 120 (servers or other storage systems), and also to process requests generated internally by the storage device 120. For example, when the processor 1212 receives write data requests from the data access device 100 through the front-end interface 1211, it temporarily stores the data in these write data requests in memory 1213. When the total amount of data in memory 1213 reaches a certain threshold, the processor 1212 sends the data stored in memory 1213 to at least one of the following hard drives for persistent storage: a mechanical hard drive 1221, a solid-state drive (SSD) 1222, a tape drive 200, or another hard drive 1224, through a back-end port.

[0068] Memory 1213 refers to internal memory that directly exchanges data with the processor. It can read and write data at any time and at high speed, serving as temporary data storage for the operating system or other running programs. Memory includes at least two types of memory, such as random access memory (RAM) or read-only memory (ROM). For example, RAM can be DRAM or SCM. DRAM is a semiconductor memory and, like most RAM, is a type of volatile memory device. However, DRAM and SCM are merely illustrative examples in this embodiment; memory can also include other types of RAM, such as static random access memory (SRAM). For read-only memory, examples include programmable read-only memory (PROM) and erasable programmable read-only memory (EPROM). Additionally, memory 1213 can also be a dual in-line memory module (DIMM), i.e., a module composed of dynamic random access memory (DRAM), or an SSD. In practical applications, the controller can be configured with multiple memory modules 1213, and different types of memory modules 1213. This embodiment does not limit the number or type of memory modules 1213. Furthermore, memory modules 1213 can be configured to have a power-saving function. The power-saving function means that when the system loses power and then regains power, the data stored in memory modules 1213 will not be lost. Memory with a power-saving function is called non-volatile memory. Memory modules 1213 store software programs, and processor 1212 can run the software programs in memory modules 1213 to manage the hard disk. For example, the hard disk can be abstracted as a storage resource pool, and the storage resource pool can be provided to the server in the form of logical unit numbers (LUNs). Here, the LUN is actually the hard disk seen on the server. Of course, some centralized storage systems are also file servers themselves, and can provide shared file services to the server.

[0069] like Figure 1As shown, in this system, engine 121 may not have a hard drive slot; the hard drive needs to be placed in hard drive enclosure 122, and the back-end interface 1214 communicates with the hard drive enclosure 122. The back-end interface 1214 exists in the form of an adapter card within engine 121, and two or more back-end interfaces 1214 can be used simultaneously on one engine 121 to connect multiple hard drive enclosures. Alternatively, the adapter card can be integrated onto the motherboard, in which case the adapter card can communicate with processor 1212 via the PCIe bus.

[0070] It should be noted that, Figure 1 Only one engine 121 is shown in the figure. However, in actual applications, the storage system may contain two or more engines 121, and redundancy or load balancing may be performed between multiple engines 121.

[0071] The hard drive enclosure 122 includes a control unit 1225 and several hard drives. The control unit 1225 can have various forms. In one case, the hard drive enclosure 122 is a smart enclosure, such as... Figure 1 As shown, the control unit 1225 includes a CPU and memory. The CPU performs operations such as address translation and reading / writing data. The memory is used to temporarily store data to be written to the hard disk or to read data from the hard disk to be sent to the controller. Alternatively, the control unit 1225 can be 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, capable of efficiently operating on network packets, storage requests, or analysis requests. A DPU differs from a CPU by its high degree of parallelism (the ability to handle a large number of requests). Optionally, the DPU can be replaced by a graphics processing unit (GPU), an embedded neural network processing unit (NPU), or other processing chips. Typically, there can be one, two, or more control units 1225. The functions of the control unit 1225 can be offloaded to the network interface card (NIC) 1226. In other words, in this embodiment, the hard disk enclosure 122 does not contain a control unit 1225; instead, the NIC 1226 performs data reading / writing, address translation, and other computational functions. At this point, network interface card 1226 is a smart network interface card. It can contain a CPU and memory. The CPU is used to perform address translation and data reading / writing operations. Memory is used to temporarily store data to be written to the hard drive or to read data from the hard drive to be sent to the controller. It can also be a programmable electronic component, such as a DPU. There is no ownership relationship between network interface card 1226 and the hard drives in hard drive enclosure 122; network interface card 1226 can access any hard drive in hard drive enclosure 122 (e.g., ...). Figure 1The mechanical hard drive 1221, solid-state drive 1222, tape drive device 200 and other hard drives 1224 shown are examples of hard drives that make it easier to expand hard drives when storage space is insufficient.

[0072] In this embodiment, the tape drive device 200 refers to a memory that includes a magnetic tape medium. In hardware implementation, the tape drive device may include, but is not limited to, a magnetic tape and a head driver. The head driver can be used to access the magnetic tape, such as writing data to or reading data from the tape. Specific implementations of the tape drive device 200 are described below. Figures 2 to 12 The embodiments shown are not described in detail here.

[0073] Depending on the type of communication protocol between engine 121 and disk enclosure 122, disk enclosure 122 may be a serially attached small computer system interface (SAS) disk enclosure, an NVMe (Non-Volatile Memory Express) disk enclosure, or other types of disk enclosures. SAS disk enclosures use the SAS 3.0 protocol, and each enclosure supports 25 SAS disks. Engine 121 connects to disk enclosure 122 via an onboard SAS interface or a SAS interface module. NVMe disk enclosures function more like a complete computer system, with NVMe disks inserted into them. The NVMe disk enclosure then connects to engine 121 via an RDMA port. In some cases, engine 121 may also be referred to as a disk management device.

[0074] In terms of hardware implementation, the hard disk enclosure 122 can be installed in the storage system, or the hard disk enclosure 122 can be encapsulated and set up independently. When the hard disk enclosure 122 exists independently, it can also be called a storage device. This application does not limit this.

[0075] In one alternative implementation, storage device 120 is a centralized storage system integrating disk and controller. Storage device 120 does not have the aforementioned hard disk enclosure 122, and engine 121 is used to manage multiple hard drives connected via hard disk slots. The functionality of the hard disk slots can be implemented by backend interface 1214.

[0076] In some alternative implementations, storage device 120 is a distributed storage system. The distributed storage system includes a cluster of compute nodes and a cluster of storage nodes. The compute node cluster includes one or more compute nodes that can communicate with each other. A compute node can be a server, desktop computer, or controller of a storage array, etc. Hardware-wise, a compute node can include a processor, memory, and a network interface card (NIC), etc. The processor is a CPU used to process data access requests from outside the compute node or requests generated internally within the compute node. For example, when the processor receives a write data request from a user, it temporarily stores the data in the write data request in memory. When the total amount of data in memory reaches a certain threshold, the processor sends the data stored in memory to the storage node for persistent storage. In addition, the processor is also used for data computation or processing, such as metadata management, deduplication, data compression, virtualization of storage space, and address translation. In the embodiments provided in this application, the storage node can be a magnetic disk or other types of hard disk, etc. It is understood that the storage system described in the embodiments of this application can be a distributed storage system integrating storage and computing, or a distributed storage system separating storage and computing; this application does not limit this.

[0077] For example, a distributed storage system can be implemented using network attached storage (NAS) technology. NAS refers to a network storage architecture that provides storage resources through file-level data access and sharing over an Internet Protocol (IP) network. In a NAS scenario, the NAS is an external device for the server / host, used to provide file-level storage space for the server / host in the distributed storage system.

[0078] It is worth noting that the above examples are only possible implementations of the data access system provided in this embodiment and should not be construed as limiting this application.

[0079] Figure 2 This is a schematic diagram of the first state of the tape drive device 200 provided in an embodiment of this application. Please refer to... Figure 2 The tape drive device 200 includes a base 210, a tape body 220, a sensor module 230, a magnetic head 240, and a controller 250. The tape body 220 is mounted on the base 210, and the magnetic head 240 is slidably connected to the base 210. The magnetic head 240 can move closer to or further away from the tape body 220. When the tape drive device 200 reads or writes data, the tape body 220 moves relative to the magnetic head 240. The sensor module 230 is used to acquire the distance the tape body 220 has moved (e.g., the distance the magnetic head 240 moves). Figure 2 (distance X in the middle).

[0080] The controller 250 is signal-connected to the sensor module 230. The controller 250 is configured to instruct the magnetic head 240 to slide relative to the base 210 based on the travel distance X.

[0081] In embodiments of this application, the controller 250 can be located on the tape drive device 200 or outside the tape drive device 200. For example, the controller 250 can be located on... Figure 1 It is located on the control unit 1225 or on the controller integrated within the storage device 120.

[0082] Specifically, when the moving distance is outside the target distance range, there is a gap between the magnetic head 240 and the tape 220. When the moving distance is within the target distance range, the magnetic head 240 contacts the tape 220 and accesses the data in the tape 220.

[0083] The moving distance X of the tape 220 is determined based on the target position of the accessed target data and the current position of the magnetic head 240.

[0084] Thus, during the addressing process of the tape drive 200, when the tape body 220 has not yet reached the target distance range, the gap between the magnetic head 240 and the tape body 220 can prevent the magnetic head 240 from rubbing against the tape body 220, reducing wear on the tape body 220. When the tape body 220 reaches the target distance range, the magnetic head 240 contacts the tape body 220 and accesses the data within it. Since the magnetic head 240 also has the function of accessing the address within the tape body 220, it can accurately read the address of the tape body 220 and access the target data after contacting the tape body 220. Therefore, even if there is an error between the aforementioned target distance range and the address of the accessed target data, the magnetic head 240 can still access the target data. In summary, the tape drive 200 provided in this embodiment can reduce wear on the tape body 220 caused by the magnetic head 240 without affecting the accuracy of data access by the magnetic head 240, and can extend the service life of the tape body 220.

[0085] In the embodiments of this application, for ease of description, the state in which there is a gap between the magnetic head 240 and the tape 220 is defined as the first state. The state in which the magnetic head 240 is in contact with the tape 220 is defined as the second state.

[0086] In embodiments of this application, the aforementioned target distance range has a maximum value and a minimum value. In some embodiments, when the travel distance is equal to the minimum or maximum value, there is a gap between the magnetic head 240 and the tape 220. Alternatively, in some embodiments, when the travel distance is equal to the minimum or maximum value, the magnetic head 240 is in contact with the tape 220. In other words, when the value of the travel distance is equal to the maximum or minimum value of the target distance range, in some embodiments, the controller 250 instructs the tape drive device 200 to be in a first state. In other embodiments, the controller 250 instructs the tape drive device 200 to be in a second state.

[0087] The phrase "movement distance outside the target distance interval" means that the movement distance is less than or equal to the minimum value of the target distance interval, or greater than or equal to the maximum value of the target distance interval. The phrase "movement distance within the target distance interval" means that the movement distance is greater than or equal to the minimum value of the target distance interval, and less than or equal to the maximum value of the target distance interval.

[0088] It is understood that the travel distance of the tape body 220 can be determined based on the current address of the read / write head 240 and the address of the target data. For example, the tape drive device 200 receives a request to access target data stored at a target address. The tape drive device 200 determines the travel distance of the tape body 220 based on the current address of the read / write head 240 and the target address. For instance, the tape body 220 travels the target distance and then reaches an area near the target address, meaning the target distance is within the target distance range.

[0089] Figure 2 In the example, there is a gap between the magnetic head 240 and the tape 220. This application embodiment does not limit the size of the gap between the magnetic head 240 and the tape 220. Figure 2 The width of the gap between the magnetic head 240 and the tape 220 is H. For example, the width H can be from 1 mm to 50 mm. For instance, the width H can be 1 mm, 2 mm, 3 mm, 5 mm, 6 mm, 8 mm, 10 mm, 15 mm, 20 mm, 25 mm, 30 mm, 35 mm, 40 mm, or 50 mm, etc.

[0090] In some embodiments of this application, the tape drive device 200 may further include a first roller 21 and a second roller 22, the first roller 21 and the second roller 22 being used to press against the tape body 220, and the first roller 21 and the second roller 22 together constraining the transmission path of the tape body 220.

[0091] Figure 3a This is a schematic diagram of the second state of the tape drive device 200 provided in the embodiments of this application. Figure 3a In this state, the magnetic head 240 is in contact with the tape 220. The magnetic head 240 can access the data within the tape 220.

[0092] In the second state, it can be considered that there is no gap between the magnetic head 240 and the tape 220, or the gap is small, for example, the width of the gap is 0nm (nanometer) to 20nm, such as the width of the gap is 0nm, 0.1nm, 0.4nm, 0.8nm, 1nm, 2nm, 3nm, 4nm, 6nm, 8nm, 10nm, 15nm, 18nm or 20nm, etc.

[0093] In some embodiments of this application, when the moving distance is outside the target distance range, the maximum moving speed of the tape body is a first value. When the moving distance is within the target distance range, the maximum moving speed of the tape body is a second value; the second value is less than the first value. In other words, when the tape drive device 200 is in the first state, the maximum moving speed of the tape body is the first value; when the tape drive device 200 is in the second state, the maximum moving speed of the tape body 220 is the second value, which is less than the first value. Thus, when there is a gap between the magnetic head 240 and the tape body 220, the moving speed of the tape body 220 is relatively large, which can shorten the moving time of the tape body 220 and avoid wear on the tape body 220 by the magnetic head 240. When the magnetic head 240 accesses the tape body 220, the moving speed of the tape body 220 is relatively small, which does not affect the data access of the magnetic head 240.

[0094] The tape drive device 200 provided in this application embodiment can reduce wear on the tape body 220 while also reducing access time.

[0095] When the tape drive device 200 is in the first state, the minimum speed of the tape body is the third value, which is obviously less than the first value. This application embodiment does not limit the magnitude of the third value; for example, the third value can be greater than, less than, or equal to the second value, or even zero.

[0096] Similarly, when the tape drive device 200 is in the second state, the minimum moving speed of the tape body 220 is the fourth value, which is less than the second value.

[0097] This application does not limit the magnitude of the second value. For example, the second value can be 4 m / s to 5 m / s. For instance, the second value can be 4 m / s, 4.2 m / s, 4.5 m / s, 4.8 m / s, 5 m / s, etc.

[0098] This application does not limit the magnitude of the first value in its embodiments. For example, the first value can be 6m / s-10m / s. For example, the second value can be 6m / s, 7m / s, 8m / s, 9m / s, 10m / s, etc.

[0099] It should be noted that the embodiments of this application do not limit the tape drive device 200 to only the aforementioned first and second states. In some embodiments, the tape drive device 200 may also have a third state. For example, the third state is defined as the tape drive device 200 being in a standby state or a stopped state. In the third state, there is a gap between the magnetic head 240 and the tape body 220. This reduces the contact time between the magnetic head 240 and the tape body 220, avoids the magnetic head 240 pressing on the same position of the tape body 220 for a long time, causing tape creep, and helps to extend the service life of the tape body 220.

[0100] Figure 3b This is a control schematic diagram of the controller 250 provided in an embodiment of this application. Please refer to... Figure 3b The controller 250 includes a communication interface and a processor. The communication interface is used to receive the travel distance of the tape 220. The processor is used to send control commands based on the travel distance. The control commands are used to instruct the magnetic head 240 to slide relative to the base.

[0101] When the movement distance is outside the target distance range, the control command indicates that there is a gap between the magnetic head and the tape.

[0102] When the travel distance is within the target distance range, the control command instructs the magnetic head to contact the tape and access the data in the tape. It is worth noting that when the magnetic tape travels within the target distance range, the magnetic head accesses the data in the tape; therefore, this control command can also be called an access command, read / write command, read command, or write command, etc., and this application embodiment does not limit this to any particular term.

[0103] In some embodiments, the control command is further used to indicate the moving speed of the belt; when the moving distance is outside the target distance range, the maximum moving speed of the belt is a first value. When the moving distance is within the target distance range, the maximum moving speed of the belt is a second value; the second value is less than the first value.

[0104] In some embodiments of this application, the processor is specifically configured to: determine an IO (Input / Output) scheduling scheme for target metric management based on the travel distance; the target metric includes one or more of the following combinations: access latency, access bandwidth, travel distance of the tape, and wear of the tape.

[0105] In some embodiments, the processor is further configured to: determine a target I / O scheduling scheme from a plurality of I / O scheduling schemes based on the travel distance, and send a control instruction that matches the target I / O scheduling scheme.

[0106] The following combination Figure 3c , Figure 3d , Figure 3eas well as Figure 3f Examples of some I / O scheduling schemes are shown.

[0107] Figure 3c This is a schematic diagram of an IO scheduling scheme provided in an embodiment of this application. Figure 3c In this context, the addressing method typically provided by the technology is contact addressing. The scheduling scheme for contact addressing is as follows: from the initial position of the read / write head until it reaches the access area of ​​the tape and accesses data, the read / write head and the tape are in contact. The contact distance between the head and the tape is the full length. In this contact addressing scheme, the tape moves at a relatively high speed for a certain distance from the initial position of the read / write head until it reaches the access area of ​​the tape. When the speed of the tape exceeds the maximum value of the "access data speed range," the read / write head cannot determine the address of the tape. Therefore, before the read / write head reaches the access area of ​​the tape, the speed of the tape needs to decrease to the "access data speed range," and data is accessed using the tape's moving speed as the "access data speed range." In other words, in the contact addressing scheme, the tape needs to move a relatively long distance within the "access data speed range," which takes a long time. Furthermore, the fact that the read / write head and the tape are always in contact is one of the factors limiting the maximum speed of the tape's movement.

[0108] The tape drive device IO scheduling scheme provided in this application embodiment ( Figure 3c Non-contact addressing in this context refers to a situation where, from the initial position of the read / write head until it reaches the access area of ​​the tape, there is a gap between the head and the tape (non-contact state). Once the head reaches the access area, it makes contact with the tape. The contact distance between the head and the tape is the length of the access area. In this non-contact addressing scheduling scheme, because of the gap between the head and the tape, the tape's movement speed is not limited by the contact state from the initial position until it reaches the access area. The tape's movement speed can be relatively high. When the head reaches the access area, data is accessed using the tape's movement speed as the "access data speed range." In other words, in the non-contact addressing scheduling scheme, the tape can move only the length of the access area within the "access data speed range," and for the rest of the time, it can move at a speed greater than the "access data speed range."

[0109] In summary, the I / O scheduling scheme for the tape drive provided in this application has a shorter contact length between the magnetic head and the tape, which helps reduce wear on the tape and extend the tape's lifespan. Furthermore, with a gap between the magnetic head and the tape, the tape's movement speed can be greater than when the head and tape are in contact, which helps shorten the head's seek time.

[0110] The belt does not need to slow down far in advance. Data access can be completed by controlling the belt speed to be within the "data access speed range" when the belt moves to the access area.

[0111] Figure 3c In the examples, the movement direction of the belts is the same, for example... Figure 3c From left to right, in other words, the read / write head does not need to turn around. In some scheduling schemes, the read / write head needs to turn around during the addressing process.

[0112] Figure 3d This is a schematic diagram of another IO scheduling scheme provided in an embodiment of this application. Figure 3d Zhongyu Figure 3c The difference is that during the head addressing process, the head needs to turn around.

[0113] and Figure 3c Similarly, the addressing method typically provided by the technology is contact addressing. The scheduling scheme for contact addressing is as follows: from the initial position of the read / write head until the head reaches the access area of ​​the tape and accesses data, the read / write head and the tape are in contact. From the initial position of the read / write head until it reaches the access area of ​​the tape, the tape moves a certain distance at a relatively high speed. When it is necessary to turn around, the tape slows down in advance to within the "access data speed range" to determine the address, and then slows down to 0. After the read / write head turns around, the tape accelerates to within the "access data speed range" to reach the access area and access the data.

[0114] The aforementioned "head reversal" refers to the process of switching from a position where the tape moves relative to the read / write head in one direction to a position where the tape moves relative to the read / write head in the opposite direction. For example, Figure 3c In the middle, the tape moves from left to right relative to the read / write head, then switches to the tape moving from right to left relative to the read / write head.

[0115] The tape drive device IO scheduling scheme provided in this application embodiment ( Figure 3d The non-contact addressing in the process is as follows: Since the sensor module can obtain the moving distance of the belt, the belt moves at a high speed to the vicinity of the target distance range and then slows down to 0. After the magnetic head turns around, the belt accelerates to the "access data speed range" to reach the access area and access the data.

[0116] same, Figure 3d The shorter contact length between the non-contact addressing head and the tape reduces wear on the tape and extends its lifespan. Since the sensor module acquires the tape's travel distance, the head doesn't need to determine if it's near the access area; it can select a position to slow down until the head turns around based on the travel distance acquired by the sensor module. For the same travel distance, the non-contact addressing IO scheduling scheme provided in this application takes less time.

[0117] Figure 3eThis is a schematic diagram of another IO scheduling scheme provided in an embodiment of this application. Figure 3e This is short-distance addressing, meaning the distance from the initial position of the read / write head to the access area is relatively short. In short-distance addressing, if the read / write head is too close to the access area, the tape cannot increase its speed to the "access data speed range" when the head reaches the access area. The tape needs to reverse its movement to increase the distance before accessing the data.

[0118] and Figure 3d Similarly, the addressing method provided by the technology is usually contact addressing. The scheduling scheme of contact addressing is that from the initial position of the magnetic head to the time when the magnetic head reaches the access area of ​​the tape and accesses the data, the magnetic head and the tape are in contact.

[0119] Figure 3e In contact addressing (1), the read / write head may lose its initial address information due to anomalies (such as power failure). The tape movement speed needs to be within the "data access speed range" to obtain the head's position information. When the tape needs to increase its speed to the "data access speed range", the read / write head has already missed the initial address of the access area. Therefore, the read / write head needs to turn around twice to access the data.

[0120] Figure 3e In contact addressing (2), the read / write head knows the address information of its initial position. During the head turning around, the reverse movement speed of the tape needs to be within the "access data speed range" to obtain the address, thereby determining whether the head can turn around. During this process, the reverse movement distance of the tape is usually quite far. The time it takes for the head to reach the access area after turning around is relatively long.

[0121] Figure 3e In contact addressing (3), the read / write head knows the address information of its initial position. After the tape moves in the reverse direction, it can be determined whether the read / write head can turn around by estimation (e.g., estimating the time of reverse movement). In this estimation process, the distance of reverse movement of the tape is usually far. The time for the read / write head to reach the access area after turning around is relatively long.

[0122] The tape drive device IO scheduling scheme provided in this application embodiment ( Figure 3e In non-contact addressing: Since the sensor module can obtain the distance the tape moves, the distance the tape moves in the reverse direction can also be obtained through the sensor module. The reverse movement distance of the tape can be relatively short, and the time it takes for the read / write head to reach the access area after turning around is also short. This can reduce read / write latency.

[0123] In other words, Figure 3e Even if the tape is not within the "access data speed range", during the addressing process, the magnetic head can be controlled to turn around at the exact position based on the tape movement distance obtained by the sensor module, so as to avoid the tape moving too far in the opposite direction and increasing the access time.

[0124] Figure 3e In both contact and non-contact addressing schemes, the time difference between the tape's movement speed from 0 to the "access data speed range" and the difference in the tape's movement distance are relatively small. In other words, after the read / write head turns around, the distance the tape moves from 0 to the "access data speed range" can be considered the same. In non-contact addressing schemes, the time for the read / write head to turn around is shorter, and the distance from the turnaround point to the access area is also shorter, reducing access latency.

[0125] Figure 3f This is a schematic diagram of another IO scheduling scheme provided in an embodiment of this application. Figure 3f This is for batch I / O access. It occurs when a batch of I / O read / write requests are received.

[0126] In typical contact addressing schemes, the tape speed cannot deviate from the "data access speed range" in order to obtain the address of the access area, resulting in significant read / write latency. Therefore, to avoid prolonged access times, the access order of access areas 1, 2, 3, and 4 is limited.

[0127] In the I / O scheduling scheme (non-contact addressing) for the tape drive device provided in this application embodiment, the sensor module can obtain the movement distance of the tape, and the addresses of access area 1, access area 2, access area 3, and access area 4 can be obtained through the movement distance. To reduce latency, an I / O scheduling scheme with optimal read / write latency or optimal combination of one or more metrics can be selected.

[0128] Understandably, the aforementioned Figure 3c , Figure 3d , Figure 3e as well as Figure 3f The examples provided are only partial IO scheduling schemes and are not intended to limit the tape drive devices provided in this application to the aforementioned IO scheduling schemes.

[0129] As described above, the magnetic head 240 is slidably connected to the base 210. This application embodiment does not limit the manner in which the magnetic head 240 and the base 210 are slidably connected. For example, the magnetic head 240 and the base 210 can be slidably connected via a slide rail, slider, or groove. This application embodiment uses... Figure 4a and Figure 4b The following example will be used to illustrate the point.

[0130] Figure 4a This is a schematic diagram of a connection structure between the magnetic head 240 and the base 210 provided in an embodiment of this application. Please refer to... Figure 4a In the first state, the magnetic head 240 is in contact with the tape 220. In the second state, there is a gap between the magnetic head 240 and the tape 220, with a gap width of H.

[0131] Figure 4a In this design, the magnetic head 240 includes a support 241, a motor 243, and a read / write head 242. The motor 243 drives the magnetic head 240 to move, enabling the read / write head 242 to access data on the tape 220, such as writing data to or reading data from the tape 220. The support 241 is connected to the base 210. The motor 243 is mounted on the support 241.

[0132] Optionally, the read / write head 242 includes a write head, a read head, and a write head. The read head is located between the two write heads. During the data writing process, the magnetic tape slides from left to right. The left-hand write head magnetizes the storage location of the data to be written on the magnetic tape, thereby changing the magnetic field of the magnetic medium (such as magnetic powder) at that storage location, and thus storing the data to be written at that storage location. The read head senses the magnetic field at that storage location, thereby rereading and verifying the data written to the magnetic tape by the write head to ensure the accuracy of the written data.

[0133] The bracket 241 is provided with a slide rail 245, and the read / write head 242 and the bracket 241 are slidably connected via the slide rail. This allows the read / write head 242 to move closer to or further away from the tape body 220.

[0134] Exemplarily, the tape drive device 200 may also include a driver 244. Both the read / write head 242 and the support 241 are connected to the driver 244. When the driver 244 outputs power, it moves the read / write head 242 closer to or further away from the tape body 220, causing the tape drive device 200 to switch between a first state and a second state.

[0135] This application does not limit the type of the actuator 244. For example, the actuator 244 may include a linear motor, a hydraulic cylinder, or a pneumatic cylinder.

[0136] As described above, the controller instructs the magnetic head 240 to slide relative to the base 210 based on the distance traveled by the tape 220. Exemplarily, the controller 250 will send control commands (such as...) Figure 3b (As shown) The control command is sent to the driver 244. The driver 244 is configured to receive the control command and output power according to the control command to drive the magnetic head 240 to slide relative to the base 210.

[0137] Figure 4b This is a schematic diagram of another connection structure between the magnetic head 240 and the base 210 provided in an embodiment of this application. Figure 4b In the middle, the bracket 241 and the base 210 are slidably connected.

[0138] For example, a slide rail is mounted on the base 210, and the bracket 241 is slidably connected to the base 210 via the slide rail. After the driver 244 outputs power, the entire magnetic head 240 (e.g., bracket 241, motor 243, and read / write head 242) moves relative to the base 210. Similarly, a slidable connection between the magnetic head 240 and the base 210 can also be achieved.

[0139] For example, the bracket 241 and the base 210 are slidably connected. The entire magnetic head 240 (e.g., bracket 241, motor 243, and read / write head 242) slides together relative to the base 210.

[0140] In the embodiments of this application, the sensor module 230 has various types, and correspondingly, there are also various methods for obtaining the movement distance of the belt. Exemplary examples are described below.

[0141] Figure 5a This is a schematic diagram of the structure of a sensor module 230 and a strip 220 provided in an embodiment of this application. Please refer to... Figure 5a The tape drive device 200 may further include a drum 260. The drum 260 and the base 210 are rotatably connected, and the tape body 220 is wound on the drum 260. The sensor module 230 includes a Hall encoder or a photoelectric encoder; the Hall encoder or photoelectric encoder is sleeved on the drum 260.

[0142] The photoelectric encoder can convert the mechanical geometric displacement on the drum 260 into pulses or digital signals through photoelectric conversion, and transmit these pulses or digital signals to the controller. The sensor module 230 can acquire the movement distance of the belt 220 wound on the drum 260. Similarly, the Hall encoder can measure the movement distance of the belt 220 wound on the drum 260.

[0143] Figure 5b This is a schematic diagram of the structure of a roll 260 and a belt 220 provided for an embodiment of this application. Please refer to... Figure 5b The reel 260 includes a reel 263, a first cover plate 261, and a second cover plate 262. The reel 263 and the base 210 are rotatably connected. The belt 220 is located between the first cover plate 261 and the second cover plate 262. The first cover plate 261 and the second cover plate 262 can constrain the belt 220 and prevent the belt 220 from detaching from the reel 263. During the rotation of the reel 263, the first cover plate 261 and the second cover plate 262 rotate synchronously. Exemplarily, a Hall encoder or a photoelectric encoder is connected to the reel 263.

[0144] The first cover plate 261 can be as follows: Figure 5b The circular plate-like structure shown can have a second cover plate 262 as follows: Figure 5b The circular plate-like structure shown.

[0145] The embodiments of this application do not limit the shape of the first cover plate 261 and the second cover plate 262. For example, the first cover plate 261 can be a circular, square, elliptical, or irregularly shaped plate. Similarly, the second cover plate 262 can be a circular, square, elliptical, or irregularly shaped plate. The shape of the first cover plate 261 can be the same as or different from the shape of the second cover plate 262.

[0146] For example, the connection between the first cover plate 261 and the roll 263 can be achieved by welding, snap-fitting, or bonding. Similarly, the connection between the second cover plate 262 and the roll 263 can be achieved by welding, snap-fitting, or bonding.

[0147] Please return Figure 3a The tape drive device 200 includes two drums 260. The first end of the tape body 220 is wound on one drum 260, and the second end of the tape body 220 is wound on the other drum 260. A Hall encoder or photoelectric encoder can be mounted on either drum 260.

[0148] Figure 6 This is a schematic diagram of another sensor module 230 and strip 220 provided in an embodiment of this application. Please refer to... Figure 6 The sensor module 230 includes an angle sensor for determining the moving distance of the belt 220 based on the rotation angle of the drum 260.

[0149] Because the belt 220 is wound on the drum 260, and the radius of the drum 260 is a fixed value, for every 360° rotation of the drum 260, the belt 220 wound on the drum 260 increases (or decreases) by one turn, and the radius of the belt 220 wound on the drum 260 also increases (or decreases) accordingly. Thus, the angle sensor can determine the radius of the belt 220 wound on the drum 260 based on the rotation angle of the drum 260 and the thickness of a single layer of belt 220. Furthermore, during the movement of the belt 220, the drum 260 and the belt 220 move synchronously; therefore, detecting the rotation angle of the drum 260 can obtain the rotation angle of the belt 220, and the distance traveled by the belt 220 can be determined based on the radian corresponding to the rotation angle and the radius of the belt 220.

[0150] Figure 6 In the example, the angle sensor detects that the rotation angle of the drum 260 is β, and the rotation angle of the belt 220 is also β. The moving distance of the belt 220 can be determined by multiplying the radian corresponding to the angle β by the radius of the belt 220.

[0151] The tape drive device 200 includes two reels 260 (e.g., Figure 3aIn the embodiment shown, the angle sensor can detect the rotation angle of either of the two drums 260 and determine the moving distance of the belt body 220 based on the angle information.

[0152] Figure 7 This is a schematic diagram of another sensor module 230 and strip 220 provided in an embodiment of this application. Please refer to... Figure 7 The sensor module 230 includes a thickness sensor. The thickness sensor is used to determine the movement distance of the tape 220 based on the thickness of the tape wound on the spool 260.

[0153] During movement, the thickness of the belt 220 wound on the drum 260 may increase or decrease. The total thickness of the belt 220 wound on the drum 260 is equal to the product of the thickness m of a single layer of belt 220 and the number of turns of belt 220. The travel distance of the belt 220 can be determined based on the difference in thickness of the belt 220 wound on the drum 260, the radius of the belt 220 wound on the drum 260, and the thickness m of a single layer of belt 220.

[0154] For example, Figure 7 In the first state, the thickness sensor measures the thickness of the tape 220 wound on the drum 260 as d1. In the second state, the thickness sensor measures the thickness of the tape 220 wound on the drum 260 as d2. Since d2 is greater than d1, when the tape 220 is adjusted from the first state to the second state, the thickness of the tape 220 on the drum 260 increases, and the moving distance of the tape 220 gradually increases. Conversely, when the tape 220 is adjusted from the second state to the first state, the thickness of the tape 220 on the drum 260 decreases, and the moving distance of the tape 220 gradually increases.

[0155] In this way, the movement distance of the tape 220 can also be obtained. The controller instructs the magnetic head to slide relative to the base based on this movement distance.

[0156] and Figure 6 Similarly, in the example, the tape drive device 200 includes two reels 260 (such as...). Figure 3a In the embodiment shown, the thickness sensor can detect the thickness information of the belt 220 on either of the two spools 260. The moving distance of the belt 220 is determined based on this thickness information.

[0157] The foregoing Figure 5a , Figure 6 and Figure 7 The travel distance of the belt 220 is determined by acquiring information from the roll 260. In some embodiments of this application, the sensor module can acquire information from the belt 220 to determine the travel distance of the belt 220. The following is in conjunction with... Figures 8 to 13 An example is provided.

[0158] Figure 8 A schematic diagram of another sensor module 230 and strip 220 provided for embodiments of this application. Please refer to... Figure 8 The sensor module 230 includes an encoding strip 231 and a detection component 232. The encoding strip 231 is connected to the tape body 220. The encoding strip 231 includes multiple strips 231, each strip recording one code. Therefore, the encoding strip 231 records multiple codes. The detection component 232 is used to determine the movement distance of the tape body based on the codes recorded by at least two of the multiple strips.

[0159] In some embodiments of this application, the coding strip 231 is spliced ​​with the strip body 220. For example, Figure 8 In this configuration, the coding strip 231 is connected to one side of the tape body 220 along its width. The coding strip 231 and the tape body 220 are distributed along the width direction of the tape body 220. For example, the coding strip 231 is connected to one side of the tape body 220 along its width direction via an adhesive layer.

[0160] In this way, the coding strip 233 does not occupy the space in the thickness direction of the strip body 220, avoiding the thickening of the strip body 220 due to the setting of the coding strip 233. Moreover, the length of the coding strip 233 can be the same as the length of the strip body 220, which allows for a larger space in the equipment strip 231.

[0161] Figure 9 This is a schematic diagram of another sensor module 230 and a strip 220 provided in an embodiment of this application. Figure 9 and Figure 8 The differences include the different connection methods of the strip 220 and the coding strip 233.

[0162] Figure 9 In the example, the tape body 220 includes a plurality of data areas 221 and at least one connection area 222. The data areas 221 are used to store data. The connection area does not store data. Two adjacent data areas 221 are connected by a connection area 222. In other words, along the length direction of the tape body 220, there is a connection area 222 between two adjacent data areas 221. Exemplarily, the data areas 221 and the connection area 222 are connected by an adhesive layer.

[0163] The coding strip 233 and the connecting area 222 are stacked along the thickness direction of the tape body 220. In other words, the coding strip 233 and the connecting area 222 are arranged along the thickness direction of the tape body 220. For example, the coding strip 233 and the connecting area 222 are connected by an adhesive layer.

[0164] Since the connection area does not store data, the setting of the encoding bar 233 has little impact on the data stored within the tape body 220. Furthermore, the setting of the encoding bar 233 does not require occupying space in the width direction of the tape body 220.

[0165] In some embodiments, the encoding strip 233 may be connected to the side of the connection area 222 facing the magnetic head. In some embodiments, the encoding strip 233 may also be connected to the side of the connection area 222 away from the magnetic head; this application embodiment does not limit this.

[0166] Figure 9 During the movement of the belt 220, the detection component 232 can identify the location of the connection area 222 based on the encoding of the strip record located in the connection area 222, and then determine the moving distance of the belt 220 based on the location of the connection area 222.

[0167] The embodiments of this application do not limit the number of connection regions 222 in the strip 220. For example, the number of connection regions 222 can be one, two, three or more.

[0168] In summary Figure 8 and Figure 9 As can be seen from the provided embodiments, the strip 231 is used to record the code, and the detection component 232 is used to acquire the code and determine the strip body based on the code. In the embodiments of this application, the strip 231 has various types, and correspondingly, the detection component 232 also has various types.

[0169] Figure 10 This is a schematic diagram illustrating the structure of a strip 231 and a detection component 232 provided in an embodiment of this application. Please refer to... Figure 10 The plurality of stripes 231 include a first stripe 201 and a second stripe 202. The first stripe 201 includes at least one first identifier 101 and at least one second identifier 102. The arrangement order of the identifiers in the first stripe 201 indicates a first code. The second stripe 202 includes at least one first identifier 101 and at least one second identifier 102. The arrangement order of the identifiers in the second stripe 202 indicates a second code. The arrangement order of the identifiers in the first stripe 201 and the second stripe 202 is different.

[0170] The aforementioned "arrangement order of the markings in the first strip 201" refers to the arrangement order of the first markings 101 and the second markings 102 in the first strip 201 along one direction. For example, if this first direction is along the width of the strip 220, the arrangement order of "first markings 101, second markings 102, first markings 101" is different from the arrangement order of "first markings 101, first markings 101, second markings 102". The arrangement order of the markings in the second strip 202 is similar.

[0171] Thus, the detection component 232 identifies the first identification part 101 and the second identification part 102, and then determines the first code and the second code by the arrangement order of the first identification part 101 and the second identification part 102, so as to determine the moving distance of the belt.

[0172] In the embodiments of this application, the number of first identifier portions 101 and second identifier portions 102 in each strip is not limited. For example, the number of first identifier portions 101 can be one, two, three, four, or more. The number of second identifier portions 102 can be one, two, three, four, or more. It is understood that the more first identifier portions 101 and second identifier portions 102 there are, the more possible arrangements of the identifier portions in the strip. The more types of encoding are also possible across multiple stripes.

[0173] Similar to the first strip 201 and the second strip 202, the multiple strips 231 may also include a third strip 203. The arrangement order of the markings in the third strip 203, the arrangement order of the markings in the first strip 201, and the arrangement order of the markings in the second strip 202 are all different from each other, and so on. This will not be elaborated further here.

[0174] It is understood that in some embodiments of this application, at least one strip of the plurality of strips 231 may not include the first identifier 101. For example, all identifiers in the at least one strip may be the second identifier, and the strip may also record encoding. Similarly, at least one strip of the plurality of strips 231 may not include the second identifier 102. For example, all identifiers may be the first identifier.

[0175] For example, the encoding of multiple stripes 231 can be absolute encoding or relative encoding, and this application embodiment does not limit this.

[0176] The first identification portion 101 and the second identification portion 102 have at least one different performance characteristic. The detection component 232 is used to detect this performance characteristic to identify the first identification portion 101 and the second identification portion 102. In some embodiments, the first identification portion 101 and the second identification portion 102 have different optical properties.

[0177] Figure 11a This is a schematic diagram of another strip 231 and detection component 232 provided in an embodiment of this application. Figure 11a In the first marking part 101, the light-transmitting part is a light-transmitting part, and the second marking part 102 is a light-absorbing part or a light-reflecting part. The detection component 232 includes a laser emitter 2321 and a laser receiver 2322. The laser emitter 2321 is used to emit light signals, and the laser receiver 2322 is used to receive light signals.

[0178] For example, the laser emitter 2321 and the laser receiver 2322 are located on opposite sides of the strip 231. For instance, the laser emitter 2321 is located on... Figure 11a The laser receiver 2322 is located on the upper side of the middle. Figure 11a The lower side of the middle.

[0179] The light signal emitted by the laser emitter 2321 can be received by the laser receiver 2322 through the first marking part 101 (light-transmitting part). The light signal emitted by the laser emitter 2321 is absorbed or reflected by the second marking part 102 (light-absorbing part) and is not received by the laser receiver 2322.

[0180] For example, the encoding type can be binary encoding, cyclic code, or two's complement, etc. For example, the laser receiver 2322 records the received optical signal as signal "0" and outputs it. For example, the laser receiver 2322 records the unreceived optical signal as signal "1" and outputs it. The detection component 232 determines the encoding according to the order of 0s and 1s.

[0181] When the arrangement order of the markings in the first strip 201 and the second strip 202 is different, the signals output by the laser receiver 2322 are different. Then, the detection component 232 can identify the first code recorded in the first strip and the second code recorded in the second strip.

[0182] For example, the structure of the light-transmitting part can be a transparent adhesive layer. The structure of the light-absorbing part can be a black film layer. The structure of the reflective part can be a reflective film. The embodiments of this application do not limit this.

[0183] Figure 11b This is a schematic diagram of another strip 231 and detection component 232 provided in an embodiment of this application. Figure 11b In the middle, the first marking part 101 is a light-transmitting part, and the second marking part 102 is a reflective part. Figure 11b and Figure 11a The difference lies in the fact that the laser emitter 2321 and the laser receiver 2322 are located on the same side of the strip 231. For example, both are located on... Figure 11b The upper side of the middle.

[0184] The light signal emitted by the laser emitter 2321 is reflected by the second marking part 102 and then received by the laser receiver 2322. The light signal emitted by the laser emitter 2321 is not received by the laser receiver 2322 after passing through the first marking part 101 (light-transmitting part).

[0185] same, Figure 11b The detection component 232 can identify the arrangement order of the identifiers in the first and second strips, thereby identifying the first code recorded in the first strip and the second code recorded in the second strip.

[0186] In some embodiments, the detection component 232 may include two laser receivers 2322, one located on the same side of the strip 231 as the laser emitter 2321. The other laser receiver 2322 (shown as a dashed line in the figure) is located on opposite sides of the strip 231 as the laser emitter 2321. This other laser receiver 2322 is used to receive light signals transmitted through the light-transmitting portion. In this way, the two laser receivers 2322 jointly acquire the arrangement order of the marking portions, which can improve accuracy.

[0187] It is understood that in other embodiments, the detection component 232 may include either of two laser receivers 2322.

[0188] Figure 11c This is a schematic diagram of another strip 231 and detection component 232 provided in an embodiment of this application. Figure 11c In the strip 231, the first marking part 101 is a reflective part, and the second marking part 102 is a light-absorbing part. The laser emitter 2321 and the laser receiver 2322 are located on the same side of the strip 231.

[0189] The light signal emitted by the laser emitter 2321 is reflected by the first identifier 101 and then received by the laser receiver 2322. The light signal emitted by the laser emitter 2321 is absorbed by the second identifier 102 and is not received by the laser receiver 2322.

[0190] same, Figure 11c The detection component 232 can identify the arrangement order of the identifiers in the first and second strips, thereby identifying the first code recorded in the first strip and the second code recorded in the second strip.

[0191] Figure 11a , Figure 11b as well as Figure 11c The examples shown are only some examples of the first identifier 101 and the second identifier 102 with different light properties. In some embodiments, the first identifier 101 and the second identifier 102 may be other identifiers with different light properties.

[0192] For example, the first marking portion 101 and the second marking portion 102 have different light transmittance. The detection component 232 identifies the first marking portion 101 and the second marking portion 102 by detecting the light transmittance. In embodiments where the strip includes a third marking portion, the light transmittance of the third marking portion, the first marking portion 101, and the second marking portion 102 may all be different. And so on. Alternatively, the first marking portion 101 and the second marking portion 102 have different reflectivity. The detection component 232 identifies the first marking portion 101 and the second marking portion 102 by detecting the reflectivity. Alternatively, the polarization properties of the first marking portion 101 and the second marking portion 102 are different. The detection component 232 identifies the first marking portion 101 and the second marking portion 102 by detecting the polarization properties of the light transmitted through the first marking portion 101 and the second marking portion 102.

[0193] In some embodiments, the capacitance values ​​of the first marking portion 101 and the second marking portion 102 are different. The detection component 232 identifies the first marking portion 101 and the second marking portion 102 by detecting the capacitance values ​​of the first marking portion 101 and the second marking portion 102, and then obtains an encoding according to the arrangement order of the first marking portion 101 and the second marking portion 102, and determines the movement distance of the belt according to the encoding.

[0194] Figure 12 This is a schematic diagram of the structure of a sensor module 230 provided in an embodiment of this application. Figure 12 and Figure 11a The difference lies in the different structures of the first marking part 101 and the second marking part 102.

[0195] Figure 12 In this design, both the first marking portion 101 and the second marking portion 102 are metal layers, and the first marking portion 101 and the second marking portion 102 are arranged at intervals. The capacitance values ​​of the first marking portion 101 and the second marking portion 102 are different. For example, the capacitance value of the first marking portion 101 is a first value, and the capacitance value of the second marking portion 102 is a second value.

[0196] The embodiments of this application do not limit the material of the metal layer, and it can be at least one of titanium and its alloys, aluminum and its alloys, copper and its alloys, and iron and its alloys. The embodiments of this application do not limit the shape of the metal layer, and it can be square, circular, elliptical, or irregular in shape.

[0197] In some embodiments, the sensor module 230 may further include a base film 235, which is connected to the strip 220. Metal is disposed on the base film, and the base film 235 can support the metal layer and prevent it from detaching.

[0198] For example, the materials of the first marking portion 101 and the second marking portion 102 may be different, so that the capacitance values ​​of the first marking portion 101 and the second marking portion 102 are different. Alternatively, the materials of the first marking portion 101 and the second marking portion 102 may be the same, but their areas may be different, so that the capacitance values ​​of the first marking portion 101 and the second marking portion 102 are different.

[0199] The detection component 232 includes a capacitance sensor for detecting the capacitance values ​​of the first identifier 101 and the second identifier 102. This allows the acquisition of a code indicated by the arrangement order of the first identifier 101 and the second identifier 102. The detection component 232 determines the movement distance of the strip based on the codes recorded by at least two strips.

[0200] In other embodiments, where both the first marking portion 101 and the second marking portion 102 include a metal layer, the first marking portion 101 and the second marking portion 102 may also be configured to have different resistance values. The detection component 232 includes a resistance sensor for detecting the resistance values ​​of the first marking portion 101 and the second marking portion 102, and can also determine the movement distance of the strip body based on the encoding of at least two strip records.

[0201] In some embodiments of this application, the encoding may be indicated independently of the order of the first identifier 101 and the second identifier 102. For example, as... Figure 13 As shown, the strip 231 can be set with an image, and the detection component determines the moving distance of the strip body 220 based on the encoding of the strip record in the image recognition.

[0202] Figure 13 This is a schematic diagram of the structure of another sensor module 230 provided in an embodiment of this application. Figure 13 and Figure 11a The difference lies in the different structure of strip 231.

[0203] Figure 13 In this configuration, strip 231 includes an image layer, and detection component 232 includes an image sensor. The image sensor is used to acquire an image of strip 231. Strip 231, including the image layer, records encoding. One strip 231 sets one image layer.

[0204] The detection component 232 includes an image sensor for acquiring images of the strip 231. The detection component 232 determines the movement distance of the strip body based on the encoding recorded in the image layers of at least two strips.

[0205] The embodiments of this application do not limit the formation method of the image layer. For example, the image layer can be formed by printing, coating or etching processes.

[0206] This application does not limit the type of image layer in its embodiments. Figure 13Several image layer types are illustrated. Accordingly, the image sensor can be selected based on the type of image layer.

[0207] Example 1: The image layer includes QR codes. Each bar (231) indicates one code. Each QR code indicates one code. Multiple QR codes are set within the code bar.

[0208] In an embodiment where the encoding of the code bar is absolute, the multiple QR codes are all different. In an embodiment where the encoding of the code bar is relative, the multiple QR codes can be viewed as multiple groups of QR codes, each group containing multiple QR codes, and the QR codes in each group are not the same.

[0209] Example 2: The image layer includes barcodes, with each barcode indicating a code. For further details, refer to the description of Example 1, where the image layer includes QR codes, which will not be repeated here.

[0210] Example 3: The image layer includes a radio frequency identification (RFID) code. For further details, refer to the description of Example 1, where the image layer includes a QR code, which will not be repeated here. The image sensor can be an RFID reader.

[0211] Example 4: The image layer includes text labels, each containing multiple characters, with each character indicating a code. This application does not limit the characters used in the text labels. Text labels can be, for example, Arabic numerals, Roman numerals, Chinese characters, English characters, Japanese characters, Korean characters, Greek letters, etc.

[0212] Figure 13 In Example 4, the text labels are Arabic numerals, where "1" indicates one code, "2" indicates another code, "3" indicates yet another code, and so on. The other text labels are similar, and will not be elaborated here.

[0213] Example 5: The image layer includes multiple patterns. Each pattern indicates a code. This application embodiment does not limit the style of the patterns; for example, they can be landscape patterns, animal patterns, human figures, etc.

[0214] In some embodiments of this application, the image layer may include a combination of two or more of the foregoing Examples 1, 2, 3, 4, and 5. For example, the image layer may include a combination of the QR code of Example 1 and the barcode of Example 2.

[0215] Figure 13 The example illustrates five types of image layers. It is understandable that image layers can also include other types of images.

[0216] It is understood that in other embodiments of this application, the sensor module is not limited to the above-described method for obtaining the indication of the movement distance of the belt, and other methods may also be used to obtain it.

[0217] This application also provides a storage system. The storage system includes: a communication interface, a storage controller, and the magnetic tape drive device provided in any of the foregoing embodiments. The magnetic tape drive device is used to store data, the communication interface is used to receive data access requests, and the storage controller is used to manage target storage devices in the storage system according to the data access requests. The storage system may be, for example, a magnetic tape drive device, or a computer / server that includes a magnetic tape drive device as a persistent storage medium.

[0218] The storage controller includes one or more processors, which can be a very large-scale integrated circuit. The processor contains an operating system and other software programs, enabling it to access tape drives and various PCIe devices. The processor includes one or more processor cores. These cores can be, for example, a central processing unit (CPU) or other ASICs. The processor can also be other general-purpose processors, DSPs, ASICs, FPGAs, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. In practical applications, the storage system may also include multiple controllers.

[0219] Optionally, the storage system may also include, but is not limited to, other storage media: dynamic random access memory (DRAM), static random access memory (SRAM), etc., for caching data from the tape drive for processor processing. Additionally, other storage media may be read-only memory (ROM). For example, read-only memory may be programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), etc. This embodiment does not limit the number or type of other storage media. Furthermore, other storage media can be configured to have power-saving functionality. Power-saving functionality means that when the system experiences a power outage and is then powered on again, the data stored in the memory will not be lost. Storage media with power-saving functionality are called non-volatile memory.

[0220] The other storage media mentioned above can be used to store indexes of data stored on magnetic tape, such as data metadata, data logical addresses, hash values ​​obtained by calculating the logical addresses of data, or data pointers, etc.

[0221] In the description of this specification, specific features, structures, materials, or characteristics may be combined in any suitable manner in one or more embodiments or examples.

[0222] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. A tape drive apparatus, characterized by, The magnetic tape device comprises: a base; a tape body arranged on the base and configured to store data; a sensor module configured to obtain a moving distance of the tape body; a magnetic head slidingly connected to the base; and a controller configured to indicate the magnetic head to slide relative to the base according to the moving distance. When the moving distance is outside a target distance interval, the magnetic head has a gap from the tape body. When the moving distance is within the target distance interval, the magnetic head contacts the tape body and accesses data in the tape body.

2. The magnetic tape device of claim 1, wherein: when the moving distance is outside the target distance interval, a maximum value of a moving speed of the tape body is a first value; when the moving distance is within the target distance interval, the maximum value of the moving speed of the tape body is a second value; and the second value is less than the first value.

3. The tape drive apparatus of claim 1 or 2, wherein, The controller is further configured to: determine an IO scheduling scheme according to the moving distance; and the target index comprises one or a combination of the following: access latency, access bandwidth, moving distance of the tape body, and wear of the tape body.

4. The tape drive apparatus of any of claims 1-3, wherein, The magnetic tape device further comprises a slide rail, and the magnetic head slidingly connected to the base comprises that the magnetic head is slidingly connected to the base through the slide rail.

5. The tape drive apparatus of any of claims 1-4, wherein, The sensor module comprises an encoding strip and a detection assembly. The encoding strip is connected to the tape body, and the encoding strip comprises a plurality of strips, one strip being configured to record one encoding. The detection assembly is configured to determine the moving distance according to encodings recorded by at least two strips of the plurality of strips.

6. The tape drive apparatus of claim 5, wherein, The plurality of strips comprises a first strip and a second strip. The first strip comprises at least one first identification part and at least one second identification part, and an arrangement order of the identification parts in the first strip indicates a first encoding. The second strip comprises at least one first identification part and at least one second identification part, and an arrangement order of the identification parts in the second strip indicates a second encoding. The arrangement order of the identification parts in the first strip is different from the arrangement order of the identification parts in the second strip. The detection assembly is configured to determine the moving distance according to the second encoding and the first encoding.

7. The magnetic tape device of claim 6, wherein: the first identification part is a light-transmitting part, and the second identification part is a light-absorbing part or a light-reflecting part; or, the first identification part is a light-reflecting part, and the second identification part is a light-absorbing part.

8. The tape drive apparatus of claim 6, wherein, The first identification part and the second identification part have different capacitance values.

9. The tape drive apparatus of claim 6, wherein, The strip comprises an image layer, and the detection assembly comprises an image sensor configured to obtain an image of the strip.

10. The tape drive apparatus of claim 9, wherein, The image layer comprises one or a combination of the following: a two-dimensional code, a radio frequency identification code, a bar code, or a character label.

11. The tape drive apparatus of any of claims 5-10, wherein, The encoding strip is connected to one side of the tape body along a width direction.

12. The tape drive apparatus of any of claims 5-10, wherein, The tape body comprises a plurality of data areas configured to store data and at least one connection area configured not to store data, and two adjacent data areas are connected through one connection area; and the encoding strip is arranged in a stacking manner with the connection area along a thickness direction of the tape body.

13. The tape drive apparatus of any one of claims 1-4, wherein, The tape drive device further comprises a reel connected with the base, and the tape is wound on the reel. The sensor module comprises an angle sensor configured to determine the moving distance according to an angle of rotation of the reel.

14. The tape drive apparatus of any one of claims 1-4, wherein, The tape drive device further comprises a reel connected with the base, and the tape is wound on the reel. The sensor module comprises a thickness sensor configured to determine the moving distance according to a thickness of the tape wound on the reel.

15. The tape drive apparatus of any one of claims 1-4, wherein, The tape drive device further comprises a reel, and the tape is wound on the reel; the sensor module comprises a Hall encoder or an optical encoder; and the Hall encoder or the optical encoder is sleeved on the reel.

16. The tape drive apparatus of any one of claims 1-15, wherein, The tape drive device further comprises a driver configured to drive the magnetic head to slide relative to the base. The controller is configured to instruct the driver to drive the magnetic head to slide relative to the base according to the moving distance.

17. A storage system, characterized by The storage system comprises a tape controller and one or more tape drive devices according to any one of claims 1-16; and the tape controller is configured to manage the tape drive devices according to a data access request.

18. A controller characterized by comprising: The application is applied to a tape drive device, which comprises a base, a magnetic head, and a tape for storing data; the tape is arranged on the base, and the magnetic head is slidably connected with the base; and the controller comprises: a communication interface configured to receive a moving distance of the tape; a processor configured to send a control instruction according to the moving distance; the control instruction is configured to instruct the magnetic head to slide relative to the base; when the moving distance is outside a target distance interval, the control instruction instructs that there is a gap between the magnetic head and the tape; when the moving distance is within the target distance interval, the control instruction instructs that the magnetic head contacts the tape and accesses data in the tape.

19. The controller of claim 18, wherein, the control instruction is further configured to instruct a moving speed of the tape; when the moving distance is outside the target distance interval, a maximum value of the moving speed of the tape is a first value; when the moving distance is within the target distance interval, a maximum value of the moving speed of the tape is a second value; and the second value is less than the first value.

20. A controller according to claim 18 or 19, wherein, The processor is specifically configured to: determine an IO scheduling scheme of target index management according to the moving distance; and the target index comprises one or a combination of the following: access latency, access bandwidth, moving distance of the tape, and wear of the tape.