Data writing method and device for mechanical hard disk and computing device

CN115586866BActive Publication Date: 2026-09-18ALIBABA (CHINA) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211104719.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-09
Publication Date
2026-09-18
Estimated Expiration
2042-09-09

AI Technical Summary

Technical Problem

然而,SMR HDD的同一个zone内部的任何数据修改、更新,需将整个zone的数据读出,以zone为单位进行数据修改和更新,会造成读放大、写放大以及功耗增加,灵活性较差,而且不利于进行数据回收

Benefits of technology

[0014] The data writing method, apparatus, and computing device for mechanical hard disks provided in this application embodiment determine multiple storage objects from the data to be stored, and write the multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance to realize data updates on a unit basis, thereby increasing storage density and achieving read and write operation independence between different storage objects. This suppresses the performance loss, power consumption, and data crosstalk caused by write amplification and read amplification. Moreover, by using storage objects as the granularity to utilize the physical space of the mechanical hard disk, the efficiency and flexibility of data processing are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115586866B_ABST
    Figure CN115586866B_ABST
Patent Text Reader

Abstract

The application provides a data writing method and device for a mechanical hard disk and a computing device, and relates to the technical field of data storage. The method comprises the following steps: determining a plurality of storage objects from to-be-stored data, and writing the plurality of storage objects into the mechanical hard disk in a magnetic tile stacking mode, wherein the plurality of storage objects are isolated by a spatial distance, so that data updating is implemented in units of storage objects, the independence of read-write operations between different storage objects is realized, the performance loss, power consumption overhead and data crosstalk caused by write amplification and read amplification are inhibited, and the efficiency and flexibility of data processing are improved by using the physical space of the mechanical hard disk as a granularity of storage objects.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data storage technology, and in particular to a data writing method, apparatus and computing device for mechanical hard disks. Background Technology

[0002] The information age has spurred an explosive growth in massive amounts of data, leading to a strong demand for data storage. Hard disk drives (HDDs) are widely used as data storage media.

[0003] Currently, the industry-leading and scalable hard disk drive (HDD) storage technology is Shingle Magnetic Recording (SMR). SMR HDDs introduce the concept of zones, dividing the HDD into multiple zones. Within a zone, adjacent tracks can overlap. Therefore, compared to conventional magnetic recording (SMR) HDDs, a single disk can have more tracks, thus increasing the amount of data stored per unit area. However, any data modification or update within the same zone of an SMR HDD requires reading the entire zone's data. Modifying and updating data zone by zone leads to increased read amplification, write amplification, and power consumption, resulting in poor flexibility and hindering data recovery. Summary of the Invention

[0004] This application provides a data writing method, apparatus, and computing device for a hard disk drive, which can achieve independent read and write operations between different storage objects, suppress the performance loss, power consumption and data crosstalk caused by write amplification and read amplification; moreover, it realizes the use of the physical space of the hard disk drive at the storage object level, improving the efficiency and flexibility of data processing.

[0005] In a first aspect, embodiments of this application provide a data writing method for a mechanical hard disk, applied to a computing device, the computing device including a mechanical hard disk, the method comprising:

[0006] Identify multiple storage objects from the data to be stored;

[0007] The multiple storage objects are written to the mechanical hard disk in a magnetic tile stacking manner, and the multiple storage objects are isolated by spatial distance to realize data updates on a unit basis.

[0008] Secondly, embodiments of this application provide a data writing device for a mechanical hard disk, comprising:

[0009] The determination module is used to determine multiple storage objects from the data to be stored;

[0010] The write module is used to write the multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance so as to realize data update on a unit basis according to the storage object.

[0011] Thirdly, embodiments of this application provide a computing device, including a hard disk drive and a driver as described in any of the above methods, wherein the driver executes any of the above methods.

[0012] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the method described in any of the above-mentioned embodiments.

[0013] Compared with the prior art, this application has the following advantages:

[0014] The data writing method, apparatus, and computing device for mechanical hard disks provided in this application embodiment determine multiple storage objects from the data to be stored, and write the multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance to realize data updates on a unit basis, thereby increasing storage density and achieving read and write operation independence between different storage objects. This suppresses the performance loss, power consumption, and data crosstalk caused by write amplification and read amplification. Moreover, by using storage objects as the granularity to utilize the physical space of the mechanical hard disk, the efficiency and flexibility of data processing are improved.

[0015] The above description is only an overview of the technical solution of this application. In order to better understand the technical means of this application, it can be implemented according to the contents of the specification. In order to make the above and other objects, features and advantages of this application more obvious and understandable, specific embodiments of this application are given below. Attached Figure Description

[0016] In the accompanying drawings, unless otherwise specified, the same reference numerals throughout the various drawings denote the same or similar parts or elements. These drawings are not necessarily drawn to scale. It should be understood that these drawings depict only some embodiments according to this application and should not be construed as limiting the scope of this application.

[0017] Figure 1 This is a schematic diagram of data storage using a mechanical hard disk in related technologies;

[0018] Figure 2 This is a flowchart of a data writing method for a mechanical hard disk according to an embodiment of this application;

[0019] Figure 3 This is a schematic diagram of a multi-disk mechanical hard disk according to an embodiment of this application;

[0020] Figure 4 This is a schematic diagram illustrating the independent storage of multiple storage objects according to an embodiment of this application;

[0021] Figure 5 This is a schematic diagram illustrating the independent storage of multiple data units according to an embodiment of this application;

[0022] Figure 6 This is a schematic diagram illustrating data updates of a storage object according to an embodiment of this application;

[0023] Figure 7 This is a structural block diagram of a data writing apparatus for a mechanical hard disk according to an embodiment of this application; and

[0024] Figure 8 This is a block diagram of an electronic device used to implement embodiments of this application. Detailed Implementation

[0025] In the following description, only certain exemplary embodiments are briefly described. As those skilled in the art will recognize, the described embodiments can be modified in various ways without departing from the concept or scope of this application. Therefore, the drawings and description are considered to be exemplary in nature and not restrictive.

[0026] To facilitate understanding of the technical solutions of the embodiments of this application, the relevant technologies of the embodiments of this application are described below. The following relevant technologies are optional solutions and can be combined with the technical solutions of the embodiments of this application in any way, and all of them fall within the protection scope of the embodiments of this application.

[0027] For the massive amounts of data generated in the information age, apart from some hot data, most data does not have stringent requirements for access latency and throughput. Therefore, after comprehensively considering costs, hard disk drives (HDDs) are widely used as data storage media, and their capacity increase and inventory still lead that of solid-state drives (SSDs). How to further explore the potential of HDDs, increase storage density, reduce storage costs, improve stability, reduce power consumption, and reduce failure rates have become problems that need to be solved.

[0028] Among related technologies, SMR HDD is the HDD storage technology that can be applied on a large scale. This technology uses a magnetic tile stacking method to reduce the track spacing, thereby increasing storage density and reducing storage costs even when there is partial magnetization overlap in the storage bits. Figure 1 This is a schematic diagram illustrating data storage in traditional magnetic recording hard disk drives (HDDs) and tile magnetic recording hard disk drives (HDDs) in related technologies. For example... Figure 1As shown, in traditional magnetic recording hard disk drives (HDDs), data is stored in independent tracks. In tile-based HDDs, adjacent tracks within a zone overlap, and data is stored using a tile-stacking method. This tile-stacking method involves stacking multiple tracks that store data, allowing more data to be stored in the same amount of space. For example, in one embodiment, adjacent tracks are partially overlapped, similar to the arrangement of roof tiles, utilizing these overlapping tracks to store data. However, any modification or update to data within the same zone requires reading the entire zone's data, modifying or updating it, and then writing the entire zone's data back. Since a zone can contain a large amount of data (e.g., 256MB), reading and writing a relatively large amount of data to modify a small amount results in significant room for optimization in read amplification, write amplification, and power consumption. Furthermore, zones are fixed in size and independent, lacking configuration flexibility and the ability to schedule data between different zones. Data recycling in one zone requires copying the valid data within that zone to other zones. This copying process involves reading and writing a large amount of data. For HDD-type mechanical devices, this recycling operation has a significant impact on head occupancy and also increases power consumption.

[0029] To address the aforementioned issues, this embodiment controls the hard disk drive (HDD) to alter its data storage method. It removes the original isolation rings and fixed zone settings, writing multiple storage objects to the HDD in a tile-stacking manner, thus increasing storage density. Furthermore, spatial isolation between storage objects, with data written on a per-object basis, allows for flexible scheduling of data placement, isolation, updates, deletions, and necessary data reclamation. While increasing storage density, it also ensures independent read / write operations between different storage objects, suppressing performance losses, power consumption, and data crosstalk caused by write amplification and read amplification. Moreover, by utilizing the physical space of the HDD at the object-by-object level, it improves data processing efficiency and flexibility.

[0030] This application provides a data writing method for a mechanical hard disk. Figure 2 This is a flowchart of a data writing method for a mechanical hard disk according to an embodiment of this application. The method is applied to a computing device, which may be a server, user equipment, etc. The computing device includes a mechanical hard disk and a driver. The driver may include a driver stored externally to the mechanical hard disk and firmware stored internally to the mechanical hard disk. The method includes:

[0031] Step S201: Determine multiple storage objects from the data to be stored.

[0032] The computing device receives data to be stored and determines multiple storage objects based on the characteristic information of the objects to be stored within the data. These storage objects can be various types of objects to be stored, including at least one of the following: video, audio, images, logs, tables, files, etc. The characteristic information of the storage objects can include at least one of the following: the length of the binary string, compressibility, format, and repetition rate, etc.

[0033] Step S202: Write multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance to achieve data updates on a per-storage-object basis.

[0034] The magnetic tile stacking method involves stacking multiple tracks on a hard drive to store data, thereby allowing more data to be stored in the same storage space. For example, in one embodiment, adjacent tracks are partially overlapped, similar to the arrangement of roof tiles, and data is stored using the overlapping tracks. Optionally, multiple storage objects are written to the tracks of the hard drive sequentially according to the order in which the computing device receives the storage objects.

[0035] For any given storage object, its data is written to the tracks of the hard disk drive in a stacked manner. Multiple tracks storing the same storage object are overlapped, allowing for the storage of more data. Different storage objects are isolated by spatial distance, preventing data crosstalk between them. Data update operations, such as reading and deleting, are performed on a per-storage-object basis.

[0036] The storage area and isolation area of ​​the stored object can be irregularly configured, and their size and shape can be flexibly adjusted according to the stored object. The shape of the isolation area is not limited, as long as it can independently read the stored object and does not affect the stored objects in adjacent tracks, so as to avoid the influence of medium magnetization in adjacent spaces. Within the same stored object, in order to increase storage density and reduce costs, magnetic tiles can be stacked to reduce storage space occupation.

[0037] For example, Figure 3 This diagram illustrates a multi-platter hard drive where multiple parallel read / write heads move in unison to write data in a cylindrical pattern. A storage object distributes data evenly across the hard drive's platters and writes it to the corresponding sector of each platter.

[0038] The data writing method for a mechanical hard disk provided in this application embodiment determines multiple storage objects from the data to be stored and writes the multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance to realize data updates on a unit basis, thereby increasing storage density and achieving read and write operation independence between different storage objects. This suppresses the performance loss, power consumption, and data crosstalk caused by write amplification and read amplification. Moreover, by using storage objects as the granularity to utilize the physical space of the mechanical hard disk, the efficiency and flexibility of data processing are improved.

[0039] In one possible implementation, the spatial distance between multiple storage objects is achieved by controlling the write head of the hard disk drive to set the spatial distance between the write completion position of one storage object and the write start position of another storage object.

[0040] The stored objects can be unstructured data, and object storage offers users a natural user-friendliness and high efficiency. Isolation between different stored objects can be achieved by controlling the write head to pinpoint the completion and start positions of the write operation for each object. For example... Figure 4 As shown, the three graphics represent three storage objects. After converting the three storage objects into binary strings, they are stored sequentially on the hard disk in a magnetic tile stacking manner. Each storage object is written to a track, and the track written later covers the track written earlier. Each storage object is independent of the others and maintains a spatial distance.

[0041] In related technologies, SMR HDDs, as exhibited on media such as disks, are characterized by multiple regularly divided large-capacity zones (e.g., 256MB), separated by isolation rings. This setup is fixed and cannot be adjusted based on the storage objects; a single zone can hold thousands of storage objects. Updating any one storage object affects other storage objects in the same zone. When reading a storage object, to eliminate inter-track interference, it is also necessary to read other storage objects on adjacent tracks, increasing read latency and causing read interference. The data writing method in this embodiment achieves fine-grained writing / reading to a single storage object. The entire HDD can be considered as a whole, writing binary strings to storage objects as needed, maintaining spatial distance between different storage objects to avoid crosstalk. This saves space overhead associated with fixed isolation rings, and because the storage objects are independent, updating one storage object does not affect others, avoiding write amplification, reducing read amplification, and minimizing the resulting power consumption increase.

