CN113253923B - Data processing method, device, equipment, medium and product - Google Patents

Data processing method, device, equipment, medium and product Download PDF

Info

Publication number
CN113253923B
CN113253923B CN202110466588.XA CN202110466588A CN113253923B CN 113253923 B CN113253923 B CN 113253923B CN 202110466588 A CN202110466588 A CN 202110466588A CN 113253923 B CN113253923 B CN 113253923B
Authority
CN
China
Prior art keywords
data
target data
internal
processing
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110466588.XA
Other languages
Chinese (zh)
Other versions
CN113253923A (en
Inventor
郑宁
许树堃
王晋强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruizhe Hangzhou Technology Co ltd
Original Assignee
Ruizhe Hangzhou Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ruizhe Hangzhou Technology Co ltd filed Critical Ruizhe Hangzhou Technology Co ltd
Priority to CN202110466588.XA priority Critical patent/CN113253923B/en
Publication of CN113253923A publication Critical patent/CN113253923A/en
Application granted granted Critical
Publication of CN113253923B publication Critical patent/CN113253923B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The embodiment of the invention provides a data processing method, a device, equipment, a medium and a product, wherein the method comprises the following steps: receiving a data processing instruction sent by the storage device driver, wherein the data processing instruction comprises the following steps: the target data processing type and the identification information of the target data; if the target data processing type is determined to be an internal processing type, migrating target data corresponding to the identification information stored in a storage medium in the storage medium through a data internal processing buffer; and if the target data processing type is determined to be the external processing type, processing the target data corresponding to the identification information through the data external processing engine. According to the data processing method provided by the embodiment of the invention, the internal data processing and the external data processing are independently and separately executed, so that the influence on the read-write performance of the external data can be reduced by the internal data processing of the computing storage device, and the read-write performance of the external data is further improved.

Description

Data processing method, device, equipment, medium and product
Technical Field
The embodiment of the invention relates to the technical field of data storage, in particular to a data processing method, a device, equipment, a medium and a product.
Background
The computable storage device is a hotspot for the current storage device development. The computable memory device may perform some computing operations within the memory device in addition to the input-output functions of a conventional memory device. Among them, computable storage devices with transparent compression are increasingly becoming popular. Transparent compression in a storage device refers to the compression of data by a storage controller prior to writing the data to a storage medium, and decompression of the data as it is read, such that the compression and decompression process is completely transparent to the host side. Through transparent compression in the storage device, physical storage space occupied by data can be saved, and compression overhead of a CPU (Central processing Unit) at a host side can be reduced.
Because current computable storage devices often require internal garbage collection, wear leveling, and other data movement operations to reclaim space and increase service life. These internal operations mainly involve extra data read-write operations, which in current computable storage products with transparent compression will also re-perform decompression and compression operations, thus increasing the pressure of the decompression and compression modules in the storage device, affecting the performance of external read-write operations.
Thus, the internal data processing of current computable memory devices reduces the performance of external reads and writes.
Disclosure of Invention
The invention provides a data processing method, a device, equipment, a medium and a product, which are used for solving the problem that the external read-write performance is reduced due to additional data read-write in the internal operation of the existing computable storage equipment.
An embodiment of the present invention provides a data processing method, where the method is applied to a storage controller of a storage device, and the storage device further includes: a storage device drive and storage medium, the storage controller comprising: a data internal processing buffer, a data external processing engine, the method comprising:
receiving a data processing instruction sent by the storage device driver, wherein the data processing instruction comprises the following steps: the target data processing type and the identification information of the target data;
if the target data processing type is determined to be an internal processing type, migrating target data corresponding to the identification information stored in a storage medium in the storage medium through a data internal processing buffer;
and if the target data processing type is determined to be the external processing type, processing the target data corresponding to the identification information through the data external processing engine.
Further, as described above, the data internal processing buffer includes: the data internal reading buffer area; the identification information of the target data includes: the original storage location of the target data;
if the target data processing type is determined to be an internal processing type, the data processing instruction further includes: a target storage location for target data;
the migration of the target data corresponding to the identification information stored in the storage medium through the data internal processing buffer zone includes:
reading the target data from a storage medium according to the original storage position of the target data, and writing the target data into a data internal reading buffer area;
if the data size in the data internal reading buffer area is larger than or equal to the first preset buffer threshold value, writing the data in the data internal reading buffer area into a storage medium, and writing target data in the data internal reading buffer area into a target storage position.
Further, in the method as described above, the data internal processing buffer further includes: writing the data into a buffer area;
if the target data processing type is determined to be an internal processing type, the original storage position of the target data is a corresponding physical block address in a storage medium; the identification information of the target data further includes: offset and length of the target data within the physical block address;
The writing the data in the data internal reading buffer into the storage medium includes:
intercepting corresponding target data in a data internal reading buffer zone according to the offset and the length of the target data in a physical block address, and writing the target data into a data internal writing buffer zone;
and if the data size in the data internal writing buffer area is larger than or equal to a second preset buffer threshold value, writing the data in the data internal writing buffer area into a target storage position of a storage medium.
Further, as described above, the data external processing engine includes: a decompression engine and a compression engine; the external processing type comprises an external reading type and an external writing type; if the target data processing type is an external writing type, the data processing instruction further includes: a target storage location for target data;
if the target data processing type is determined to be an external processing type, processing the target data corresponding to the identification information through the data external processing engine comprises the following steps:
if the target data processing type is determined to be an external reading type, reading target data from an original storage position of the target data in a storage medium, decompressing the target data through a decompression engine and sending the decompressed target data to external equipment;
And if the target data processing type is determined to be the external writing type, acquiring target data from an original storage position of the target data in the external equipment, compressing the target data through a compression engine, and writing the compressed target data into a target storage position of a storage medium.
Further, as described above, the memory controller further comprises: a data selector;
the method further comprises the steps of:
and receiving the data transmitted by the data internal reading buffer area or the data internal writing buffer area through the data selector, and receiving the target data transmitted by the compression engine through the data selector.
Further, as described above, the memory controller further comprises: a common write buffer;
the method further comprises the steps of:
monitoring the data in the data selector;
if the data transmitted by the data internal reading buffer area or the data internal writing buffer area and the data transmitted by the compression engine exist in the data selector at the same time, controlling the data selector to select the data according to a preset selection strategy and transmitting the selected data to the public writing buffer area;
if the data size in the public write buffer area is larger than or equal to the third preset buffer threshold value, writing the data in the public write buffer area into a storage medium according to the target storage position;
The controlling the data selector to select data according to a preset selection strategy comprises the following steps:
and sequentially controlling the data selector to alternately select data sent by the compression engine or data sent by all internal reading buffers or data internal writing buffers according to a preset alternate selection sequence.
A second aspect of an embodiment of the present invention provides a data processing apparatus, where the apparatus is located in a storage controller of a storage device, and the storage device further includes: a storage device drive and storage medium, the storage controller comprising: a data internal processing buffer, a data external processing engine, the apparatus comprising:
the instruction receiving module is used for receiving a data processing instruction sent by the storage device driver, and the data processing instruction comprises the following components: the target data processing type and the identification information of the target data;
the internal migration module is used for migrating the target data corresponding to the identification information stored in the storage medium through a data internal processing buffer area if the target data processing type is determined to be the internal processing type;
and the external processing module is used for processing the target data corresponding to the identification information through the data external processing engine if the target data processing type is determined to be the external processing type.
Further, as described above, the data internal processing buffer includes: the data internal reading buffer area; the identification information of the target data includes: the original storage location of the target data;
if the target data processing type is determined to be an internal processing type, the data processing instruction further includes: a target storage location for target data;
the internal migration module is specifically configured to, when migrating target data corresponding to the identification information stored in a storage medium in the storage medium through a data internal processing buffer area:
reading the target data from a storage medium according to the original storage position of the target data, and writing the target data into a data internal reading buffer area; if the data size in the data internal reading buffer area is larger than or equal to the first preset buffer threshold value, writing the data in the data internal reading buffer area into a storage medium, and writing target data in the data internal reading buffer area into a target storage position.
Further, in the apparatus as described above, the data internal processing buffer further includes: writing the data into a buffer area;
if the target data processing type is determined to be an internal processing type, the original storage position of the target data is a corresponding physical block address in a storage medium; the identification information of the target data further includes: offset and length of the target data within the physical block address;
The internal migration module is specifically configured to, when writing the data in the data internal read buffer into the storage medium:
intercepting corresponding target data in a data internal reading buffer zone according to the offset and the length of the target data in a physical block address, and writing the target data into a data internal writing buffer zone;
and if the data size in the data internal writing buffer area is larger than or equal to a second preset buffer threshold value, writing the data in the data internal writing buffer area into a target storage position of a storage medium.
Further, as described above, the data external processing engine includes: a decompression engine and a compression engine; the external processing type comprises an external reading type and an external writing type; if the target data processing type is an external writing type, the data processing instruction further includes: a target storage location for target data;
if the target data processing type is determined to be an external processing type, the external processing module is specifically configured to, when processing, by the data external processing engine, the target data corresponding to the identification information:
If the target data processing type is determined to be an external reading type, reading target data from an original storage position of the target data in a storage medium, decompressing the target data through a decompression engine and sending the decompressed target data to external equipment;
and if the target data processing type is determined to be the external writing type, acquiring target data from an original storage position of the target data in the external equipment, compressing the target data through a compression engine, and writing the compressed target data into a target storage position of a storage medium.
Further, as described above, the storage controller further comprises: a data selector;
the apparatus further comprises:
and the selector receiving module is used for receiving the data transmitted by the data internal reading buffer or the data internal writing buffer through the data selector and receiving the target data transmitted by the compression engine through the data selector.
Further, as described above, the storage controller further comprises: a common write buffer;
the apparatus further comprises:
the monitoring module is used for monitoring the data in the data selector; if the data transmitted by the data internal reading buffer area or the data internal writing buffer area and the data transmitted by the compression engine exist in the data selector at the same time, controlling the data selector to select the data according to a preset selection strategy and transmitting the selected data to the public writing buffer area; if the data size in the public write buffer area is larger than or equal to the third preset buffer threshold value, writing the data in the public write buffer area into a storage medium according to the target storage position;
The monitoring module is specifically configured to, when controlling the data selector to select data according to a preset selection policy:
and sequentially controlling the data selector to alternately select data sent by the compression engine or data sent by all internal reading buffers or data internal writing buffers according to a preset alternate selection sequence.
A third aspect of an embodiment of the present invention provides a storage device, including: a memory, a processor;
a memory; a memory for storing the processor-executable instructions;
wherein the processor is configured to perform the data processing method of any of the first aspects by the processor.
A fourth aspect of the embodiments of the present invention provides a computer-readable storage medium having stored therein computer-executable instructions which, when executed by a processor, are adapted to carry out the data processing method of any one of the first aspects.
A fifth aspect of an embodiment of the invention provides a computer program product comprising a computer program which, when executed by a processor, implements the data processing method of any of the first aspects.
The embodiment of the invention provides a data processing method, a device, equipment, a medium and a product, wherein the method is applied to a storage controller of storage equipment, and the storage equipment further comprises: a storage device drive and storage medium, the storage controller comprising: a data internal processing buffer, a data external processing engine, the method comprising: receiving a data processing instruction sent by the storage device driver, wherein the data processing instruction comprises the following steps: the target data processing type and the identification information of the target data; if the target data processing type is determined to be an internal processing type, migrating target data corresponding to the identification information stored in a storage medium in the storage medium through a data internal processing buffer; and if the target data processing type is determined to be the external processing type, processing the target data corresponding to the identification information through the data external processing engine. According to the data processing method, firstly, a data processing instruction sent by a storage device driver is received, corresponding data processing is performed according to the target data processing type of the data processing instruction, and if the target data processing type is determined to be the internal processing type, target data corresponding to the identification information stored in a storage medium is migrated in the storage medium through a data internal processing buffer zone, so that resources of a data external processing engine are not occupied. If the target data processing type is determined to be the external processing type, the target data corresponding to the identification information is processed through the data external processing engine, so that resources for internal data processing are not occupied. Therefore, the internal data processing and the external data processing are independently and separately executed, the influence on the read-write performance of the external data can be reduced by the internal data processing of the computable storage device, and the read-write performance of the external data is further improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention.
FIG. 1 is a diagram of a scenario in which a data processing method of an embodiment of the present invention may be implemented;
FIG. 2 is a flow chart of a data processing method according to a first embodiment of the present invention;
FIG. 3 is a flow chart of a data processing method according to a second embodiment of the present invention;
FIG. 4 is a flow chart of a data processing method according to a third embodiment of the present invention;
FIG. 5 is a simplified flowchart illustrating a data processing method according to a third embodiment of the present invention;
fig. 6 is a schematic diagram of a read-write flow of a data processing method according to a third embodiment of the present invention;
FIG. 7 is a schematic diagram of a data processing apparatus according to a fourth embodiment of the present invention;
fig. 8 is a schematic structural diagram of an electronic device according to a fifth embodiment of the present invention.
Specific embodiments of the present invention have been shown by way of the above drawings and will be described in more detail below. The drawings and the written description are not intended to limit the scope of the inventive concepts in any way, but rather to illustrate the inventive concepts to those skilled in the art by reference to the specific embodiments.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples do not represent all implementations consistent with the invention. Rather, they are merely examples of apparatus and methods consistent with aspects of the invention as detailed in the accompanying claims.
The technical scheme of the invention is described in detail below by specific examples. The following embodiments may be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments. Embodiments of the present invention will be described below with reference to the accompanying drawings.
For a clear understanding of the technical solutions of the present application, the prior art solutions will be described in detail first. The existing computable storage devices are all based on solid state disks of the computer flash memory devices essentially, and according to the physical characteristics of the computer flash memory devices, when the device driving is designed, the data moving operations such as garbage collection and wear balance of the storage devices are required to be considered to recover space and realize the maximization of the service life of the computer flash memory devices. These internal data processing mainly involves additional reading and writing of data, which in current computable storage products with transparent compression will also re-perform decompression and compression operations. When the external host needs the read-write operation, if the storage device is performing internal data processing, the internal data processing occupies the relevant performance of decompression and compression operations, so that the performance of external read-write is reduced.
Therefore, the inventor finds in research that, in order to solve the problem that the internal data processing of the existing computable storage device reduces the external read-write performance, the internal data processing can be independent, so that the external read-write performance is prevented from being reduced. Specifically, firstly, a data processing instruction sent by a storage device driver is received, corresponding data processing is performed according to a target data processing type of the data processing instruction, if the target data processing type is determined to be an internal processing type, target data corresponding to identification information stored in a storage medium is migrated in the storage medium through a data internal processing buffer zone, and resources of a data external processing engine are not occupied. If the target data processing type is determined to be the external processing type, the target data corresponding to the identification information is processed through the data external processing engine, so that the resources of internal data processing are not occupied. Therefore, the internal data processing and the external data processing are independently and separately executed, the influence on the read-write performance of the external data can be reduced by the internal data processing of the computable storage device, and the read-write performance of the external data is further improved.
The inventor puts forward the technical scheme of the application based on the creative discovery.
The application scenario of the data processing method provided by the embodiment of the invention is described below. As shown in fig. 1, 1 is an electronic device, and 2 is a storage device. The network architecture of the application scene corresponding to the data processing method provided by the embodiment of the invention comprises the following steps: an electronic device 1 and a storage device 2. When the electronic device 1 needs to read the target data stored in the storage device 2, a read instruction is sent to the storage device 2, and a storage device driver in the storage device 2 generates a corresponding data processing instruction according to the read instruction. The storage device driver transmits a data processing instruction to the storage controller, so that the storage controller reads corresponding target data from the storage medium and performs processing such as decompression on the target data through a data external processing engine, and the storage controller transmits the processed target data to the electronic device 1. When the electronic device 1 needs to write target data, a write instruction is sent to the storage device 2, and a storage device driver in the storage device 2 generates a corresponding data processing instruction according to the write instruction. The storage device driver transmits a data processing instruction to the storage controller so that the storage controller performs processing such as compression on target data through the data external processing engine, and simultaneously writes the compressed target data into the storage medium. When the storage device 2 needs to perform internal data processing, the storage device driver will send a corresponding data processing instruction to the storage controller, and after receiving the data processing instruction, the storage controller migrates the corresponding target data stored in the storage medium through the data internal processing buffer area in the storage medium. By migrating the internal data, the target data can be moved from the more worn storage space to the less worn storage space, thereby realizing wear balance. For example, the storage device driver may monitor the read-write times of different physical addresses in the storage medium in real time, and then send an instruction to the storage device controller, so that the storage device controller moves the storage data with the larger or the largest read-write times of the physical addresses to the physical address with the smaller or the smallest read-write times. Meanwhile, garbage data to be cleaned can be subjected to uniform cleaning operation by migrating the internal data, so that the storage space is recovered. For example, when garbage collection is needed, a collection instruction is sent to the storage device controller through the storage device driver, so that the storage device controller moves a plurality of corresponding data to the same physical address according to the collection instruction, and then unified collection and cleaning operation is performed. According to the data processing method, the internal data processing and the external data processing are independently and separately executed, so that the influence on the read-write performance of the external data can be reduced by the internal data processing of the computing storage device, and the read-write performance of the external data is further improved.
Embodiments of the present invention will now be described with reference to the accompanying drawings.
Fig. 2 is a flow chart of a data processing method according to a first embodiment of the present invention, as shown in fig. 2, in this embodiment, an execution body of the embodiment of the present invention is a data processing device, and the data processing device may be integrated in a memory controller. It should be noted that the storage device further includes: storage device drive and storage medium, the storage controller includes: data internal processing buffer and data external processing engine. The data processing method provided in this embodiment includes the following steps:
step S101, a data processing instruction sent by a storage device driver is received. The data processing instruction includes: the type of target data processing and identification information of the target data.
In this embodiment, the target data processing type refers to an external processing type and an internal processing type, and the external processing type refers to data processing related to data reading and writing required by an external device, such as a host device, a computer, or the like. The internal processing type refers to data processing related to data moving operations such as garbage collection, wear leveling and the like performed in the storage device.
The data external processing engine includes a compression engine and a decompression engine. The data internal processing buffer includes a data internal read buffer and a data internal write buffer. The data internal processing buffer zone is mainly used for pre-buffering data with a certain size, so that the number of times of data processing is reduced, and the efficiency of a data processing flow is improved.
Step S102, determining whether the target data processing type of the data processing instruction is an internal processing type, if yes, executing step S103, and if not, executing step S104.
In this embodiment, since the target data processing type includes an external processing type and an internal processing type, it is necessary to determine the target data processing type of the data processing instruction transmitted by the storage device driver. And thus, corresponding processing is performed according to the target data processing type.
Step S103, transferring the target data corresponding to the identification information stored in the storage medium through the data internal processing buffer area.
In this embodiment, when the target data processing type of the data processing instruction is an internal processing type, the storage controller needs to perform internal data processing, such as performing internal data migration operations, such as garbage collection, wear leveling, and the like. By migrating the internal data, the target data can be migrated from the more worn storage space to the less worn storage space, thereby realizing wear balance. Meanwhile, garbage data to be cleaned can be subjected to uniform cleaning operation by migrating the internal data, so that the storage space is recovered, and the storage space of the storage device is released.
Step S104, the target data corresponding to the identification information is processed by the data external processing engine.
In this embodiment, since the storage controller needs to perform compression operation on the stored data and decompression operation on the data to be read, the data external processing engine can perform corresponding processing on the target data corresponding to the identification information.
The embodiment of the invention provides a data processing method, which comprises the following steps: receiving a data processing instruction sent by a storage device driver, wherein the data processing instruction comprises: the type of target data processing and identification information of the target data. And if the target data processing type is determined to be the internal processing type, migrating target data corresponding to the identification information stored in the storage medium through a data internal processing buffer area in the storage medium. And if the target data processing type is determined to be the external processing type, processing the target data corresponding to the identification information through a data external processing engine. According to the data processing method, firstly, a data processing instruction sent by a storage device driver is received, corresponding data processing is performed according to the target data processing type of the data processing instruction, and if the target data processing type is determined to be the internal processing type, target data corresponding to identification information stored in a storage medium is migrated in the storage medium through a data internal processing buffer zone, so that resources of a data external processing engine are not occupied. If the target data processing type is determined to be the external processing type, the target data corresponding to the identification information is processed through the data external processing engine, so that the resources of internal data processing are not occupied. Therefore, the internal data processing and the external data processing are independently and separately executed, the influence on the read-write performance of the external data can be reduced by the internal data processing of the computable storage device, and the read-write performance of the external data is further improved.
Fig. 3 is a flow chart of a data processing method according to a second embodiment of the present invention, and as shown in fig. 3, the data processing method according to the present embodiment further refines each step based on the data processing method according to the previous embodiment of the present invention. The data processing method provided in this embodiment includes the following steps.
Step S201, a data processing instruction sent by a storage device driver is received.
In this embodiment, the implementation manner of step 201 is similar to that of step 101 in the previous embodiment of the present invention, and will not be described in detail here.
Step S202, determining whether the target data processing type of the data processing instruction is an internal processing type, if yes, executing step S203, otherwise, executing step S207.
In this embodiment, the implementation of step 202 is similar to that of step 102 in the previous embodiment of the present invention, and will not be described in detail here.
It should be noted that the data internal processing buffer area includes: the data reads the buffer internally. The identification information of the target data includes: original storage location of target data.
If the target data processing type is determined to be the internal processing type, the data processing instruction further comprises: target storage locations for target data.
In step S203, the target data is read from the storage medium according to the original storage location of the target data, and written into the data internal read buffer.
In this embodiment, when internal data processing is performed, it is necessary to migrate target data stored in a storage medium from an original storage location of the target data to a new target storage location. The original storage location of the target data on the storage medium may be determined by an address mapping table of the storage device drive. The address mapping table records the physical block address of the target data storage and the offset and length of the target data in the corresponding physical block address after compression.
In step S204, it is determined whether the data size in the data internal read buffer is greater than or equal to the first preset buffer threshold. If yes, step S205 is executed, and if no, step S206 is executed.
In this embodiment, the first preset buffer threshold may be set according to actual requirements, for example, set to 16KB bytes, 64KB bytes, and so on. When the data in the data internal reading buffer area is larger than or equal to the first preset buffer threshold value, the data in the data internal reading buffer area can be written into the storage medium. The data in the data internal reading buffer area is written into the storage medium after the data with the first preset buffer threshold value is read, so that the problem of low writing efficiency caused by scattered data in writing is avoided, the number of times of writing the data is reduced, and the efficiency of overall data migration is improved.
In step S205, the data in the data internal read buffer is written into the storage medium, and the target data in the data internal read buffer is written into the target storage location.
In this embodiment, since the data in the data internal read buffer is the data read from the storage medium, if the size of the target data itself is small, it is possible that the data in the data internal read buffer may include not only the target data but also other data. Thus, when writing data in the data internal read buffer to the storage medium, it is necessary to ensure that target data in the data internal read buffer is written to the target storage location.
Optionally, in this embodiment, the data internal processing buffer further includes: the data is written internally to the buffer.
If the target data processing type is determined to be the internal processing type, the original storage position of the target data is the corresponding physical block address in the storage medium. The identification information of the target data further includes: the offset and length of the target data within the physical block address.
Writing data in the data internal read buffer to the storage medium, comprising:
intercepting corresponding target data in a data internal reading buffer zone according to the offset and the length of the target data in the physical block address, and writing the target data into a data internal writing buffer zone.
And if the size of the data in the data internal writing buffer area is larger than or equal to the second preset buffer threshold value, writing the data in the data internal writing buffer area into a target storage position of the storage medium.
In this embodiment, when reading data, all data of the physical block address corresponding to the target data in the storage medium may be read, and then the read data is written into the data internal read buffer. And intercepting corresponding target data in a data internal reading buffer zone through the offset and the length of the target data in the physical block address, and writing the intercepted target data into a data internal writing buffer zone. Therefore, the data written into the buffer area in the data is the screened target data, and the efficiency of overall data migration is further improved through secondary buffering of the data written into the buffer area in the data.
The second preset buffer threshold may be set according to actual requirements, for example, set to 64KB bytes, 32KB bytes, etc., which is not limited in this embodiment.
In step S206, the data is written into the data internal read buffer.
In this embodiment, when the data in the data internal read buffer area does not reach the first preset buffer threshold, it is indicated that the data size in the data internal read buffer area is smaller, and new data needs to be continuously buffered.
The data external processing engine includes: decompression engine and compression engine. The external processing types include an external read type and an external write type. If the target data processing type is an external writing type, the data processing instruction further includes: target storage locations for target data.
Step S207 determines whether the target data processing type is an external read type. If yes, step S208 is executed, and if no, step S209 is executed.
In this embodiment, since the external processing type in the target data processing type includes an external read type and an external write type, the external read type is related to external read data, and the external write type is related to external write data. Thus, it is necessary to determine whether the target data processing type is an external read type, so that corresponding processing is performed according to the target data processing type.
Step S208, the target data is read from the original storage position of the target data in the storage medium, decompressed by the decompression engine and sent to the external device.
In this embodiment, if the target data processing type is an external reading type, since the data stored in the storage medium is compressed data, after the target data is read from the original storage location of the target data in the storage medium, the target data needs to be decompressed by the decompression engine, so that the external device can directly view the content of the target data.
In step S209, the target data is obtained from the original storage location of the target data in the external device, and the target data is compressed by the compression engine and written into the target storage location of the storage medium.
In this embodiment, if the target data processing type is an external writing type, the storage device needs to compress the data and store the compressed data in the storage medium when storing the data. Thus, after target data is acquired from the external device, the target data is subjected to compression processing by the compression engine and the compressed target data is written to a target storage location of the storage medium.
According to the data processing method provided by the embodiment of the invention, when internal data processing is performed, secondary buffering is performed through the data internal reading buffer area and the data internal writing buffer area, so that the efficiency of overall data migration is improved. When external data processing is performed, the compression engine and the decompression engine compress and decompress the target data, so that the data in the storage medium occupy smaller space after compression, and meanwhile, when external equipment needs to read the target data, the efficiency of reading the target data is not affected.
The data processing method provided in this embodiment is based on the data processing method provided in the previous embodiment of the present invention, and the flow of simultaneously performing the internal data processing and the external data processing is increased by setting the data selector in the memory controller. The data processing method provided in this embodiment includes the following steps.
It should be noted that the memory controller further includes: a data selector.
Optionally, the method further comprises:
the data transmitted from the data internal read buffer or the data internal write buffer is received through the data selector, and the target data transmitted from the compression engine is received through the data selector.
In this embodiment, the data selector is configured to receive data sent by the internal data read buffer or the internal data write buffer and receive target data sent by the compression engine. I.e. the data selector is arranged to receive data read during the internal data processing and data to be written to the storage medium during the external data processing corresponding to the external write type.
The data selector may select data read at the time of the internal data processing and data written to the storage medium corresponding to the external data processing after receiving the two-way data.
Meanwhile, the memory controller further includes: a common write buffer.
Optionally, the method further comprises:
the data in the data selector is monitored.
If the data selector is monitored to have the data transmitted by the data internal reading buffer area or the data internal writing buffer area and the data transmitted by the compression engine, the data selector is controlled to select the data according to a preset selection strategy, and the selected data is transmitted to the public writing buffer area.
And if the data size in the public write buffer area is larger than or equal to the third preset buffer threshold value, writing the data in the public write buffer area into the storage medium according to the target storage position.
Controlling data selection data of the data selector according to a preset selection strategy, including:
and sequentially controlling the data selector to alternately select data sent by the compression engine or data sent by all internal reading buffers or data internal writing buffers according to a preset alternate selection sequence.
In this embodiment, the common write buffer area is used to buffer the data read during the internal data processing and the data written to the storage medium correspondingly during the external data processing, so as to improve the efficiency of writing data. The third preset buffer threshold may be set according to actual requirements, which is not limited in this embodiment.
Since the data read during the internal data processing and the data corresponding to the external data processing and written into the storage medium need to be written into the new storage address in the storage medium, the scenario of simultaneously writing the two data is easy to occur. The data selector is controlled to alternately select the data sent by the compression engine or the data sent by all internal reading buffers or data internal writing buffers sequentially through a preset alternate selection sequence, so that the situation that the data occupy excessive writing performance in two aspects of simultaneous writing can be avoided, and the external reading and writing performance is further improved.
Meanwhile, the data selector can be controlled to select data according to the selection strategy of writing the data sent by the priority compression engine into the storage medium, so that the external read-write performance is further improved.
In order to describe the method of the present embodiment in more detail, three aspects of external read data, external write data, and internal migration data of a certain storage device will be described in detail.
Referring to fig. 4-6, the names of the various components therein are abbreviated for a more detailed view of the flow of the method. As shown in fig. 4, the storage controller of the apparatus includes, in addition to the function modules for reading from and writing to the storage medium, a compression engine responsible for transparent compression and a decompression engine responsible for decompression, a compression buffer, i.e., abbreviated compression buffer, a common write buffer, i.e., abbreviated common write buffer, a decompression buffer, i.e., abbreviated decompression buffer, an external data reading buffer, i.e., abbreviated external reading buffer, an internal data reading buffer, i.e., abbreviated internal reading buffer, and an internal data writing buffer, i.e., abbreviated internal writing buffer, and a data selector.
When the storage device receives an external write request (write request from the host side), the operation is performed as follows:
data corresponding to the external write request (in units of logical block/physical block size of the storage device) is sent to the compression buffer, and then the storage device driver returns a write operation completion signal to the host side.
When the data in the compression buffer area is accumulated to the size of a preset data block, the data corresponding to the data block is sent to a compression engine. As shown in fig. 5, the preset data block size of the compression buffer is 64KB, and if the storage device logical block size is 4KB, the compression buffer can accumulate the original data of 16 logical blocks.
The compression engine compresses the data by taking the size of the logic block of the storage device as a unit, and sends a completion signal to the data selector after the compression is finished.
The data selector sequentially sends each data compressed by the compression engine into the public write buffer area, and simultaneously returns the offset and the length corresponding to each compressed data logic block of the device driver, and the device driver updates the address mapping table according to the offset and the length.
When the data size in the common write buffer is smaller than the preset third buffer threshold and the difference between the data size and the preset third buffer threshold is smaller, as in fig. 5, the preset third buffer threshold in the common write buffer is 64KB, and the data size in the current common write buffer is 63KB. At this time, the data size may be padded to 64KB by padding invalid data, as shown in fig. 5, padding data of all 0. The memory controller then writes the data block to the storage medium and the common write buffer continues to receive data from the data selector.
When the device receives an external read request (read request from the host side), as in the right part of fig. 6, the operation is performed as follows:
the storage device driver looks up the actual physical block address and the corresponding offset and length of the (compressed) data from the mapping table of logical block addresses and physical block addresses according to the logical block address of the requested data. When no record exists, the logical block address is not written with the actual data, the storage device driver directly returns a read error, otherwise, the following operation is continued:
the storage device driver sends the physical block address corresponding to the data, the offset and length in the address and the external operation signal to the storage controller, and the storage controller reads the data of the corresponding physical block address and sends the data into the decompression buffer.
The storage controller intercepts the target data from the decompression buffer according to the offset and length of the target data in the physical block address, and the data (5) and the data (6) in the shaded portion in fig. 6 are the target data and are sent to the decompression engine.
The decompression engine decompresses the data (5) and the data (6), and the data sizes of the decompressed data (5) and the decompressed data (6) are 4KB. The decompressed data is returned to the data external reading buffer area and the storage device driver by the storage controller, and the storage device driver further returns corresponding data and a completion signal to the host end.
When the device needs to perform internal operations to move data, as shown in the left part of fig. 6, the operations are performed as follows:
the storage device driver queries the corresponding physical block address and the offset and length of the corresponding (compressed) data from the mapping table of the logical block address and the physical block address according to the logical block address of the data to be moved.
The device driver sends the physical block address corresponding to the data, the offset and length in the address and the internal operation signal to the memory controller, and the memory controller reads the data of the corresponding physical block address and sends the data to the internal read buffer area of the data.
The storage controller intercepts data in the data internal reading buffer zone according to the physical block address of the target data and the offset and length in the address, sends the intercepted target data into the data internal writing buffer zone, and then sends a finishing signal to the data selector. In fig. 6, the internal moving operation of two data blocks is shown, where data (3) is 3KB after being compressed, spans over two physical blocks of storage devices (8 KB), and data (4) is 2KB after being compressed, and is contained in one physical block of storage devices of 4 KB.
The data selector sends the data (3) and the data (4) written in the buffer area inside the data into the public write buffer area, and returns the length and the new offset corresponding to the original data logic block of the device driver, so that the storage device driver updates the address mapping table according to the length and the new offset.
Meanwhile, as shown in fig. 6, the external device has transmitted a request to write data at this time. The written data are data (1) size 4KB and data (2) size 4KB, respectively, and after compression by the compression engine, data (1) becomes 2.5KB and data (2) becomes 1KB.
At this time, the data selector sequentially writes the internally processed data (3) and the data (4) and the externally written data (1) and the data (2) into the common write buffer, and when the data size in the common write buffer is smaller than a preset third buffer threshold value, the common write buffer continues to receive the data from the data selector. When the data size in the common write buffer is greater than or equal to a preset third buffer threshold, writing the data (1), the data (2), the data (3) and the data (4) into the corresponding positions of the storage medium.
Fig. 7 is a schematic structural diagram of a data processing apparatus according to a fourth embodiment of the present invention, as shown in fig. 7, in this embodiment, a data processing apparatus 300 is located in a memory controller of a memory device, and the memory device further includes: storage device drive and storage medium, the storage controller includes: a data internal processing buffer, a data external processing engine, the data processing apparatus 300 comprising:
The instruction receiving module 301 is configured to receive a data processing instruction sent by the storage device driver, where the data processing instruction includes: the type of target data processing and identification information of the target data.
And the internal migration module 302 is configured to migrate, if the target data processing type is determined to be the internal processing type, the target data corresponding to the identification information stored in the storage medium through the data internal processing buffer.
And the external processing module 303 is configured to process, by using the data external processing engine, the target data corresponding to the identification information if the target data processing type is determined to be the external processing type.
The data processing apparatus provided in this embodiment may execute the technical scheme of the method embodiment shown in fig. 2, and its implementation principle and technical effects are similar to those of the method embodiment shown in fig. 2, and are not described in detail herein.
Meanwhile, the data processing apparatus provided by the present invention further refines the data processing apparatus 300 based on the data processing apparatus provided by the previous embodiment.
Optionally, in this embodiment, the data internal processing buffer includes: the data reads the buffer internally. The identification information of the target data includes: original storage location of target data.
If the target data processing type is determined to be the internal processing type, the data processing instruction further comprises: target storage locations for target data.
The internal migration module 302 is specifically configured to, when migrating target data corresponding to identification information stored in a storage medium through a data internal processing buffer, migrate the target data in the storage medium:
and reading the target data from the storage medium according to the original storage position of the target data, and writing the target data into a data internal reading buffer area. If the data size in the data internal reading buffer area is larger than or equal to the first preset buffer threshold value, writing the data in the data internal reading buffer area into a storage medium, and writing target data in the data internal reading buffer area into a target storage position.
Optionally, in this embodiment, the data internal processing buffer further includes: the data is written internally to the buffer.
If the target data processing type is determined to be the internal processing type, the original storage position of the target data is the corresponding physical block address in the storage medium. The identification information of the target data further includes: the offset and length of the target data within the physical block address.
The internal migration module 302 is specifically configured to, when writing data in the internal read buffer of data to the storage medium:
Intercepting corresponding target data in a data internal reading buffer zone according to the offset and the length of the target data in the physical block address, and writing the target data into a data internal writing buffer zone.
And if the size of the data in the data internal writing buffer area is larger than or equal to the second preset buffer threshold value, writing the data in the data internal writing buffer area into a target storage position of the storage medium.
Optionally, in this embodiment, the data external processing engine includes: decompression engine and compression engine. The external processing types include an external read type and an external write type. If the target data processing type is an external writing type, the data processing instruction further includes: target storage locations for target data.
If it is determined that the target data processing type is an external processing type, the external processing module 303 is specifically configured to, when processing, by the data external processing engine, the target data corresponding to the identification information:
and if the target data processing type is determined to be the external reading type, reading the target data from the original storage position of the target data in the storage medium, decompressing the target data by a decompression engine and sending the decompressed target data to external equipment.
If the target data processing type is determined to be the external writing type, the target data is acquired from the original storage position of the target data in the external equipment, the target data is compressed by the compression engine, and the compressed target data is written into the target storage position of the storage medium.
Optionally, in this embodiment, the storage controller further includes: a data selector.
The data processing apparatus 300 further includes:
and the selector receiving module is used for receiving the data transmitted by the data internal reading buffer area or the data internal writing buffer area through the data selector and receiving the target data transmitted by the compression engine through the data selector.
Optionally, in this embodiment, the storage controller further includes: a common write buffer.
The data processing apparatus 300 further includes:
and the monitoring module is used for monitoring the data in the data selector. If the data selector is monitored to have the data transmitted by the data internal reading buffer area or the data internal writing buffer area and the data transmitted by the compression engine, the data selector is controlled to select the data according to a preset selection strategy, and the selected data is transmitted to the public writing buffer area. And if the data size in the public write buffer area is larger than or equal to the third preset buffer threshold value, writing the data in the public write buffer area into the storage medium according to the target storage position.
The monitoring module is specifically configured to, when controlling the data selector to select data according to a preset selection policy:
and sequentially controlling the data selector to alternately select data sent by the compression engine or data sent by all internal reading buffers or data internal writing buffers according to a preset alternate selection sequence.
The data processing apparatus provided in this embodiment may execute the technical solution of the method embodiment shown in fig. 2 to 6, and its implementation principle and technical effects are similar to those of the method embodiment shown in fig. 2 to 6, and are not described in detail herein.
According to embodiments of the present invention, the present invention also provides an electronic device, a computer-readable storage medium, and a computer program product.
As shown in fig. 8, fig. 8 is a schematic structural diagram of an electronic device according to a fifth embodiment of the present invention. Electronic devices are intended for various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 8, the electronic device includes: a processor 401, and a memory 402. The various components are interconnected using different buses and may be mounted on a common motherboard or in other manners as desired. The processor may process instructions executing within the electronic device.
Memory 402 is a non-transitory computer readable storage medium provided by the present invention. The memory stores instructions executable by the at least one processor to cause the at least one processor to perform the data processing method provided by the present invention. The non-transitory computer readable storage medium of the present invention stores computer instructions for causing a computer to execute the data processing method provided by the present invention.
The memory 402 is used as a non-transitory computer readable storage medium for storing non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules (e.g., the instruction receiving module 301, the internal migration module 302, and the external processing module 303 shown in fig. 7) corresponding to the data processing method according to the embodiment of the present invention. The processor 401 executes various functional applications of the server and data processing, i.e., implements the data processing method in the above-described method embodiments, by running non-transitory software programs, instructions, and modules stored in the memory 402.
Meanwhile, the present embodiment also provides a computer product, which when executed by a processor of an electronic device, enables the electronic device to perform the data processing methods of the first to third embodiments.
Other implementations of the examples of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of embodiments of the invention following, in general, the principles of the embodiments of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the embodiments of the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the embodiments being indicated by the following claims.
It is to be understood that the embodiments of the invention are not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be made without departing from the scope thereof. The scope of embodiments of the invention is limited only by the appended claims.

Claims (10)

1. A data processing method, wherein the method is applied to a storage controller of a storage device, and the storage device further comprises: a storage device drive and storage medium, the storage controller comprising: a data internal processing buffer, a data external processing engine, the method comprising:
Receiving a data processing instruction sent by the storage device driver, wherein the data processing instruction comprises the following steps: the target data processing type and the identification information of the target data;
if the target data processing type is determined to be an internal processing type, migrating target data corresponding to the identification information stored in the storage medium to a physical address with the minimum read-write times in the storage medium through a data internal processing buffer zone;
and if the target data processing type is determined to be the external processing type, processing the target data corresponding to the identification information through the data external processing engine.
2. The method of claim 1, wherein the data internal processing buffer comprises: the data internal reading buffer area; the identification information of the target data includes: the original storage location of the target data;
if the target data processing type is determined to be an internal processing type, the data processing instruction further includes: a target storage location for target data;
the step of migrating the target data corresponding to the identification information stored in the storage medium to the physical address with the minimum read-write times in the storage medium comprises the following steps:
Reading the target data from a storage medium according to the original storage position of the target data, and writing the target data into a data internal reading buffer area;
if the data size in the data internal reading buffer area is larger than or equal to the first preset buffer threshold value, writing the data in the data internal reading buffer area into a storage medium, and writing target data in the data internal reading buffer area into a target storage position.
3. The method of claim 2, wherein the data internal processing buffer further comprises: writing the data into a buffer area;
if the target data processing type is determined to be an internal processing type, the original storage position of the target data is a corresponding physical block address in a storage medium; the identification information of the target data further includes: offset and length of the target data within the physical block address;
the writing the data in the data internal reading buffer into the storage medium includes:
intercepting corresponding target data in a data internal reading buffer zone according to the offset and the length of the target data in a physical block address, and writing the target data into a data internal writing buffer zone;
And if the data size in the data internal writing buffer area is larger than or equal to a second preset buffer threshold value, writing the data in the data internal writing buffer area into a target storage position of a storage medium.
4. A method according to claim 2 or 3, wherein the data external processing engine comprises: a decompression engine and a compression engine; the external processing type comprises an external reading type and an external writing type; if the target data processing type is an external writing type, the data processing instruction further includes: a target storage location for target data;
if the target data processing type is determined to be an external processing type, processing the target data corresponding to the identification information through the data external processing engine comprises the following steps:
if the target data processing type is determined to be an external reading type, reading target data from an original storage position of the target data in a storage medium, decompressing the target data through a decompression engine and sending the decompressed target data to external equipment;
and if the target data processing type is determined to be the external writing type, acquiring target data from an original storage position of the target data in the external equipment, compressing the target data through a compression engine, and writing the compressed target data into a target storage position of a storage medium.
5. The method of claim 4, wherein the memory controller further comprises: a data selector;
the method further comprises the steps of:
and receiving the data transmitted by the data internal reading buffer area or the data internal writing buffer area through the data selector, and receiving the target data transmitted by the compression engine through the data selector.
6. The method of claim 5, wherein the memory controller further comprises: a common write buffer;
the method further comprises the steps of:
monitoring the data in the data selector;
if the data transmitted by the data internal reading buffer area or the data internal writing buffer area and the data transmitted by the compression engine exist in the data selector at the same time, controlling the data selector to select the data according to a preset selection strategy and transmitting the selected data to the public writing buffer area;
if the data size in the public write buffer area is larger than or equal to the third preset buffer threshold value, writing the data in the public write buffer area into a storage medium according to the target storage position;
the controlling the data selector to select data according to a preset selection strategy comprises the following steps:
And sequentially controlling the data selector to alternately select data sent by the compression engine or data sent by all internal reading buffers or data internal writing buffers according to a preset alternate selection sequence.
7. A data processing apparatus, the apparatus being located in a memory controller of a memory device, the memory device further comprising: a storage device drive and storage medium, the storage controller comprising: a data internal processing buffer, a data external processing engine, the apparatus comprising:
the instruction receiving module is used for receiving a data processing instruction sent by the storage device driver, and the data processing instruction comprises the following components: the target data processing type and the identification information of the target data;
the internal migration module is used for migrating the target data corresponding to the identification information stored in the storage medium to a physical address with the minimum read-write times in the storage medium if the target data processing type is determined to be the internal processing type;
and the external processing module is used for processing the target data corresponding to the identification information through the data external processing engine if the target data processing type is determined to be the external processing type.
8. A memory device, comprising: a memory, a processor;
a memory; a memory for storing the processor-executable instructions;
wherein the processor is configured to perform the data processing method of any of claims 1 to 6 by the processor.
9. A computer-readable storage medium, in which computer-executable instructions are stored, which computer-executable instructions, when executed by a processor, are for implementing a data processing method according to any one of claims 1 to 6.
10. A computer program product comprising a computer program, characterized in that the computer program, when executed by a processor, implements the data processing method of any of claims 1 to 6.
CN202110466588.XA 2021-04-28 2021-04-28 Data processing method, device, equipment, medium and product Active CN113253923B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110466588.XA CN113253923B (en) 2021-04-28 2021-04-28 Data processing method, device, equipment, medium and product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110466588.XA CN113253923B (en) 2021-04-28 2021-04-28 Data processing method, device, equipment, medium and product

Publications (2)

Publication Number Publication Date
CN113253923A CN113253923A (en) 2021-08-13
CN113253923B true CN113253923B (en) 2023-05-09

Family

ID=77222073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110466588.XA Active CN113253923B (en) 2021-04-28 2021-04-28 Data processing method, device, equipment, medium and product

Country Status (1)

Country Link
CN (1) CN113253923B (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9330105B1 (en) * 2010-05-07 2016-05-03 Emc Corporation Systems, methods, and computer readable media for lazy compression of data incoming to a data storage entity
KR20140028930A (en) * 2012-08-31 2014-03-10 삼성전자주식회사 Data processing apparatus, method for processing data and computer readable recording medium storing for a program for performing the method
WO2015097739A1 (en) * 2013-12-24 2015-07-02 株式会社日立製作所 Storage device and control method therefor
US10444991B1 (en) * 2015-12-09 2019-10-15 EMC IP Holding Company, LLC In-place resumable partial decompression
US11580015B2 (en) * 2019-05-03 2023-02-14 EMC IP Holding Company LLC Garbage collection for a deduplicated cloud tier using functions
CN111880731B (en) * 2020-07-17 2023-03-21 北京浪潮数据技术有限公司 Data processing method and device and related components

Also Published As

Publication number Publication date
CN113253923A (en) 2021-08-13

Similar Documents

Publication Publication Date Title
US11112971B2 (en) Storage device, data management method, and data management program
CN109791522B (en) Data migration method and system and intelligent network card
US8909895B2 (en) Memory apparatus
US10402114B2 (en) Information processing system, storage control apparatus, storage control method, and storage control program
EP3992792A1 (en) Resource allocation method, storage device, and storage system
WO2021258749A1 (en) Write request data compression method, system, terminal, and storage medium
CN112394874B (en) Key value KV storage method and device and storage equipment
CN104516824A (en) Selective software-based data compression in a storage system based on data heat
WO2017006675A1 (en) Information processing system, storage control device, storage control method, and storage control program
JP2017527877A (en) Method and apparatus for reading / writing data from / to flash memory and user equipment
US20210278983A1 (en) Node Capacity Expansion Method in Storage System and Storage System
US20170003911A1 (en) Information processing device
US10635511B2 (en) Kernel update method and apparatus, and computer device
US9690658B2 (en) Distributed storage system and method
CN112039999A (en) Method and system for accessing distributed block storage system in kernel mode
CN103229150B (en) data control method and system
CN113220650B (en) Data storage method, apparatus, device, storage medium, and program
CN104408126A (en) Persistent writing method, device and system of database
CN113253923B (en) Data processing method, device, equipment, medium and product
KR102557557B1 (en) Electronic device and computing system including same
CN113805789A (en) Metadata processing method in storage device and related device
CN116027968A (en) Flash memory block reading frequency compression method and device, computer equipment and storage medium
CN115576863A (en) Data reading and writing method, storage device and storage medium
CN113467699B (en) Method and device for improving available storage capacity
WO2019124320A1 (en) Storage controller, storage array device, data depositing method, and recording medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant