Input / output request processing methods, apparatus, equipment, media, and program products
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-30
- Publication Date
- 2026-08-14
AI Technical Summary
在海量文件并发操作或者大体积数据高速落盘等场景下,大量的元数据的同步更新操作会引发磁盘I/O(Input/Output;输入/输出)序列化阻塞,导致系统整体响应延迟,出现难以控制的长尾时延问题
[0009]本文提供的技术方案与现有技术相比至少具有如下优点:
Smart Images

Figure CN122569853A_ABST
Abstract
Description
Technical Field
[0001] This article relates to the field of computer technology, and in particular to an input / output request processing method, apparatus, device, medium, and program product. Background Technology
[0002] Currently, when performing data block allocation, modification, or deletion operations, it is usually necessary to perform one or more synchronous update operations on the metadata. In scenarios such as massive file concurrent operations or high-speed disk writing of large volumes of data, a large number of synchronous update operations on metadata can cause disk I / O (Input / Output) serialization blocking, resulting in overall system response delay and uncontrollable long-tail latency problems. Summary of the Invention
[0003] To address, or at least partially address, the aforementioned technical problems, this document provides an input / output request processing method, apparatus, device, medium, and program product.
[0004] Firstly, an input / output request processing method is provided, the method comprising: Receive input / output requests; In response to the input / output request indicating an operation on metadata, a first priority identifier is obtained for the input / output request; the first priority identifier is used to indicate that the priority is higher than the operation priority on user data, and the metadata is used to describe the user data in the file. Based on the first priority identifier and the input / output request, a first input / output command is generated; the first input / output command carries the first priority identifier. The first input / output command is passed to the disk device through the driver layer; the disk device is used to process the first input / output command according to the first priority identifier.
[0005] Secondly, an input / output request processing apparatus is provided, the apparatus comprising: The receiving module is used to receive input / output requests; The first acquisition module is configured to, in response to the input / output request indicating an operation on metadata, acquire a first priority identifier for the input / output request; the first priority identifier is used to indicate that the priority is higher than the operation priority on user data, and the metadata is used to describe the user data in the file. A first generation module is configured to generate a first input / output command based on the first priority identifier and the input / output request; the first input / output command carries the first priority identifier. The first transmission module is used to transmit the first input / output command to the disk device through the driver layer; the disk device is used to process the first input / output command according to the first priority identifier.
[0006] Thirdly, an electronic device is provided, comprising: a processor; a memory for storing executable instructions of the processor; the processor being configured to read the executable instructions from the memory and execute the instructions to implement an input / output request processing method as provided herein.
[0007] Fourthly, a computer-readable storage medium is provided, the storage medium storing a computer program for executing the above-described input / output request processing method.
[0008] Fifthly, a computer program product is provided, the computer program product including a computer program or instructions, which, when executed by a processor, implement the above-described input / output request processing method.
[0009] The technical solution provided in this paper has at least the following advantages compared with existing technologies: The input / output request processing method provided in this paper first receives an input / output request. Then, in response to the input / output request indicating an operation on metadata, a first priority identifier is obtained for the input / output request. This first priority identifier is used to indicate an operation with a higher priority than user data, and the metadata is used to describe the user data in the file. Then, based on the first priority identifier and the input / output request, a first input / output command carrying the first priority identifier is generated. Subsequently, the first input / output command is passed to the disk device through the driver layer, and the disk device is used to process the first input / output command according to the first priority identifier.
[0010] Upon receiving an input / output request for metadata operations, this paper obtains a first priority identifier to represent an operation with a higher priority than the operation priority for user data, generates a first input / output command carrying the first priority identifier, and passes the first input / output command to the disk device. This enables the disk device to schedule and execute metadata operations with a higher priority, thereby reducing the latency of metadata operations and thus reducing the overall system response latency, thereby improving data processing performance. Attached Figure Description
[0011] The above and other features, advantages, and aspects of the embodiments herein will become more apparent when taken in conjunction with the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0012] Figure 1 A flowchart illustrating an input / output request processing method provided for embodiments of this document; Figure 2 This is a schematic diagram illustrating the execution process of an input / output request processing method provided for embodiments of this document. Figure 3 A schematic diagram of an input / output request processing device provided for embodiments of this article; Figure 4 This is a schematic diagram of the structure of an electronic device provided for the embodiments of this article. Detailed Implementation
[0013] The embodiments described herein will now be described in more detail with reference to the accompanying drawings. While some embodiments are shown in the drawings, it should be understood that this document can be implemented in various forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided to provide a more thorough and complete understanding of the document. It should be understood that the accompanying drawings and embodiments are for illustrative purposes only and are not intended to limit the scope of this document.
[0014] It should be understood that the steps described in the method embodiments herein may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this document is not limited in this respect.
[0015] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0016] It should be noted that the concepts of "first" and "second" mentioned in this article are only used to distinguish different devices, modules or units, and are not used to limit the order of the functions performed by these devices, modules or units or their interdependencies.
[0017] It should be noted that the terms "one" and "more" used in this document are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0018] The names of messages or information exchanged between multiple devices in the embodiments herein are for illustrative purposes only and are not intended to limit the scope of these messages or information.
[0019] It is understood that before using the technical solutions disclosed in the embodiments of this article, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this article in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained. Currently, when performing data block allocation, modification, or deletion operations, it is usually necessary to perform one or more synchronous update operations on the metadata. In scenarios such as massive file concurrent operations or high-speed disk writing of large volumes of data, a large number of synchronous update operations on metadata can cause disk I / O (Input / Output) serialization blocking, resulting in overall system response delay and uncontrollable long-tail latency problems.
[0020] This paper provides an input / output request processing method. Specifically, it first receives an input / output request, and then, in response to the input / output request indicating an operation on metadata, obtains a first priority identifier for the input / output request. This first priority identifier indicates that the operation has a higher priority than the operation on user data, and the metadata describes the user data in the file. Then, based on the first priority identifier and the input / output request, a first input / output command carrying the first priority identifier is generated. Subsequently, the first input / output command is passed to a disk device through a driver layer, and the disk device processes the first input / output command according to the first priority identifier.
[0021] Upon receiving an input / output request for metadata operations, this paper obtains a first priority identifier to represent an operation with a higher priority than the operation priority for user data, generates a first input / output command carrying the first priority identifier, and passes the first input / output command to the disk device. This enables the disk device to schedule and execute metadata operations with a higher priority, thereby reducing the latency of metadata operations and thus reducing the overall system response latency, thereby improving data processing performance.
[0022] To facilitate understanding, this article provides an application scenario for an input / output request processing method. This method can be deployed on either a client or a server, and the client can include personal computers, tablets, smartphones, etc. The application scenario will be illustrated using client-side deployment as an example.
[0023] The client receives input / output requests, which can specifically be I / O requests (Input / Output Requests). These requests are used to issue data read / write operations and are structured data packets. Specifically, the input / output request includes the operation type, Logical Block Address (LBA), data length, and buffer address.
[0024] After receiving an input / output request, the client identifies whether the request indicates an operation on metadata. If it does, a first priority identifier is assigned to the request. This first priority identifier indicates that the request has a higher priority than operations on user data. Metadata describes the user data in the file. In other words, if the client recognizes that the input / output request indicates an operation on metadata, it assigns a first priority identifier to that request.
[0025] After obtaining the first priority identifier, to improve the accuracy of recognizing the input / output request and the priority identifier, the input / output request can be formatted based on the first priority identifier to generate a first input / output command, which carries the first priority identifier. After generating the first input / output command carrying the first priority identifier, the first input / output command can be passed through to the disk device through the driver layer, and the disk device is used to process the first input / output command according to the first priority identifier.
[0026] For ease of understanding, the embodiments of this document provide an input / output request processing method, which can be executed by an input / output request processing device, wherein the device can be implemented in software and / or hardware, and is generally integrated into a client or server. Figure 1 The diagram shown illustrates an input / output request processing method according to an embodiment of this paper, wherein the method includes: 101: Receive input / output requests.
[0027] This input / output request, also known as an I / O request, is used to issue data read / write operations. Specifically, it carries information such as the operation type, logical address block, data length, and buffer address. This input / output request includes requests for metadata operations and requests for user data operations.
[0028] 102: In response to the input / output request indicating an operation on metadata, obtain a first priority identifier for the input / output request.
[0029] The first priority identifier is used to indicate that the priority is higher than the operation priority of user data, and the metadata is used to describe the user data in the file.
[0030] In the input / output request processing method provided in this article, after receiving an input / output request, the input / output request can be parsed to determine whether the input / output request indicates an operation on metadata.
[0031] In one scenario, the system maintains a partition table containing metadata, which records the logical block address range of the metadata region. Based on this, the input / output request processing method provided in this paper can determine whether the input / output request indicates an operation on metadata by parsing the logical block address in the input / output request and judging whether the logical block address is within the logical block address range of the metadata region.
[0032] In one scenario, the received input / output request is first parsed to obtain its logical block address. Then, the logical block address is compared with the logical block address range of the metadata area. If the logical block address in the input / output request belongs to the logical block address range of the metadata area, it is determined that the input / output request indicates an operation on metadata, and a first priority identifier is obtained for the input / output request.
[0033] In the input / output request processing method provided in this paper, the first priority identifier is used to indicate that the priority is higher than the operation priority of user data. That is, when there are both input / output requests indicating operations on user data and input / output requests indicating operations on metadata, the input / output request indicating operations on metadata is processed first.
[0034] The metadata area includes different types of metadata, such as logs, directory entries, and inodes (index nodes). Logs are used for transaction recording, that is, descriptions and backups of metadata operations to be performed; directory entries store the mapping between filenames and inode numbers, which allows locating the corresponding inode on disk; inodes store file metadata other than filenames. Each inode has a unique number (i.e., inode number), which allows locating the corresponding inode in the inode table. An inode typically contains information such as file type, permissions, owner, timestamp, file size, and data block pointers.
[0035] Therefore, this paper can also identify the specific metadata type to which the logical block address of the input / output request belongs after determining that the logical block address of the input / output request belongs to the logical block address range of the metadata area, thereby performing differentiated tuning operations for different types of metadata.
[0036] In one scenario, based on determining that the logical block address of the input / output request belongs to the logical block address range of the metadata area, it is determined whether the logical block address of the input / output request belongs to the logical block address range corresponding to the first type of metadata. If it is determined that the logical block address of the input / output request belongs to the logical block address range corresponding to the first type of metadata, the priority identifier corresponding to the first type of metadata can be obtained as the first priority identifier.
[0037] The first type of metadata can be any type of metadata, such as logs, directory entries, inodes, etc. Different types of metadata have different priority identifiers; that is, different types of metadata are assigned different priority identifiers, allowing operations to be performed on different types of metadata based on their priority identifiers.
[0038] 103: Generate a first input / output command based on the first priority identifier and the input / output request.
[0039] The first input / output command carries the first priority identifier.
[0040] In one scenario, because the input / output request received by the client cannot be recognized by the disk device, this paper also needs to perform format conversion based on the first priority identifier and the input / output request to generate the first input / output command. Specifically, firstly, a priority field is generated based on the first priority identifier, and then the first input / output command is generated based on the priority field and the input / output request.
[0041] In other words, the first priority identifier is converted into a priority field, and then this priority field is encapsulated with the input / output request to obtain the first input / output command. This priority field is used to indicate that operations on metadata have a higher priority than operations on user data.
[0042] In one scenario, the first priority identifier can be written as a priority hint into the priority field, and then the first input / output command can be generated based on the priority field and the input / output request.
[0043] The priority hint is mapped to a hint field at the driver layer. This hint field serves as an operational prompt for the disk device to process the first input / output command. In other words, this hint field is a processing prompt, not a forced action by the disk device to process the first input / output command; the disk device can schedule operations internally based on its own state.
[0044] In this context, the driver layer maps priority hints to hint fields, meaning that after reading the priority hints, the driver layer converts them into specific fields in a command structure that can be recognized and executed by the hardware device, according to the protocol.
[0045] 104: Pass the first input / output command to the disk device through the driver layer.
[0046] The disk device is used to process the first input / output command according to the first priority identifier.
[0047] In the input / output request processing described in this article, after the first input / output command is generated, it is passed to the disk device through the driver layer as an intermediate layer.
[0048] The driver layer is used to manage hardware devices (such as disk devices) and to pass the received commands to the hardware devices after protocol conversion.
[0049] This paper provides an input / output request processing method. Specifically, it first receives an input / output request, and then, in response to the input / output request indicating an operation on metadata, obtains a first priority identifier for the input / output request. This first priority identifier indicates that the operation has a higher priority than the operation on user data, and the metadata describes the user data in the file. Then, based on the first priority identifier and the input / output request, a first input / output command carrying the first priority identifier is generated. Subsequently, the first input / output command is passed to a disk device through a driver layer, and the disk device processes the first input / output command according to the first priority identifier.
[0050] Upon receiving an input / output request for metadata operations, this paper obtains a first priority identifier indicating that the operation on metadata has a higher priority than the operation on user data, generates a first input / output command carrying the priority identifier, and passes the input / output command to the disk device. This enables the disk device to schedule and execute metadata operations with a higher priority, thereby reducing the latency of metadata operations and thus reducing the overall system response latency, thereby improving data processing performance.
[0051] In one scenario, after receiving an input / output request, if it is determined that the input / output request indicates an operation on user data, a second priority identifier corresponding to the user data can also be obtained. This second priority identifier is used to indicate the operation priority of the user data. Specifically, the second priority identifier can be 1 or 2, etc., where the operation priority of user data with a second priority identifier of 0 is higher than the operation priority of user data with a second priority identifier of 2.
[0052] Since the second priority identifier corresponding to the user data is configured by the user when creating the file, meaning that the second priority identifier has been recorded in the file metadata corresponding to the user data, this paper can retrieve the file metadata corresponding to the user data to obtain the second priority identifier.
[0053] Specifically, based on the received input / output request, the input / output request is parsed to determine the file metadata corresponding to the user data, and the file metadata is retrieved to obtain the second priority identifier corresponding to the user data from the file metadata.
[0054] Based on the above embodiments, it is also necessary to perform format conversion on the second priority identifier and the input / output request to generate a second input / output command. Then, the second input / output command is passed to the disk device through the driver layer for processing the second input / output command according to the second priority identifier.
[0055] It is evident that by configuring different priority flags for input and output requests that indicate user data operations and passing these priority flags through to the disk device, the quality of storage services can be optimized, ensuring that latency-sensitive data is processed first and reducing data processing latency.
[0056] To facilitate understanding, based on the above input / output request processing methods, this paper will provide the execution process of an input / output request processing method in a specific application scenario. For example... Figure 2 The diagram shown illustrates the execution process of an input / output request processing method provided in an embodiment of this paper.
[0057] First, an I / O request is received, and its logical block address is parsed to obtain the logical block address. The logical block address is then compared with the logical block address range of the metadata area to determine whether the I / O request indicates an operation on the metadata.
[0058] In one scenario, if it is determined that the logical block address of the I / O request belongs to the logical block address range of the metadata area, then it is determined that the I / O request indicates an operation on metadata. In this case, a first priority identifier is obtained for the I / O request. This first priority identifier indicates that its priority is higher than that of operations on user data. Specifically, the first priority identifier can be configured to 0.
[0059] After obtaining the first priority identifier, the priority identifier is used as a priority hint and written into the priority field. Then, based on the priority field and the I / O request, an I / O command is generated, which carries the first priority identifier.
[0060] Subsequently, the I / O command is passed to the disk device through the driver layer, and the disk device processes the command according to the first priority identifier in the command.
[0061] In another scenario, if it is determined that the logical block address of the I / O request does not belong to the logical block address range of the metadata area, then it is determined that the I / O request indicates an operation on user data. The I / O request is then parsed to determine the file metadata corresponding to the user data, and the file metadata is retrieved to obtain the second priority identifier corresponding to the user data. Specifically, this second priority identifier can be pre-configured to 1.
[0062] After obtaining the second priority identifier, the priority identifier is used as a priority hint and written into the priority field. Then, based on the priority field and the I / O request, an I / O command is generated, which carries the second priority identifier.
[0063] Subsequently, the I / O command is passed to the disk device through the driver layer, and the disk device processes the command according to the second priority identifier in the command.
[0064] As can be seen, by assigning a first priority identifier to the input / output request of the operation indicating metadata, this paper can pass the priority hint to the disk device through the driver layer, so that the disk device can schedule the input / output request according to its own state.
[0065] In addition, this paper can assign a second priority flag to operation input / output requests that indicate user data and pass this priority flag to the disk device, which can optimize the quality of storage services, ensure that latency-sensitive data is processed first, and reduce data processing latency. In one scenario, the input / output request processing method is applied to a kernel file system. The step of passing the first input / output command to the disk device through the driver layer includes: parsing the first input / output command through the driver layer, mapping the priority field in the first input / output command to a priority hint signal, and passing the priority hint signal to the disk device through the disk controller interface, so that the disk device executes the first input / output command according to the priority hint information.
[0066] To implement the above embodiments, this document also proposes an input / output request processing apparatus. Figure 3 This is a schematic diagram of an input / output request processing device provided for embodiments of this document. This device can be implemented in software and / or hardware and is generally integrated into an electronic device. For example... Figure 3 As shown, the device includes: Receiver module 301 is used to receive input / output requests; The first acquisition module 302 is configured to acquire a first priority identifier for the input / output request in response to the input / output request indicating an operation on metadata; the first priority identifier is used to indicate that the priority is higher than the operation priority on user data, and the metadata is used to describe the user data in the file. The first generation module 303 is configured to generate a first input / output command based on the first priority identifier and the input / output request; the first input / output command carries the first priority identifier. The first transmission module 304 is used to transmit the first input / output command to the disk device through the driver layer; the disk device is used to process the first input / output command according to the first priority identifier.
[0067] In one embodiment, the device further includes: The second acquisition module is used to acquire a second priority identifier corresponding to the user data in response to the input / output request indicating an operation on the user data; the second priority identifier is used to indicate the operation priority of the user data. The second generation module is used to generate a second input / output command based on the second priority identifier and the input / output request; The second transmission module is used to transmit the second input / output command to the disk device through the driver layer; the disk device is used to process the second input / output command according to the second priority identifier.
[0068] In one scenario, the first generation module includes: The first generation submodule is used to generate a priority field based on the first priority identifier; The second generation submodule is used to generate a first input / output command based on the priority field and the input / output request.
[0069] In one scenario, the first generation submodule is specifically used for: The first priority identifier is written into the priority field as a priority prompt; the priority prompt is used to map into a prompt field in the driver layer, and the prompt field is used as an operation prompt for the disk device to process the first input / output command.
[0070] In another scenario, the first acquisition module is specifically used for: In response to the input / output request indicating an operation on the first type of metadata, the priority identifier corresponding to the first type of metadata is obtained for the input / output request and used as the first priority identifier; different types of metadata correspond to different priority identifiers.
[0071] In one embodiment, the device further includes: The comparison and determination module is used to determine whether the input / output request indicates an operation on metadata by comparing the logical block address in the input / output request with the logical block address range of the metadata area.
[0072] In another scenario, the first acquisition module is specifically used for: In response to the logical block address in the input / output request belonging to the logical block address range of the metadata area, a first priority identifier is obtained for the input / output request.
[0073] In one scenario, the second acquisition module is specifically used for: In response to the input / output request indicating an operation on user data, the file metadata of the user data is retrieved, and a second priority identifier corresponding to the user data is obtained from the file metadata.
[0074] Specifically, the input / output request processing apparatus provided herein first receives an input / output request. Then, in response to the input / output request indicating an operation on metadata, a first priority identifier is obtained for the input / output request. This first priority identifier indicates a priority higher than the operation priority on user data; the metadata describes the user data in the file. Then, based on the first priority identifier and the input / output request, a first input / output command carrying the first priority identifier is generated. Subsequently, the first input / output command is transmitted to the disk device through the driver layer, and the disk device processes the first input / output command according to the first priority identifier.
[0075] Upon receiving an input / output request for metadata operations, this paper obtains a first priority identifier indicating that the operation on metadata has a higher priority than the operation on user data, generates a first input / output command carrying the priority identifier, and passes the input / output command to the disk device. This enables the disk device to schedule and execute metadata operations with a higher priority, thereby reducing the latency of metadata operations and thus reducing the overall system response latency, thereby improving data processing performance.
[0076] In addition to the methods and apparatus described above, embodiments of this document also provide a computer-readable storage medium storing instructions that, when executed on a terminal device, cause the terminal device to implement the input / output request processing method described in the embodiments of this document. This computer-readable storage medium has the same beneficial effects as embodiments of this method.
[0077] The embodiments of this article also provide a computer program product, which includes a computer program / instruction that, when executed by a processor, implements the input / output request processing method described in the embodiments of this article. This computer program product has the same beneficial effects as the embodiments of this method.
[0078] Additionally, the embodiments herein also provide an electronic device, see [link to document]. Figure 4 As shown, it may include: The electronic device includes a processor 401, a memory 402, an input device 403, and an output device 404. The number of processors 401 in the electronic device can be one or more. Figure 4Taking a processor as an example. In some embodiments herein, the processor 401, memory 402, input device 403, and output device 404 may be connected via a bus or other means, wherein... Figure 4 Taking the example of a connection between China and Israel via a bus.
[0079] The memory 402 can be used to store software programs and modules. The processor 401 executes various functional applications and data processing of the electronic device by running the software programs and modules stored in the memory 402. The memory 402 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function, etc. In addition, the memory 402 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. The input device 403 can be used to receive input digital or character information, and to generate signal inputs related to user settings and function control of the electronic device.
[0080] Specifically, in this document, the processor 401 loads the executable files corresponding to the processes of one or more applications into the memory 402 according to the following instructions, and the processor 401 runs the applications stored in the memory 402, thereby realizing the various functions of the above-mentioned electronic device. The electronic device has the same beneficial effects as the embodiments of the above-mentioned method.
[0081] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0082] The above description is merely a specific embodiment of the present invention, enabling those skilled in the art to understand or implement the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the present invention is not to be limited to the embodiments described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. An input / output request processing method, the method comprising: Receive input / output requests; In response to the input / output request indicating an operation on metadata, a first priority identifier is obtained for the input / output request; The first priority identifier is used to indicate that the priority is higher than the operation priority on user data, and the metadata is used to describe the user data in the file; Based on the first priority identifier and the input / output request, a first input / output command is generated; The first input / output command carries the first priority identifier; The first input / output command is passed to the disk device through the driver layer; The disk device is used to process the first input / output command according to the first priority identifier.
2. The input / output request processing method according to claim 1, further comprising: In response to the input / output request indicating an operation on user data, obtain the second priority identifier corresponding to the user data; The second priority identifier is used to indicate the operation priority of the user data; Based on the second priority identifier and the input / output request, a second input / output command is generated; The second input / output command is passed to the disk device through the driver layer; the disk device is used to process the second input / output command according to the second priority identifier.
3. The input / output request processing method according to claim 1, wherein generating a first input / output command based on the first priority identifier and the input / output request includes: Generate a priority field based on the first priority identifier; Based on the priority field and the input / output request, a first input / output command is generated.
4. The input / output request processing method according to claim 3, wherein generating a priority field based on the first priority identifier includes: Write the first priority identifier as a priority hint into the priority field; The priority hint is mapped to a hint field in the driver layer, and the hint field is used as an operation hint for the disk device to process the first input / output command.
5. The input / output request processing method according to claim 1, wherein obtaining a first priority identifier for the input / output request in response to the input / output request indicating an operation on metadata includes: In response to the input / output request indicating an operation on the first type of metadata, a priority identifier corresponding to the first type of metadata is obtained for the input / output request and used as a first priority identifier; Different types of metadata have different priority identifiers.
6. The input / output request processing method according to claim 1, further comprising: By comparing the logical block address in the input / output request with the logical block address range of the metadata area, it is determined whether the input / output request indicates an operation on the metadata.
7. The input / output request processing method according to claim 6, wherein obtaining a first priority identifier for the input / output request in response to the input / output request indicating an operation on metadata includes: In response to the logical block address in the input / output request belonging to the logical block address range of the metadata area, a first priority identifier is obtained for the input / output request.
8. The input / output request processing method according to claim 2, wherein the step of obtaining a second priority identifier corresponding to the user data in response to the input / output request indicating an operation on the user data includes: In response to the input / output request indicating an operation on user data, the file metadata of the user data is retrieved, and a second priority identifier corresponding to the user data is obtained from the file metadata.
9. An input / output request processing apparatus, the apparatus comprising: The receiving module is used to receive input / output requests; The first acquisition module is configured to acquire a first priority identifier for the input / output request in response to the input / output request indicating an operation on metadata. The first priority identifier is used to indicate that the priority is higher than the operation priority on user data, and the metadata is used to describe the user data in the file; The first generation module is used to generate a first input / output command based on the first priority identifier and the input / output request; The first input / output command carries the first priority identifier; The first transmission module is used to transmit the first input / output command to the disk device through the driver layer; the disk device is used to process the first input / output command according to the first priority identifier.
10. An electronic device, the electronic device comprising: processor; Memory used to store the processor's executable instructions; The processor is configured to read the executable instructions from the memory and execute the instructions to implement the method as described in any one of claims 1-8.
11. A computer-readable storage medium storing a computer program for performing the method as described in any one of claims 1-8.
12. A computer program product comprising a computer program or instructions which, when executed by a processor, implement the method as described in any one of claims 1-8.