[0042] In one possible implementation, multiple storage objects are written to a mechanical hard disk in a tile-stacking manner, including: dividing the storage objects into multiple data units, with the multiple data units isolated by spatial distance; and writing the data units to the mechanical hard disk in a tile-stacking manner.

[0043] In practical applications, different types of storage objects have different sizes; for example, a voice message is 250kB, an image is 1.8MB, and a PDF file is 50kB. Storage objects can be divided into multiple data segments, or data units, based on their size. The specific length of each data unit can be set as needed, and each data unit is written to a sector of the hard disk drive in a tile-stacking manner. Figure 5 As shown, each data unit is represented by a pattern filling. Each data unit is written to a track sequentially, with later-written tracks covering previously written tracks, to increase storage density and reduce storage costs. Multiple data units are isolated by spatial distance. When reading data, they are read sequentially and decoded using SMR (Single Track Modulation) to remove inter-track interference (ITI), thus restoring the stored data.

[0044] In one possible implementation, the method further includes: if the writing of the first data unit of the storage object is interrupted, controlling the second data unit of the storage object to start writing at a first spatial distance from the position where the writing of the first data unit was interrupted; when the writing of the second data unit is completed, continuing the writing of the first data unit at a second spatial distance from the position where the writing of the second data unit is completed.

[0045] In practical applications, such as Figure 5 As shown, when a storage object is divided into multiple data units for data writing, if the writing of one data unit is temporarily interrupted while another data unit is being written, a spatial distance is maintained between the midpoint of the data writing process and the point where the writing resumes. The first and second spatial distances can be the same or different, and the size of the spatial distance can be preset according to specific needs. Tracks of the same data unit can overlap during storage, while different data units maintain spatial distance. This increases storage density while ensuring that data reading between different data units does not affect each other.

[0046] The following example illustrates how to control the writing and interruption of data units:

[0047] In one possible implementation, the method further includes: controlling the write head to write data by using a high level of the write enable signal; and controlling the write head to stop writing data by using a low level of the write enable signal.

[0048] In practical applications, the intermittent writing of data units is controlled by the write enable signal (write gate), and different data units do not overwrite or affect each other. For example... Figure 5 As shown, the start and interruption of data writing are controlled by the high and low levels of the write enable signal, respectively. Data reading is controlled by the corresponding read enable signal (read gate). Therefore, although the read head continuously scans multiple discontinuous tracks, the read enable signal can select which data units to retain and which to discard. For example, the pickup signal corresponding to the high level of the retain enable signal can be executed through binary AND logic operations.

[0049] In one possible implementation, the method further includes: deleting a first storage object from a plurality of storage objects on the hard disk to release a first storage space of the first storage object; storing a second storage object in the first storage space; if the second storage space of the second storage object is smaller than the first storage space, then using the remaining storage space to store verification data, which is used to verify the second storage object.

[0050] In practical applications, updates and deletions of written data are performed on a per-store-object basis, ensuring read / write independence between store-objects while meeting storage density requirements. For example... Figure 6 As shown, after deleting a storage object, the freed-up storage space can be reused in place, reducing the impact of large-capacity zone reclamation and improving data stability. If there is remaining storage space after reuse, it can be used to store verification data. This verification data can then be used to validate the data stored in the freed-up storage space, improving data consistency.

[0051] For example, if a deleted storage object occupies N 4KB sectors, and the remaining storage space after storage space reuse can accommodate one sector, then when sequentially writing to the N sectors of the red object, parity data (e.g., parity data) is accumulated using a Redundant Arrays of Independent Disks (RAID) method, and this parity data is written to the remaining sectors. If one of the N+1 sectors fails, the data can be restored using RAID, improving data stability.

[0052] In one possible implementation, the method further includes: when updating the version of a third storage object stored in the hard disk, deleting the third storage object to free up storage space for storing a fourth storage object; and storing the updated third storage object in the currently available storage space.

[0053] In practical applications, if a new version of an already stored object is available, the new version is appended to the currently available storage space, maintaining spatial distance from adjacent stored objects. Figure 6 As shown, the original version is marked as expired and can be deleted. The storage space occupied by the expired version's storage object can be reclaimed and used to write other storage objects of appropriate length.

[0054] Corresponding to the application scenarios and methods provided in the embodiments of this application, the embodiments of this application also provide a data writing device for a mechanical hard disk. For example... Figure 7 This is a structural block diagram of a data writing device for a hard disk drive according to an embodiment of this application. The data writing device for a hard disk drive may include:

[0055] The determination module 701 is used to determine multiple storage objects from the data to be stored.

[0056] The write module 702 is used to write multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance so as to realize data update on a unit basis.

[0057] The data writing device for a mechanical hard disk provided in this application embodiment determines multiple storage objects from the data to be stored and writes the multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance to realize data updates on a unit basis, thereby increasing storage density and achieving read and write operation independence between different storage objects. This suppresses the performance loss, power consumption and data crosstalk caused by write amplification and read amplification. Moreover, by using storage objects as the granularity to utilize the physical space of the mechanical hard disk, the efficiency and flexibility of data processing are improved.

[0058] In one possible implementation, the write module 702 is used to: divide the storage object into multiple data units, which are isolated from each other by spatial distance; and write the data units to the hard disk in a magnetic tile stacking manner.

[0059] In one possible implementation, the spatial distance between multiple storage objects is achieved by controlling the write head of the hard disk drive to set the spatial distance between the write completion position of one storage object and the write start position of another storage object.

[0060] In one possible implementation, the writing module 702 is further configured to: if the writing of the first data unit of the storage object is interrupted, control the second data unit of the storage object to start writing at a first spatial distance from the position where the writing of the first data unit was interrupted; when the writing of the second data unit is completed, continue writing the first data unit at a second spatial distance from the position where the writing of the second data unit is completed.

[0061] In one possible implementation, the device further includes a control module for: controlling the write head to write data by a high level of the write enable signal; and controlling the write head to stop writing data by a low level of the write enable signal.

[0062] In one possible implementation, the device further includes a first update module for:

[0063] Delete the first storage object from multiple storage objects on the hard disk to free up the first storage space of the first storage object; store the second storage object in the first storage space; if the second storage space of the second storage object is smaller than the first storage space, use the remaining storage space to store verification data, which is used to verify the second storage object.

[0064] In one possible implementation, the device further includes a second update module for: deleting the third storage object when updating the version of the third storage object stored in the hard disk to free up storage space for storing the fourth storage object; and storing the updated third storage object in the currently available storage space.

[0065] The functions of each module in each device in the embodiments of this application can be found in the corresponding description in the above method, and they have corresponding beneficial effects, which will not be repeated here.

[0066] Corresponding to the application scenarios and methods provided in the embodiments of this application, the embodiments of this application provide a computing device, including a mechanical hard disk and a driver as described in any of the above embodiments, wherein the driver executes the methods described in any of the above embodiments.

[0067] This application provides an electronic device. Figure 8 This is a block diagram of an electronic device used to implement embodiments of this application. For example... Figure 8 As shown, the electronic device includes a memory 810 and a processor 820. The memory 810 stores a computer program that can run on the processor 820. When the processor 820 executes the computer program, it implements the method described in the above embodiments. The number of memories 810 and processors 820 can be one or more.

[0068] The electronic device also includes:

[0069] The communication interface 830 is used to communicate with external devices and exchange and transmit data.

[0070] If the memory 810, processor 820, and communication interface 830 are implemented independently, they can be interconnected via a bus to communicate with each other. This bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. This bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 8 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0071] Optionally, in a specific implementation, if the memory 810, processor 820, and communication interface 830 are integrated on a single chip, then the memory 810, processor 820, and communication interface 830 can communicate with each other through an internal interface.

[0072] This application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method provided in this application.

[0073] This application also provides a chip including a processor for calling and executing instructions stored in a memory, causing a communication device with the chip installed to perform the method provided in this application.

[0074] This application also provides a chip, including: an input interface, an output interface, a processor, and a memory. The input interface, output interface, processor, and memory are connected through an internal connection path. The processor is used to execute code in the memory. When the code is executed, the processor is used to execute the method provided in the application embodiment.

[0075] It should be understood that the aforementioned processor can be a Central Processing Unit (CPU), or other general-purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field-Programmable Gate Arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. General-purpose processors can be microprocessors or any conventional processor. It is worth noting that the processor can be a processor supporting Advanced Reduced Instruction Set Machines (ARM) architecture.

[0076] Further, optionally, the aforementioned memory may include read-only memory and random access memory. The memory may be volatile memory or non-volatile memory, or may include both. Non-volatile memory may include read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory may include random access memory (RAM), which serves as an external cache. By way of example, but not limitation, many forms of RAM are available. Examples include Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DR RAM).

[0077] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions according to this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another.

[0078] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of those different embodiments or examples.

[0079] Furthermore, the terms "first" and "second" 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. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "a plurality of" means two or more, unless otherwise explicitly specified.

[0080] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process. Furthermore, the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functionality involved.

[0081] The logic and / or steps described in the flowchart or otherwise herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus or device (such as a computer-based system, a processor-included system or other system that can fetch and execute instructions from, an instruction execution system, apparatus or device).

[0082] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. All or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware, the program being stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiments.

[0083] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. This storage medium can be a read-only memory, a disk, or an optical disk, etc.

[0084] The above description is merely an exemplary embodiment of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various variations or substitutions within the technical scope described in this application, and these should all be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A data writing method for a mechanical hard disk, characterized in that, The method is applied to a computing device, the computing device including a hard disk drive, and the method includes: Identify multiple storage objects from the data to be stored; The multiple storage objects are written to the mechanical hard disk in a magnetic tile stacking manner, and the multiple storage objects are isolated by spatial distance to realize data updates on a unit basis according to the storage object; The step of writing the plurality of storage objects into the hard disk in a magnetic tile stacking manner includes: The storage object is divided into multiple data units, which are isolated from each other by spatial distance; The data units are written to the mechanical hard disk in a magnetic tile stacking manner; The method further includes: If the writing of the first data unit of the storage object is interrupted, the second data unit of the storage object is controlled to start writing at a first spatial distance from the writing interruption position of the first data unit; When the writing of the second data unit is completed, the writing of the first data unit continues at a second spatial distance from the position where the writing of the second data unit is completed.

2. The method according to claim 1, characterized in that, The spatial isolation between the multiple storage objects is achieved in the following way: By controlling the write head of the hard disk drive, a spatial distance is set between the write completion position of one storage object and the write start position of another storage object.

3. The method according to claim 1, characterized in that, The method further includes: The high level of the write enable signal controls the write head to write data; By using a low level of the write enable signal, the write head is controlled to stop writing data.

4. The method according to any one of claims 1-2, characterized in that, The method further includes: Delete the first storage object among the plurality of storage objects from the mechanical hard disk to release the first storage space of the first storage object; The second storage object is stored in the first storage space. If the second storage space of the second storage object is smaller than the first storage space, the remaining storage space is used to store verification data, which is used to verify the second storage object.

5. The method according to any one of claims 1-2, characterized in that, The method further includes: When updating the version of the third storage object stored in the mechanical hard disk, the third storage object is deleted to free up the storage space of the third storage object for storing the fourth storage object; Store the updated third storage object in the currently available storage space.

6. A data writing device for a mechanical hard disk, characterized in that, include: The determination module is used to determine multiple storage objects from the data to be stored; The writing module is used to write the multiple storage objects to the mechanical hard disk in a magnetic tile stacking manner. The multiple storage objects are isolated by spatial distance so as to realize data update on a unit basis according to the storage object. The writing module is specifically used for: The storage object is divided into multiple data units, which are isolated from each other by spatial distance; The data units are written to the mechanical hard disk in a magnetic tile stacking manner; The write module is specifically used for: If the writing of the first data unit of the storage object is interrupted, the writing of the second data unit of the storage object is started at a first spatial distance from the writing interruption position of the first data unit; When the writing of the second data unit is completed, the writing of the first data unit continues at a second spatial distance from the position where the writing of the second data unit is completed.

7. A computing device comprising a hard disk drive according to any one of claims 1-5 and a driver, the driver performing the method according to any one of claims 1-5.

8. A computer-readable storage medium storing a computer program that, when executed by a processor, implements the method of any one of claims 1-5.

Citation Information

Patent Citations

  • Isolated shingled bands of fractional tracks

    CN105723319A

  • Data storage method and device

    CN108804019A