CN109375868B - Data storage method, scheduling device, system, equipment and storage medium - Google Patents

Data storage method, scheduling device, system, equipment and storage medium Download PDF

Info

Publication number
CN109375868B
CN109375868B CN201811072602.2A CN201811072602A CN109375868B CN 109375868 B CN109375868 B CN 109375868B CN 201811072602 A CN201811072602 A CN 201811072602A CN 109375868 B CN109375868 B CN 109375868B
Authority
CN
China
Prior art keywords
write request
data
write
determining
mode
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
CN201811072602.2A
Other languages
Chinese (zh)
Other versions
CN109375868A (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.)
Shenzhen Aijieyun Technology Co ltd
Original Assignee
Shenzhen Aijieyun 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 Shenzhen Aijieyun Technology Co ltd filed Critical Shenzhen Aijieyun Technology Co ltd
Priority to CN201811072602.2A priority Critical patent/CN109375868B/en
Publication of CN109375868A publication Critical patent/CN109375868A/en
Application granted granted Critical
Publication of CN109375868B publication Critical patent/CN109375868B/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
    • G06F3/0613Improving I/O performance in relation to throughput
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device

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)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

The embodiment of the invention relates to the field of data storage, and discloses a data storage method, a scheduling device, a scheduling system, equipment and a storage medium. In the invention, the data storage method comprises the following steps: determining the data size of the received write request; determining a writing mode of the data in the writing request according to the data size of the writing request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the writing request into a memory; and storing the data in the writing request according to the determined writing mode. In the method, the writing mode of the data storage system to the data in the write request is flexibly adjusted according to the data size of the write request, so that the data storage system has high IOPS performance and high throughput performance.

Description

Data storage method, scheduling device, system, equipment and storage medium
Technical Field
The present invention relates to the field of data storage, and in particular, to a data storage method, a scheduling apparatus, a system, a device, and a storage medium.
Background
With the development of Internet Technology (IT) and Internet, especially with the rise of cloud computing, the huge amount of information puts higher demands on the storage system. Although traditional storage systems based on mechanical Hard Disk Drives (HDDs) can keep pace with capacity, their speed remains a bottleneck in storage service. The rapid development of Solid State Drives (SSD), a new storage medium, has injected new energy into storage systems. SSDs read and write fast, but have much smaller capacities than HDDs and are expensive. The hybrid storage system solves the problems that the traditional storage system mainly comprising the HDD is poor in performance and the cost for replacing the HDD by the SSD is too high, balances the requirements on cost and performance and has high application value. Enhanceio (encanceoo) software is an implementation of a hybrid storage technology, and uses an SSD as a cache between an HDD and a memory to achieve the purpose of improving performance. As a complete and available mixed storage scheme, the Enhanceio realizes a block device driver for processing read-write requests of an application program in a kernel space, and the performance of a storage system is remarkably improved.
However, the inventors found that at least the following problems exist in the prior art: the initial design of the hybrid storage system is to use the high number of times of read/write requests Per Second (IOPS) of the SSD, so that the performance of the hybrid storage system is significantly improved for read/write (IO) Operations with a relatively small data size (hereinafter referred to as small IO). However, the hybrid memory system is not friendly to IO operations with a relatively large data amount (hereinafter referred to as large IO). In addition, the hybrid memory system does not distinguish whether a write request is a random request or a sequential request, for which a follower request is cached. Sequential reading and writing of large data volume and low frequency, such as disk scanning, file copying and the like, can cause fluctuation to the reading and writing performance of the whole storage system. The cache scheduling mode of the hybrid storage system is too simple to fully utilize the high IOPS performance of the SSD and the high throughput performance of the HDD.
Disclosure of Invention
The invention aims to provide a data storage method, a scheduling device, a system, equipment and a storage medium, which flexibly adjust the writing mode of a data storage system to data in a write request according to the data size of the write request, so that the data storage system has the performance of high read-write request times and high throughput performance.
In order to solve the above technical problem, an embodiment of the present invention provides a data storage method, including the following steps: determining the data size of the received write request; determining a writing mode of data in the write request according to the data size of the write request; the writing mode is a first writing mode or a second writing mode; the first writing mode is to store the data in the writing request into a memory through a buffer; the second writing mode is that the data in the writing request is directly stored in the memory; and storing the data in the write request according to the determined write mode.
The embodiment of the present invention further provides a scheduling apparatus, including: the device comprises a detection module and a scheduling module; the detection module is used for determining the data size of the received write request; the scheduling module is used for determining a writing mode of data in the write request according to the data size of the write request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the writing request into a memory; and storing the data in the write request according to the determined write mode.
An embodiment of the present invention further provides a data storage system, including: scheduling means, a memory and a buffer; the scheduling device is used for determining the data size of the received write request; determining a writing mode of data in the write request according to the data size of the write request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the writing request into a memory; and storing the data in the write request according to the determined write mode.
An embodiment of the present invention further provides a data storage device, including: at least one processor; and a program memory communicatively coupled to the at least one processor; wherein the program memory stores instructions executable by the at least one processor to enable the at least one processor to perform the data storage methods as mentioned in the above embodiments.
The embodiment of the invention also provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to realize the data storage method mentioned in the above embodiment.
Compared with the prior art, the data writing method in the write request is determined according to the data size of the write request, so that the data storage system can write the data in the write request into the memory through the buffer, can directly write the data in the write request into the memory, and has the high IOPS performance of the buffer and the high throughput performance of the memory.
In addition, determining a writing mode of data in the write request according to the data size of the write request specifically includes: judging whether the data size of the write request is larger than a first threshold value or not; if so, determining that the writing mode is the first writing mode; if not, determining a write request stream to which the write request belongs according to the sector position corresponding to the write request; determining a current data size of a write request stream; and determining the writing mode of the write request according to the current data size of the write request stream. In the implementation, the data in the write request with large data volume is directly written into the memory, so that fluctuation of the write request with large data volume on the read-write performance of the data storage system is avoided, and the stability of the system is improved. For the write request with smaller data volume, the write mode of the write request is determined according to the data volume of the write request stream logically belonging to the write request, so that the data storage system can directly write the data in the write request with the sequential request into the memory, the replacement of the data in the cache is avoided as much as possible, the sequential write performance of the memory is more fully utilized, and the performance consumption of the cache is reduced.
In addition, determining a write mode of the write request according to the current data size of the write request stream specifically includes: determining a current scheduling strategy; the current scheduling strategy is used for indicating the corresponding relation between the data size of the write request stream and the write-in mode; and determining the writing mode of the writing request according to the current scheduling strategy and the current data size of the writing request stream.
In addition, determining the current scheduling policy specifically includes: determining the data size of all write request streams received in the last period; determining a scheduling strategy of the current period according to the data size of all the write request streams received in the previous period; and determining the current scheduling strategy according to the scheduling strategy of the current period. In the implementation, the data storage system can adjust the current scheduling strategy in real time according to the condition of the received write request stream, and the utilization rate of the data storage system on the performances of the memory and the buffer is further improved.
In addition, determining the scheduling policy of the current cycle according to the data size of all the write request streams received in the previous cycle specifically includes: determining the number of the write request streams with the data size exceeding a first threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the first threshold as a first number; determining the number of the write request streams with the data size exceeding a second threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the second threshold as a second number; wherein the second threshold is greater than the first threshold; calculating the ratio of the second number to the first number; and determining the scheduling strategy of the current period according to the ratio.
In addition, the writing mode also comprises a second writing mode, wherein the second writing mode is to write the data in the writing request into the buffer and then store the data in the memory from the buffer; determining a scheduling strategy of the current period according to the ratio, specifically comprising: judging whether the ratio exceeds a third threshold value; if so, determining that the scheduling strategy of the current period is a first strategy; the first strategy is that if the size of the data of the write request stream does not exceed a first threshold value, the writing mode of the data in the write request is a second writing mode, and if the size of the data of the write request stream exceeds the first threshold value, the writing mode of the data in the write request is a first writing mode; if not, determining that the scheduling strategy of the current period is a second strategy; the second policy is that if the size of the data of the write request stream does not exceed a fourth threshold, the write mode of the data in the write request is the second write mode, and if the size of the data of the write request stream exceeds the fourth threshold, the write mode of the data in the write request is the first write mode, wherein the fourth threshold is greater than the first threshold.
In addition, after storing the data in the write request according to the determined writing mode, the data storage method further includes: and if the determined writing mode is determined to be the first writing mode, marking the data corresponding to the data in the writing request in the buffer as invalid. In the implementation, the corresponding data in the buffer is invalidated, and the consistency of the data in the memory and the buffer is ensured.
In addition, the scheduling module comprises a judging module, a first processing submodule and a second processing submodule; the judging module is used for judging whether the data size of the write request is larger than a first threshold value or not; the first processing submodule is used for determining that the writing mode is the first writing mode after the judging module determines that the data size of the writing request is larger than the first threshold; the second processing submodule is used for determining a write request stream to which the write request belongs according to the sector position corresponding to the write request after the judging module determines that the data size of the write request is not larger than the first threshold; determining a current data size of a write request stream; and determining the writing mode of the write request according to the current data size of the write request stream.
In addition, the second processing submodule is specifically configured to: determining a current scheduling strategy; the current scheduling strategy is used for indicating the corresponding relation between the data size of the write request stream and the write-in mode; and determining the writing mode of the writing request according to the current scheduling strategy and the current data size of the writing request stream.
In addition, the second processing submodule is specifically configured to: determining the data size of all write request streams received in the last period; determining a scheduling strategy of the current period according to the data size of all the write request streams received in the previous period; and determining the current scheduling strategy according to the scheduling strategy of the current period.
In addition, the second processing submodule is specifically configured to: determining the number of the write request streams with the data size exceeding a first threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the first threshold as a first number; determining the number of the write request streams with the data size exceeding a second threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the second threshold as a second number; wherein the second threshold is greater than the first threshold; calculating the ratio of the second number to the first number; and determining the scheduling strategy of the current period according to the ratio.
In addition, the writing mode also comprises a second writing mode, wherein the second writing mode is to write the data in the writing request into the buffer and then store the data in the memory from the buffer; the second processing submodule is specifically configured to: judging whether the ratio exceeds a third threshold value; if so, determining that the scheduling strategy of the current period is a first strategy; the first strategy is that if the data size of the write request stream does not exceed a first threshold, the writing mode of the data in the write request is a second writing mode, and if the data size of the write request stream exceeds the first threshold, the writing mode of the data in the write request is a first writing mode; if not, determining that the scheduling strategy of the current period is a second strategy; the second policy is that if the data size of the write request stream does not exceed a fourth threshold, the write mode of the data in the write request is the second write mode, and if the data size of the write request stream exceeds the fourth threshold, the write mode of the data in the write request is the first write mode, wherein the fourth threshold is greater than the first threshold.
Drawings
One or more embodiments are illustrated by way of example in the accompanying drawings which correspond to and are not to be construed as limiting the embodiments, in which elements having the same reference numeral designations represent like elements throughout, and in which the drawings are not to be construed as limiting in scale unless otherwise specified.
FIG. 1 is a method flow diagram of a data storage method according to a first embodiment of the present invention;
FIG. 2 is a method flow diagram of a data storage method according to a second embodiment of the present invention;
FIG. 3 is a diagram of a linked list tracking write request streams according to a second embodiment of the present invention;
FIG. 4 is a schematic diagram of a write request stream of a previous cycle in a second embodiment of the present invention;
fig. 5 is a schematic structural diagram of a scheduling apparatus according to a third embodiment of the present invention;
FIG. 6 is a schematic structural diagram of a scheduling apparatus according to a fourth embodiment of the present invention;
FIG. 7 is a schematic structural diagram of a data storage system according to a fifth embodiment of the present invention;
FIG. 8 is an interactive schematic diagram of devices in a data storage system according to a fifth embodiment of the present invention;
fig. 9 is a schematic structural diagram of a data storage device according to a sixth embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention more apparent, embodiments of the present invention will be described in detail below with reference to the accompanying drawings. However, it will be appreciated by those of ordinary skill in the art that numerous technical details are set forth in order to provide a better understanding of the present application in various embodiments of the present invention. However, the technical solution claimed in the present application can be implemented without these technical details and various changes and modifications based on the following embodiments.
The first embodiment of the invention relates to a data storage method, which is applied to a data storage system. In this embodiment, the data storage system is an enhanced Disk Drive (e.g., an enhanced Disk Drive, HDD) as an example, the memory is a Hard Disk Drive (Hard Disk Drive, HDD), and the buffer is a Solid State Drive (SSD), which can be understood by those skilled in the art that the memory and the buffer may also be other devices with read/write functions. The specific flow of the data storage method is shown in fig. 1, and includes the following steps:
step 101: the data size of the received write request is determined.
Specifically, a scheduler in the data storage system detects an incoming IO operation, determines whether the IO operation is a write request, and if so, determines the data size of the IO operation (write request).
Step 102: and determining the writing mode of the data in the write request according to the data size of the write request.
Specifically, the writing method includes a first writing method. The first writing mode is to directly store the data in the writing request into the memory.
In a specific implementation, the writing mode further includes a second writing mode, and the second writing mode writes the data in the write request into the buffer, and then stores the data in the memory from the buffer. And if the scheduling device determines that the data size of the write request reaches the first threshold value, the scheduling device directly writes the data in the write request into the HDD, and if the scheduling device determines that the data size of the write request does not reach the first threshold value, the scheduling device writes the data in the write request into the SSD, and writes the data in the write request into the HDD from the SSD in an asynchronous writing mode.
In another specific implementation, the scheduling device directly writes the data in the write request into the HDD if it is determined that the data size of the write request reaches the first threshold, and further determines the write request to determine the write mode of the data in the write request if it is determined that the data size of the write request does not reach the first threshold.
Step 103: and storing the data in the write request according to the determined write mode.
It should be noted that, in practical applications, after determining that the write mode of the data corresponding to the write request is the first write mode, after writing the data in the write request into the HDD, it is detected whether the data corresponding to the data in the write request is stored in the SSD, if it is determined that the data exists, the data corresponding to the data in the write request in the buffer is marked as invalid, and if it is determined that the data does not exist, the data is directly returned to execute the subsequent received IO operation.
It is worth mentioning that the corresponding data in the buffer is invalidated, thereby ensuring the consistency of the data in the memory and the buffer.
The above description is only for illustrative purposes and does not limit the technical aspects of the present invention.
Compared with the prior art, according to the data storage method provided in the embodiment, when the data volume of the write request is large, the data in the write request is directly written into the memory, and when the data volume of the write request is small, the data in the write request is written into the memory through the buffer, so that the data storage system has the high IOPS performance of the buffer and the high throughput performance of the memory at the same time, and the utilization rates of the buffer and the memory are improved. In addition, the data storage system directly writes the data in the write request with large data volume into the memory, so that the fluctuation of the write request with large data volume on the read-write performance of the data storage system is avoided, and the stability of the system is improved.
The second embodiment of the present invention relates to a data storage method applied to a data storage system, and this embodiment is a refinement of the first embodiment, and specifically describes an implementation manner of step 102.
Specifically, as shown in fig. 2, the present embodiment includes steps 201 to 207, where steps 201 and 207 are substantially the same as steps 101 and 103 in the first embodiment, respectively, and are not repeated here. The following mainly introduces the differences:
step 201: the data size of the received write request is determined.
Step 202: it is determined whether the data size of the write request is greater than a first threshold.
Specifically, if the scheduling apparatus determines that the data size of the write request is greater than the first threshold, step 203 is executed, otherwise, step 204 is executed.
It should be noted that, in practical applications, the first threshold may be determined according to the read-write performance of the memory and the buffer, as will be understood by those skilled in the art.
Step 203: and determining that the writing mode of the data in the writing request is the first writing mode. Step 207 is then performed.
Specifically, the scheduling device directly writes the data in the write request with large data volume into the memory, so that the fluctuation of the read-write performance of the data storage system is avoided.
Step 204: and determining a write request stream to which the write request belongs according to the sector position corresponding to the write request.
In particular, when storing data, the data storage system may fall on the physical disk through many application layers. Taking copying a large file as an example, the large file will fall on the physical disk from top to bottom through the virtual file system layer, the general block layer, the IO scheduling layer, the device driver layer, and the like. And the large file of each application layer may be split into a plurality of small files to be issued, and the lower layer can see a write request indicating that the data volume is smaller. Therefore, when determining the writing mode of the data in the write request, it is necessary to logically recombine the write requests with smaller data amount, logically restore the write requests to the write request stream, and determine the type of the write request stream according to the data size of the logically restored write request stream. If the write request stream data size is larger, the probability that the write request stream is a sequentially requested write request is higher, so that the write request stream can be directly written into the HDD to fully utilize the high throughput performance of the HDD.
It is worth mentioning that, for a write request with a small data volume, the write mode of the write request is determined according to the data volume of the write request stream to which the write request belongs logically, so that the data storage system can directly write the data in the write request of the sequential request into the memory, thereby avoiding the replacement of the data in the cache as much as possible, more fully utilizing the sequential write performance of the memory, and reducing the performance consumption of the cache.
A method of determining a write request stream to which a write request belongs is explained below. For clarity, a write request currently received by the scheduling apparatus is denoted as a first write request, and a sector location corresponding to the first write request is denoted as a first sector location. The scheduling device judges whether other write requests, the sector position of which is adjacent to the first sector position and is positioned before the first sector position, are received before the first write request is received; if so, taking a write request stream to which other write requests (hereinafter referred to as second write requests) meeting the requirements as a write request stream to which the first write request belongs, and logically recombining the second write requests and the first write requests, namely logically recombining the first write requests to the write request stream to which the first write requests belong; if it is determined that the second write request is not received before the first write request is received, the write request stream to which the first write request belongs is the first write request itself.
In a specific implementation, the scheduling apparatus stores a linked list for tracking write request streams, and the linked list is as shown in fig. 3. Wherein each row is used for recording information of one write request stream. After receiving a write request, the scheduling device determines the write request stream to which the write request stream belongs and recombines the write request on the write request stream to which the write request belongs.
Step 205: the current data size of the write request stream is determined.
Specifically, the scheduling device tracks and records information such as the data size of each write request stream, and determines the current data size of the write request stream according to the information of the track record after determining the write request stream to which the write request belongs.
Step 206: and determining the writing mode of the write request according to the current data size of the write request stream.
Specifically, the scheduling device determines a current scheduling policy, and determines a write mode of the write request according to the current scheduling policy and the current data size of the write request stream. The current scheduling policy is used to indicate the correspondence between the data size of the write request stream and the write mode.
It should be noted that, as can be understood by those skilled in the art, the current scheduling policy may be a fixed policy, or may be a policy that the scheduling apparatus dynamically adjusts according to the situation of the write request stream.
The following illustrates a method of determining the current scheduling policy. In specific implementation, a scheduling device determines the data size of all write request streams received in the previous period; determining a scheduling strategy of the current period according to the data size of all the write request streams received in the previous period; and determining the current scheduling strategy according to the scheduling strategy of the current period. Specifically, the scheduling device determines the number of write request streams with data size exceeding a first threshold value among all write request streams received in the previous cycle, and takes the number of write request streams with data size exceeding the first threshold value as the first number. And the scheduling device determines the number of the write request streams with the data size exceeding the second threshold in all the write request streams received in the previous period, and takes the number of the write request streams with the data size exceeding the second threshold as the second number. Wherein the second threshold is greater than the first threshold. The scheduling device calculates the ratio of the second number to the first number, and determines the scheduling strategy of the current period according to the ratio.
The method for determining the scheduling strategy of the current period by the scheduling device according to the ratio of the second number to the first number comprises the following steps: the scheduling device judges whether the ratio of the second number to the first number exceeds a third threshold value; if so, determining that the scheduling strategy of the current period is a first strategy; if not, determining that the scheduling strategy of the current period is the second strategy. The first policy is that if the data size of the write request stream to which the write request belongs does not exceed a first threshold, the write mode of the data in the write request is a second write mode, and if the data size of the write request stream to which the write request belongs exceeds the first threshold, the write mode of the data in the write request is a first write mode. The second strategy is that if the data size of the write request stream to which the write request belongs does not exceed a fourth threshold, the write mode of the data in the write request is the second write mode, and if the data size of the write request stream to which the write request belongs exceeds the fourth threshold, the write mode of the data in the write request is the first write mode. Wherein the fourth threshold is greater than the first threshold.
The following describes a method for determining a current scheduling policy by a scheduling device according to a write request stream received in a previous cycle, with reference to an actual scenario.
Assuming that the write request streams of the previous cycle are as shown in fig. 4, including 4 write request streams (Seq _ io 1, Seq _ io 2, Seq _ io 3, and Seq _ io 4), the number of write request streams whose data size exceeds the first threshold (first number) is 3, and the number of write request streams whose data size exceeds the second threshold (second number) is 2. Thus, the ratio of the second number to the first number is 2/3. And judging whether the ratio is greater than a third threshold, if so, determining that the scheduling policy of the current period is a first policy, namely, if the scheduling device determines that the data size of the write request stream to which the write request belongs exceeds a first threshold, directly writing the data in the write request into the memory, and if not, writing the data in the write request into the buffer and asynchronously writing the data back into the memory through the buffer. If the ratio of the second number to the first number is not larger than the third threshold, determining that the scheduling policy of the current period is the second policy, that is, if the scheduling device determines that the data size of the write request stream to which the write request belongs exceeds the fourth threshold, directly writing the data in the write request into the memory, and if the data size of the write request stream to which the write request belongs does not exceed the fourth threshold, writing the data in the write request into the buffer, and asynchronously writing the data back into the memory through the buffer. For example, if the third threshold is set to 60%, the scheduling policy of the current cycle is the first scheduling policy.
It should be noted that in a specific implementation, in the case that the scheduling device periodically counts the write request stream, the time length of each period may be 10s or other time lengths.
It should be noted that, as will be understood by those skilled in the art, the data size of the write request stream to which the write request belongs may be the data size of the write request stream after the current write request is logically reassembled into the write request stream, or may also be the data size of the write request stream before the current write request is logically reassembled into the write request stream.
It should be noted that, as will be understood by those skilled in the art, the second threshold, the third threshold and the fourth threshold may be set according to the read-write performance of the memory and the buffer. The fourth threshold may be a fixed value or a value dynamically adjusted according to the data size of the write request received by the data storage system. The fourth threshold is slightly larger than the data size of most of the write requests received by the data storage system, so when the data size of a write request is larger than the fourth threshold, the data size of the write request can be considered to be large, and the data in the write request is directly written into the HDD.
It is worth mentioning that the data storage system can adjust the current scheduling policy in real time according to the current situation of the write request stream, thereby further improving the utilization rate of the data storage system for the performance of the memory and the buffer.
Step 207: and storing the data in the write request according to the determined write mode.
The above description is only for illustrative purposes and does not limit the technical aspects of the present invention.
Compared with the prior art, according to the data storage method provided in the embodiment, when the data volume of the data of the write request is large, the data in the write request is directly written into the memory, and when the data volume of the write request is small, the data in the write request is written into the memory through the buffer, so that the data storage system has the high IOPS performance of the buffer and the high throughput performance of the memory at the same time, the performance of the buffer and the memory is fully utilized, and the utilization rate of the buffer and the memory is improved. In addition, the data storage system directly writes the data in the write request with large data volume into the memory, so that the fluctuation of the write request with large data volume on the read-write performance of the data storage system is avoided, and the stability of the system is improved. In addition, the data storage system adjusts the current scheduling strategy in real time according to the current situation of the write request stream, and the utilization rate of the data storage system on the performances of the memory and the buffer is further improved.
The steps of the above methods are divided for clarity, and the implementation may be combined into one step or split some steps, and the steps are divided into multiple steps, so long as the same logical relationship is included, which are all within the protection scope of the present patent; it is within the scope of the patent to add insignificant modifications to the algorithms or processes or to introduce insignificant design changes to the core design without changing the algorithms or processes.
A third embodiment of the present invention relates to a scheduling apparatus, as shown in fig. 5, including: a detection module 301 and a scheduling module 302. The detection module 301 is configured to determine a data size of a received write request, and the scheduling module 302 is configured to determine a write mode of data in the write request according to the data size of the write request; the writing mode comprises a first writing mode, and the first writing mode is to directly store the data in the writing request into the memory; and storing the data in the write request according to the determined write mode.
It should be understood that this embodiment is an example of the apparatus corresponding to the first embodiment, and may be implemented in cooperation with the first embodiment. The related technical details mentioned in the first embodiment are still valid in this embodiment, and are not described herein again in order to reduce repetition. Accordingly, the related-art details mentioned in the present embodiment can also be applied to the first embodiment.
It should be noted that each module referred to in this embodiment is a logical module, and in practical applications, one logical unit may be one physical unit, may be a part of one physical unit, and may be implemented by a combination of multiple physical units. In addition, in order to highlight the innovative part of the present invention, elements that are not so closely related to solving the technical problems proposed by the present invention are not introduced in the present embodiment, but this does not indicate that other elements are not present in the present embodiment.
A fourth embodiment of the present invention relates to a scheduling apparatus, and the present embodiment is a further refinement of the third embodiment, and specifically describes the operation of the scheduling module 302.
As shown in fig. 6, the scheduling module 302 includes a decision module 3021, a first processing sub-module 3022, and a second processing sub-module 3023. The judging module 3021 is configured to judge whether the data size of the write request is greater than a first threshold; the first processing submodule 3022 is configured to determine that the writing mode is the first writing mode after the determining module 3021 determines that the data size of the write request is greater than the first threshold. The second processing submodule 3023 is configured to, after the determining module 3021 determines that the data size of the write request is not greater than the first threshold, determine, according to the sector position corresponding to the write request, a write request stream to which the write request belongs; determining a current data size of a write request stream; and determining the writing mode of the write request according to the current data size of the write request stream.
Specifically, the second processing submodule 3023 is specifically configured to: determining a current scheduling strategy; the current scheduling strategy is used for indicating the corresponding relation between the data size of the write request stream and the write-in mode; and determining the writing mode of the writing request according to the current scheduling strategy and the current data size of the writing request stream. Further, the second processing submodule 3023 is specifically configured to: determining the data size of all write request streams received in the last period; determining a scheduling strategy of the current period according to the data size of all the write request streams received in the previous period; and determining the current scheduling strategy according to the scheduling strategy of the current period. Further, the second processing submodule 3023 is specifically configured to: determining the number of the write request streams with the data size exceeding a first threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the first threshold as a first number; determining the number of the write request streams with the data size exceeding a second threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the second threshold as a second number; wherein the second threshold is greater than the first threshold; calculating the ratio of the second number to the first number; and determining the scheduling strategy of the current period according to the ratio.
Furthermore, the writing mode also comprises a second writing mode, wherein the second writing mode is to write the data in the writing request into the buffer and then store the data in the memory from the buffer. The second processing submodule 3023 is specifically configured to: judging whether the ratio exceeds a third threshold value; if so, determining that the scheduling strategy of the current period is a first strategy; the first strategy is that if the data size of the write request stream does not exceed a first threshold, the writing mode of the data in the write request is a second writing mode, and if the data size of the write request stream exceeds the first threshold, the writing mode of the data in the write request is a first writing mode; if not, determining that the scheduling strategy of the current period is a second strategy; the second policy is that if the data size of the write request stream does not exceed a fourth threshold, the write mode of the data in the write request is the second write mode, and if the data size of the write request stream exceeds the fourth threshold, the write mode of the data in the write request is the first write mode, where the fourth threshold is greater than the first threshold.
It should be understood that this embodiment is an example of the apparatus corresponding to the second embodiment, and that this embodiment can be implemented in cooperation with the second embodiment. The related technical details mentioned in the second embodiment are still valid in this embodiment, and are not described herein again in order to reduce repetition. Accordingly, the related-art details mentioned in the present embodiment can also be applied to the second embodiment.
A fifth embodiment of the present invention relates to a data storage system, for example, an enhanced hybrid storage system, as shown in fig. 6, including: scheduler 401, memory 402 and buffer 403. The scheduling device 401 is configured to determine a data size of the received write request; determining a writing mode of data in the write request according to the data size of the write request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the writing request into a memory; and storing the data in the write request according to the determined write mode.
In a specific implementation, an interaction diagram of each device in the data storage system is shown in fig. 7, IO represents a read/write request, the memory 402 is an HDD as an example, and the buffer 403 is an SSD as an example. The detection module 301 of the scheduling apparatus 401 detects the IO, determines the data size of the write request after determining that the IO is the write request, and the scheduling module 302 of the scheduling apparatus 401 determines the write mode of the data in the write request according to the data size of the write request, and directly writes the data in the write request into the memory 402 according to the determined write mode, or writes the data into the buffer 403, and asynchronously writes the data back to the memory 402 through the buffer 403.
It should be understood that this embodiment is a system example corresponding to the first embodiment, and may be implemented in cooperation with the first embodiment. The related technical details mentioned in the first embodiment are still valid in this embodiment, and are not described herein again in order to reduce repetition. Accordingly, the related-art details mentioned in the present embodiment can also be applied to the first embodiment.
It should be noted that each module referred to in this embodiment is a logical module, and in practical applications, one logical unit may be one physical unit, may be a part of one physical unit, and may be implemented by a combination of multiple physical units. In addition, in order to highlight the innovative part of the present invention, elements that are not so closely related to solving the technical problems proposed by the present invention are not introduced in the present embodiment, but this does not indicate that other elements are not present in the present embodiment.
A sixth embodiment of the present invention is directed to a data storage device, as shown in fig. 9, comprising at least one processor 501; and a program memory 502 communicatively coupled to the at least one processor 501; wherein the program memory 502 stores instructions executable by the at least one processor 501, the instructions being executable by the at least one processor 501 to enable the at least one processor 501 to perform the data storage methods as mentioned in the above embodiments.
The data storage device includes: one or more processors 501 and a program memory 502, with one processor 501 being an example in fig. 9. The processor 501 and the program memory 502 may be connected by a bus or other means, and fig. 9 illustrates the connection by a bus as an example. Program memory 502, which is a non-volatile computer-readable storage medium, may be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. The processor 501 executes various functional applications of the device and data processing by executing nonvolatile software programs, instructions, and modules stored in the program memory 502, that is, implements the above-described data storage method.
The program memory 502 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store a list of options, etc. Further, the program memory 502 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, program memory 502 optionally includes memory located remotely from processor 501, which may be connected to an external device via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
One or more modules are stored in the program memory 502, which when executed by the one or more processors 501 perform the data storage method of any of the method embodiments described above.
The product can execute the method provided by the embodiment of the application, has corresponding functional modules and beneficial effects of the execution method, and can refer to the method provided by the embodiment of the application without detailed technical details in the embodiment.
A seventh embodiment of the present invention relates to a computer-readable storage medium storing a computer program. The computer program realizes the above-described method embodiments when executed by a processor.
That is, as can be understood by those skilled in the art, all or part of the steps in the method for implementing the embodiments described above may be implemented by a program instructing related hardware, where the program is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps of the method described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
It will be understood by those of ordinary skill in the art that the foregoing embodiments are specific examples for carrying out the invention, and that various changes in form and details may be made therein without departing from the spirit and scope of the invention in practice.

Claims (14)

1. A method of storing data, comprising:
determining the data size of the received first write request;
determining a writing mode of data in the first writing request according to the data size of the first writing request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the first writing request into a memory;
storing the data in the first write request according to the determined write-in mode;
determining a writing mode of data in the first write request according to the data size of the first write request specifically includes:
judging whether the data size of the first write request is larger than a first threshold value or not;
if so, determining that the writing mode is the first writing mode;
if not, determining a write request stream to which the first write request belongs according to a first sector position corresponding to the first write request, wherein each write request stream comprises a plurality of write requests correspondingly formed after an application file is split into a plurality of files; determining a current data size of the write request stream; determining a writing mode of the first write request according to the current data size of the write request stream;
the determining, according to the first sector position corresponding to the first write request, a write request stream to which the first write request belongs specifically includes:
judging whether a second write request with a sector position adjacent to and before the first sector position is received before the first write request is received;
if yes, logically recombining the first write request to a write request stream to which the second write request belongs, and taking the recombined write request stream as the write request stream to which the first write request belongs;
if not, the write request stream to which the first write request belongs is the first write request itself.
2. The data storage method according to claim 1, wherein the determining a writing manner of the first write request according to the current data size of the first write request stream specifically includes:
determining a current scheduling strategy; the current scheduling policy is used for indicating the corresponding relation between the data size of the write request stream and the write mode;
and determining the writing mode of the first writing request according to the current scheduling strategy and the current data size of the writing request stream.
3. The data storage method according to claim 2, wherein the determining the current scheduling policy specifically includes:
determining the data size of all write request streams received in the last period;
determining a scheduling strategy of the current period according to the data size of all the write request streams received in the previous period;
and determining the current scheduling strategy according to the scheduling strategy of the current period.
4. The data storage method according to claim 3, wherein the determining the scheduling policy of the current cycle according to the data sizes of all the write request streams received in the previous cycle specifically includes:
determining the number of the write request streams with the data size exceeding the first threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the first threshold as a first number;
determining the number of the write request streams with the data size exceeding a second threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the second threshold as a second number; wherein the second threshold is greater than the first threshold;
calculating the ratio of the second number to the first number;
and determining the scheduling strategy of the current period according to the ratio.
5. The data storage method according to claim 4, wherein the writing modes further include a second writing mode, and the second writing mode is that the data in the write request is written into a buffer and then stored into the memory from the buffer;
the determining the scheduling policy of the current period according to the ratio specifically includes:
judging whether the ratio exceeds a third threshold value;
if so, determining that the scheduling strategy of the current period is a first strategy; the first policy is that if the data size of the write request stream does not exceed the first threshold, the write mode of the data in the first write request is the second write mode, and if the data size of the write request stream exceeds the first threshold, the write mode of the data in the first write request is the first write mode;
if not, determining that the scheduling strategy of the current period is a second strategy; the second policy is that if the data size of the write request stream does not exceed a fourth threshold, the write mode of the data in the first write request is the second write mode, and if the data size of the write request stream exceeds the fourth threshold, the write mode of the data in the first write request is the first write mode, where the fourth threshold is greater than the first threshold.
6. The data storage method according to any one of claims 1 to 5, wherein after storing the data in the first write request according to the determined writing manner, the data storage method further comprises:
and if the determined writing mode is determined to be the first writing mode, marking the data corresponding to the first writing request in the buffer as invalid.
7. A scheduling apparatus, comprising: the system comprises a detection module and a scheduling module, wherein the scheduling module comprises a judgment module, a first processing submodule and a second processing submodule;
the detection module is used for determining the data size of the received first write request;
the scheduling module is used for determining a writing mode of data in the first write request according to the data size of the first write request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the first writing request into a memory; storing the data in the first write request according to the determined write-in mode;
the judging module is used for judging whether the data size of the first write request is larger than a first threshold value;
the first processing submodule is used for determining that the writing mode is the first writing mode after the judging module determines that the data size of the first writing request is larger than the first threshold;
the second processing submodule is configured to determine, after the determining module determines that the data size of the first write request is not greater than the first threshold, a write request stream to which the first write request belongs according to a first sector position corresponding to the first write request, where each write request stream includes a plurality of write requests correspondingly formed after an application file is split into a plurality of files; determining a current data size of the write request stream; determining a writing mode of the first write request according to the current data size of the write request stream; determining a write request stream to which the first write request belongs according to a first sector position corresponding to the first write request, wherein the implementation mode is as follows: judging whether a second write request with a sector position adjacent to and before the first sector position is received before the first write request is received; if yes, logically recombining the first write request to a write request stream to which the second write request belongs, and taking the recombined write request stream as the write request stream to which the first write request belongs; if not, the write request stream to which the first write request belongs is the first write request itself.
8. The scheduling device of claim 7, wherein the second processing sub-module is specifically configured to:
determining a current scheduling strategy; the current scheduling policy is used for indicating the corresponding relation between the data size of the write request stream and the write mode;
and determining the writing mode of the first writing request according to the current scheduling strategy and the current data size of the writing request stream.
9. The scheduling device of claim 8, wherein the second processing sub-module is specifically configured to:
determining the data size of all write request streams received in the last period;
determining a scheduling strategy of the current period according to the data size of all the write request streams received in the previous period;
and determining the current scheduling strategy according to the scheduling strategy of the current period.
10. The scheduling device of claim 9, wherein the second processing sub-module is specifically configured to:
determining the number of the write request streams with the data size exceeding the first threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the first threshold as a first number;
determining the number of the write request streams with the data size exceeding a second threshold in all the write request streams received in the previous period, and taking the number of the write request streams with the data size exceeding the second threshold as a second number; wherein the second threshold is greater than the first threshold;
calculating the ratio of the second number to the first number;
and determining the scheduling strategy of the current period according to the ratio.
11. The scheduling device of claim 10, wherein the writing means further comprises a second writing means, and the second writing means is to write the data in the first write request into a buffer and then store the data in the memory from the buffer;
the second processing submodule is specifically configured to:
judging whether the ratio exceeds a third threshold value;
if so, determining that the scheduling strategy of the current period is a first strategy; the first policy is that if the data size of the write request stream does not exceed the first threshold, the write mode of the data in the first write request is the second write mode, and if the data size of the write request stream exceeds the first threshold, the write mode of the data in the first write request is the first write mode;
if not, determining that the scheduling strategy of the current period is a second strategy; the second policy is that if the data size of the write request stream does not exceed a fourth threshold, the write mode of the data in the first write request is the second write mode, and if the data size of the write request stream exceeds the fourth threshold, the write mode of the data in the first write request is the first write mode, where the fourth threshold is greater than the first threshold.
12. A data storage system, comprising: scheduling means, a memory and a buffer;
the scheduling device is used for determining the data size of the received first write request; determining a writing mode of data in the first writing request according to the data size of the first writing request; the writing mode comprises a first writing mode; the first writing mode is to directly store the data in the first writing request into the memory; storing the data in the first write request according to the determined write-in mode;
determining a writing mode of data in the first write request according to the data size of the first write request, wherein the implementation mode is as follows: judging whether the data size of the first write request is larger than a first threshold value or not; if so, determining that the writing mode is the first writing mode; if not, determining a write request stream to which the first write request belongs according to a first sector position corresponding to the first write request, wherein each write request stream comprises a plurality of write requests correspondingly formed after an application file is split into a plurality of files; determining a current data size of the write request stream; determining a writing mode of the write request according to the current data size of the write request stream;
determining a write request stream to which the first write request belongs according to a first sector position corresponding to the first write request, wherein the implementation mode is as follows: judging whether a second write request with a sector position adjacent to and before the first sector position is received before the first write request is received; if yes, logically recombining the first write request to a write request stream to which the second write request belongs, and taking the recombined write request stream as the write request stream to which the first write request belongs; if not, the write request stream to which the first write request belongs is the first write request itself.
13. A data storage device, comprising: at least one processor; and the number of the first and second groups,
a program memory communicatively coupled to the at least one processor; wherein the program memory stores instructions executable by the at least one processor to enable the at least one processor to perform a data storage method as claimed in any one of claims 1 to 6.
14. A computer-readable storage medium, in which a computer program is stored, which, when being executed by a processor, carries out the data storage method of any one of claims 1 to 6.
CN201811072602.2A 2018-09-14 2018-09-14 Data storage method, scheduling device, system, equipment and storage medium Active CN109375868B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811072602.2A CN109375868B (en) 2018-09-14 2018-09-14 Data storage method, scheduling device, system, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811072602.2A CN109375868B (en) 2018-09-14 2018-09-14 Data storage method, scheduling device, system, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN109375868A CN109375868A (en) 2019-02-22
CN109375868B true CN109375868B (en) 2022-07-08

Family

ID=65405269

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811072602.2A Active CN109375868B (en) 2018-09-14 2018-09-14 Data storage method, scheduling device, system, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN109375868B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019233500A2 (en) 2019-09-12 2019-12-12 Alibaba Group Holding Limited Log-structured storage systems
CN111324309A (en) * 2020-02-21 2020-06-23 北京天融信网络安全技术有限公司 Data storage method and electronic equipment
CN111352590B (en) * 2020-02-26 2023-06-09 上海霄云信息科技有限公司 File storage method and device

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662459A (en) * 2012-04-22 2012-09-12 复旦大学 Method for reducing energy consumption of server by using mixed storage of solid-state drive and mechanical hard disk
CN103399713A (en) * 2013-08-02 2013-11-20 浙江大学 Data buffering method for balancing multistage memory property and solid-state disk service life
CN103645995A (en) * 2013-12-04 2014-03-19 华为技术有限公司 Data writing method and device
CN105892947A (en) * 2016-03-31 2016-08-24 华中科技大学 SSD and HDD hybrid caching management method and system of energy-saving storage system
CN106681668A (en) * 2017-01-12 2017-05-17 郑州云海信息技术有限公司 Hybrid storage system and storage method based on solid state disk caching
CN106933516A (en) * 2017-03-16 2017-07-07 郑州云海信息技术有限公司 A kind of storage controlling method and device of the storage system of blending agent
CN107092439A (en) * 2017-03-07 2017-08-25 华为技术有限公司 A kind of method and apparatus of data storage
CN107193494A (en) * 2017-05-19 2017-09-22 深圳大学 RDD (remote data description) persistence method based on SSD (solid State disk) and HDD (hard disk drive) hybrid storage system
CN108491162A (en) * 2018-03-13 2018-09-04 山东超越数控电子股份有限公司 A kind of method and device improving performance of storage system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7613876B2 (en) * 2006-06-08 2009-11-03 Bitmicro Networks, Inc. Hybrid multi-tiered caching storage system
CN106250322B (en) * 2016-08-12 2019-11-19 华为技术有限公司 A kind of method and apparatus for writing data
CN106878414B (en) * 2017-02-14 2019-06-07 北京奇虎科技有限公司 Data write request processing method, device and distributed data-storage system

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662459A (en) * 2012-04-22 2012-09-12 复旦大学 Method for reducing energy consumption of server by using mixed storage of solid-state drive and mechanical hard disk
CN103399713A (en) * 2013-08-02 2013-11-20 浙江大学 Data buffering method for balancing multistage memory property and solid-state disk service life
CN103645995A (en) * 2013-12-04 2014-03-19 华为技术有限公司 Data writing method and device
CN105892947A (en) * 2016-03-31 2016-08-24 华中科技大学 SSD and HDD hybrid caching management method and system of energy-saving storage system
CN106681668A (en) * 2017-01-12 2017-05-17 郑州云海信息技术有限公司 Hybrid storage system and storage method based on solid state disk caching
CN107092439A (en) * 2017-03-07 2017-08-25 华为技术有限公司 A kind of method and apparatus of data storage
CN106933516A (en) * 2017-03-16 2017-07-07 郑州云海信息技术有限公司 A kind of storage controlling method and device of the storage system of blending agent
CN107193494A (en) * 2017-05-19 2017-09-22 深圳大学 RDD (remote data description) persistence method based on SSD (solid State disk) and HDD (hard disk drive) hybrid storage system
CN108491162A (en) * 2018-03-13 2018-09-04 山东超越数控电子股份有限公司 A kind of method and device improving performance of storage system

Also Published As

Publication number Publication date
CN109375868A (en) 2019-02-22

Similar Documents

Publication Publication Date Title
CN112041805B (en) Specifying media types in write commands
CN103186350B (en) The moving method of mixing storage system and hot spot data block
CN102609360B (en) Data processing method, data processing device and data processing system
US20180095662A1 (en) Parallel segment writer
CN103399823B (en) The storage means of business datum, equipment and system
CN102096556B (en) Method for copying data as well as method, device and system for reading data
CN109375868B (en) Data storage method, scheduling device, system, equipment and storage medium
GB2507410A (en) Storage class memory having low power, low latency, and high capacity
CN103838676B (en) Data-storage system, date storage method and PCM bridges
US9400603B2 (en) Implementing enhanced performance flash memory devices
CN104765575A (en) Information storage processing method
CN102945207A (en) Cache management method and system for block-level data
CN109213693B (en) Storage management method, storage system and computer program product
CN102981783A (en) Cache accelerating method based on Nand Flash
US8856439B2 (en) Method and device for utilizing application-level prior knowledge for selectively storing data in higher performance media
CN108153582B (en) IO command processing method and medium interface controller
CN113687977B (en) Data processing device for improving computing performance based on RAID controller
CN113687978B (en) Data processing method for memory array controller
CN106469119A (en) A kind of data write buffer method based on NVDIMM and its device
CN104778100A (en) Safe data backup method
CN107193693A (en) A kind of online data storage optimization method based on storage system
CN102521161B (en) Data caching method, device and server
CN108877862B (en) Data organization of page stripes and method and device for writing data into page stripes
CN103399783A (en) Storage method and device of mirror image documents of virtual machines
CN105224261B (en) The implementation method and device of a kind of piece of virtualization array

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
TA01 Transfer of patent application right

Effective date of registration: 20210802

Address after: 518000 b1-1302, building B, Kexing Science Park, No. 15, Keyuan Road, Science Park community, Yuehai street, Nanshan District, Shenzhen, Guangdong

Applicant after: Shenzhen aijieyun Technology Co.,Ltd.

Address before: 5 / F, building a, Guangqi Cultural Plaza, 2899 a, Xietu Road, Xuhui District, Shanghai 200030

Applicant before: WANGSU SCIENCE & TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant