CN104503703A - Cache processing method and device - Google Patents

Cache processing method and device Download PDF

Info

Publication number
CN104503703A
CN104503703A CN201410784834.6A CN201410784834A CN104503703A CN 104503703 A CN104503703 A CN 104503703A CN 201410784834 A CN201410784834 A CN 201410784834A CN 104503703 A CN104503703 A CN 104503703A
Authority
CN
China
Prior art keywords
data block
mirror image
buffer memory
storage space
memory mirror
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.)
Granted
Application number
CN201410784834.6A
Other languages
Chinese (zh)
Other versions
CN104503703B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410784834.6A priority Critical patent/CN104503703B/en
Publication of CN104503703A publication Critical patent/CN104503703A/en
Priority to PCT/CN2015/097176 priority patent/WO2016095761A1/en
Application granted granted Critical
Publication of CN104503703B publication Critical patent/CN104503703B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Input (AREA)

Abstract

An embodiment of the invention provides a cache processing method and device. The method includes receiving a read input and output IO request, and reading a small data block from a parent mirror according to the IO request; if a first large data block containing the small data block is not in a cache mirror, detecting whether the storage space for caching the mirror is occupied completely or not or whether the occupation ratio of the storage space is larger than or equal to a preset ratio threshold or not; if yes, replacing a second small data block of the cache mirror with the first large data block, and writing the small data block into the storage space of the cache mirror corresponding to the first large data block. The ageing second small data block is replaced with the fresh first small data block, the small data block is written into the cache mirror, and the utilization rate of the storage space is increased effectively.

Description

The disposal route of buffer memory and device
Technical field
The embodiment of the present invention relates to memory technology, particularly relates to a kind of disposal route and device of buffer memory.
Background technology
Desktop cloud is separated from physical machine by cloud computing mode personal computer desktop environment, becomes a kind of service that externally can provide desktop.
Fig. 1 is the application scenarios schematic diagram of a kind of desktop cloud in prior art.As shown in Figure 1, this application scenarios comprises father's mirror image 1, buffer memory mirror image 2, sub-mirror image 3 and virtual machine 4, and wherein, buffer memory mirror image 2 link is cloned in father's mirror image 1, and sub-mirror image 3 link is cloned in buffer memory mirror image 2.Under this scene, as shown in Figure 1, for the read-write IO in virtual machine 4, write IO and directly data block is written in sub-mirror image 3; Read IO and arrive first read block in sub-mirror image, if data block is present in sub-mirror image, then read in sub-mirror image; If data block is not present in sub-mirror image, then read in buffer memory mirror image; If data block is not present in buffer memory mirror image, then read in father's mirror image, and the data block read is written in buffer memory mirror image, this data block can be read from buffer memory mirror image when reading identical block next time.
But, father's mirror image, buffer memory mirror image, sub-mirror image all adopts virtual hard disk file form (VirtualHard Disk format, be called for short VHD), the max cap. of VHD file is no more than the size of local memory file system, and, VHD cannot carry out the replacement function of data block, such as, the data block read from father's mirror image can only write in buffer memory mirror image by the mode added successively, after the local memory file system space at buffer memory mirror image place is finished, just cannot again by new data block write buffer memory mirror image, and partial data may follow-uply can not or seldom be read again in buffer memory mirror image, therefore, the useful data block ratio in buffer memory mirror image is caused to tail off, thus cause the waste of spatial cache.
Summary of the invention
The embodiment of the present invention provides a kind of disposal route and device of buffer memory, replaces aging second largest data block by new first data block, then in the small data block write buffer memory mirror image of write, effectively improves the utilization factor of storage space by needing.
Embodiment of the present invention first aspect provides a kind of disposal route of buffer memory, comprising:
Receive read input and export I/O request, and read I/O request according to described, from father's mirror image, read small data block;
If the first data block comprising described small data block is not in buffer memory mirror image, then check whether the storage space of described buffer memory mirror image occupation proportion that is whether full or described storage space is greater than or equal to preset ratio threshold value;
If the storage space of described buffer memory mirror image occupation proportion that is full or described storage space is greater than or equal to described preset ratio threshold value, then described first data block is replaced the second largest data block in described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
May in implementation in the first of first aspect, described from father's mirror image, read small data block after, described method also comprises:
The access count value of the first data block comprising described small data block is added 1;
If then in the described first data block comprising described small data block not in buffer memory mirror image, before then checking whether the storage space of described buffer memory mirror image occupation proportion that is whether full or described storage space is greater than or equal to preset ratio threshold value, described method also comprises:
By the mark of described first data block and corresponding access count value write management chained list.
In conjunction with the first possibility implementation of first aspect, in the second possibility implementation of first aspect, also comprise:
If the storage space of described buffer memory mirror image less than or the occupation proportion of described storage space be less than described preset ratio threshold value, then described first data block is added described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
In conjunction with the first possibility implementation of first aspect, in the third possibility implementation of first aspect, described second largest data block of described first data block being replaced in described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding, specifically comprise:
According to the access count value of described first data block, search successively from the gauge outfit position of described management chained list, obtain described second largest data block, the mark of described second largest data block and access count value are removed from described management chained list, and before the mark of described first data block and access count value being write the mark of the 3rd long data block in described management chained list; Wherein, described second largest data block is in described management chained list, and access count value is less than or equal to first data block of the access count value of first data block; Described the third-largest data block is that in the management chained list after the mark deleting described second largest data block, access count value is greater than or equal to first data block of the access count value of described first data block;
In block allocation table BAT, position mark corresponding for second largest data block was lost efficacy, and the position that the first data block be stored in BAT the start offset position of described first data block is corresponding; Wherein, the start offset position of described first data block is the start offset position of described second largest data block;
Described small data block is write the storage space that the start offset position of first data block described in described buffer memory mirror image is corresponding.
In conjunction with the second possibility implementation of first aspect, in the 4th kind of possibility implementation of first aspect, described described first data block is added described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding, specifically comprise:
According to the access count value of described first data block, the mark of described first data block and access count value are write in described management chained list;
In described buffer memory mirror image, find a free block, and described small data block is write described free block; Wherein, described free block is storage space corresponding to described first data block;
By position corresponding for free block described in the start offset position of described free block write BAT.
In conjunction with the first possibility implementation of first aspect, in the 5th kind of possibility implementation of first aspect, if described first data block is in buffer memory mirror image, then according to described access count value, in described management chained list, upgrade the position at the mark place of described first data block and described access count value, and described small data block is write the storage space that in described buffer memory mirror image, first data block is corresponding.
Embodiment of the present invention second aspect provides a kind for the treatment of apparatus of buffer memory, comprising:
Read module, exports I/O request for receiving read input, and reads I/O request according to described, read small data block from father's mirror image;
Checking module, if for comprise described small data block first data block not in buffer memory mirror image, then whether the storage space checking described buffer memory mirror image whether occupation proportion that is full or described storage space is greater than or equal to preset ratio threshold value;
Processing module, if the occupation proportion that is full or described storage space of the storage space for described buffer memory mirror image is greater than or equal to described preset ratio threshold value, then described first data block is replaced the second largest data block in described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
In the first possibility implementation of second aspect, described read module is also for adding 1 by the access count value of the first data block comprising described small data block;
Described processing module is also for managing chained list by the mark of described first data block and the write of corresponding access count value.
In conjunction with the first possibility implementation of second aspect, in second of second aspect in possibility implementation, if described processing module also for described buffer memory mirror image storage space less than or the occupation proportion of described storage space be less than described preset ratio threshold value, then described first data block is added described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
In conjunction with the first possibility implementation of second aspect, in the third possibility implementation of second aspect, described processing module comprises:
Second largest data block acquiring unit, for the access count value according to described first data block, search successively from the gauge outfit position of described management chained list, obtain described second largest data block, the mark of described second largest data block and access count value are removed from described management chained list, and before the mark of described first data block and access count value being write the mark of the 3rd long data block in described management chained list; Wherein, described second largest data block is in described management chained list, and access count value is less than or equal to first data block of the access count value of first data block; Described the third-largest data block is that in the management chained list after the mark deleting described second largest data block, access count value is greater than or equal to first data block of the access count value of described first data block;
Position mark unit, for position mark corresponding for second largest data block being lost efficacy in BAT, and the position that the first data block be stored in BAT the start offset position of described first data block is corresponding; Wherein, the start offset position of described first data block is the start offset position of described second largest data block;
Small data block writing unit, the storage space that the start offset position for described small data block being write first data block described in described buffer memory mirror image is corresponding.
In conjunction with the second possibility implementation of second aspect, in the 4th kind of possibility implementation of second aspect, described processing module comprises:
Mark writing unit, for the access count value according to described first data block, writes the mark of described first data block and access count value in described management chained list;
Free block acquiring unit, for finding a free block in described buffer memory mirror image, and writes described free block by described small data block; Wherein, described free block is storage space corresponding to described first data block;
Position writing unit, for writing the start offset position of described free block the position that described in BAT, free block is corresponding.
In conjunction with the first possibility implementation of second aspect, in the 5th kind of possibility implementation of second aspect, described processing module comprises:
Updating block, if for described first data block in buffer memory mirror image, then according to described access count value, in described management chained list, upgrade the position at the mark place of described first data block and described access count value, and described small data block is write the storage space that in described buffer memory mirror image, first data block is corresponding.
The disposal route of the buffer memory that the present embodiment provides, receive read input and export I/O request, and according to reading I/O request, small data block is read from father's mirror image, if comprise the first data block of small data block not in buffer memory mirror image, then check whether the storage space of buffer memory mirror image occupation proportion that is whether full or storage space is greater than or equal to preset ratio threshold value, if the storage space of buffer memory mirror image occupation proportion that is full or storage space is greater than or equal to preset ratio threshold value, then first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.In prior art after the storage space of buffer memory mirror image is finished, just cannot again by with regard to the phenomenon of new data block write buffer memory mirror image, in the present embodiment, when being checked through the occupation proportion that is full or storage space of the storage space in buffer memory mirror image and being greater than or equal to preset ratio threshold value, the second largest data block in buffer memory mirror image is replaced by first data block, and by storage space corresponding for second largest data block in small data block write buffer memory mirror image, namely aging second largest data block is replaced by new first data block, then will need in the small data block write buffer memory mirror image of write, effectively improve the utilization factor of storage space.
Accompanying drawing explanation
In order to be illustrated more clearly in the embodiment of the present invention or technical scheme of the prior art, be briefly described to the accompanying drawing used required in embodiment or description of the prior art below, apparently, accompanying drawing in the following describes is some embodiments of the present invention, for those of ordinary skill in the art, under the prerequisite not paying creative work, other accompanying drawing can also be obtained according to these accompanying drawings.
Fig. 1 is the application scenarios schematic diagram of a kind of desktop cloud in prior art;
The process flow figure of the buffer memory that Fig. 2 provides for the embodiment of the present invention one;
The process flow figure of the buffer memory that Fig. 3 provides for the embodiment of the present invention two;
Fig. 4 is that the management chain before the mark of first data block moves represents intention;
Fig. 5 is that the management chain after the mark of first data block moves represents intention;
Fig. 6 is bitmap table management schematic diagram;
The process flow figure of the buffer memory that Fig. 7 provides for the embodiment of the present invention three;
Fig. 8 is that the management chain before first data block enters buffer memory mirror image in embodiment three represents intention;
Fig. 9 is that the management chain after first data block enters buffer memory mirror image in embodiment three represents intention;
The process flow figure of the buffer memory that Figure 10 provides for the embodiment of the present invention four;
Figure 11 is that the management chain before first data block enters buffer memory mirror image in embodiment four represents intention;
Figure 12 is that the management chain after first data block enters buffer memory mirror image in embodiment four represents intention;
The structural representation of the treating apparatus of the buffer memory that Figure 13 provides for the embodiment of the present invention five;
The structural representation of the treating apparatus of the buffer memory that Figure 14 provides for the embodiment of the present invention six;
The structural representation of the treating apparatus of the buffer memory that Figure 15 provides for the embodiment of the present invention seven;
The structural representation of the treating apparatus of the buffer memory that Figure 16 provides for the embodiment of the present invention eight.
Embodiment
For making the object of the embodiment of the present invention, technical scheme and advantage clearly, below in conjunction with the accompanying drawing in the embodiment of the present invention, technical scheme in the embodiment of the present invention is clearly and completely described, obviously, described embodiment is the present invention's part embodiment, instead of whole embodiments.Based on the embodiment in the present invention, those of ordinary skill in the art, not making the every other embodiment obtained under creative work prerequisite, belong to the scope of protection of the invention.
The process flow figure of the buffer memory that Fig. 2 provides for the embodiment of the present invention one.In the present embodiment, executive agent can be central processing unit (Central Processing Unit is called for short CPU), server, physical host, terminal device etc., not as limit in the present invention.As shown in Figure 1, the method comprises the following steps:
Step 101, reception read input export (Input and Output is called for short IO) request, and according to reading I/O request, read small data block from father's mirror image.
In the present embodiment, read I/O request when receiving, and according to read IO all miss in sub-mirror image and buffer memory mirror image time, namely in sub-mirror image and buffer memory mirror image, all do not read small data block according to reading IO, then need to read I/O request according to this, from father's mirror image, read small data block.Wherein, read the mark that can comprise small data block in I/O request, such as, the start offset address etc. that the numbering of small data block or small data block store.A long data block can be divided into multiple small data block, such as, can using 512B as small data block, 2MB is as long data block; Also using the data block of 2MB as small data block, using the data block of 20GB as a long data block, can set according to actual conditions, not limit in the present invention.
If step 102 comprises the first data block of small data block not in buffer memory mirror image, then check whether the storage space of buffer memory mirror image occupation proportion that is whether full or storage space is greater than or equal to preset ratio threshold value.
In the present embodiment, comprise the first data block of small data block not in buffer memory mirror image, then illustrating in this first data block is stored in the storage space of buffer memory mirror image without any small data block, if there is at least one small data block to be stored in the storage space of buffer memory mirror image in this first data block, then this first data block is in this buffer memory mirror image.The storage space of buffer memory mirror image can adopt local high-speed processing apparatus, as storage speed and input and output amount per second (Input and Output Per Second, be called for short IOPS) much larger than the memory device of common hard disc, it can be internal memory, also can be solid state hard disc (Solid State Disk, be called for short SSD) etc. can carry out the memory device of high speed interactive operation, can consider to select the memory device be applicable to do buffer memory from the angle of cost, performance and life cycle.
If the storage space of step 103 buffer memory mirror image occupation proportion that is full or storage space is greater than or equal to preset ratio threshold value, then first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.
In the present embodiment, if the storage space of buffer memory mirror image is full, namely any mode can not be stored in the mode added again in storage space, or, such as, if the occupation proportion of the storage space of buffer memory mirror image is greater than or equal to preset ratio threshold value, when the occupation proportion of storage space is more than 80%, first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.Second largest data block is in buffer memory mirror image, the long data block that accessed number of times is relatively little, or in preset time period, there is no accessed long data block, or also can be the long data block that accessed number of times is less than or equal to the accessed number of times of first data block.
Alternatively, in the present embodiment, the cache replacement policy preset can be adopted, replace the second largest data block in buffer memory mirror image by first data block.Such as, cache replacement policy can be least recently used (Least Recently Used, be called for short LRU) strategy, also can be least commonly use (LeastFrequently Used recently, be called for short LFU) strategy, or other strategy, those skilled in the art can consider according to file attributes and use scenes angle, select suitable cache replacement policy, not as limit in the present invention.
It should be noted that, in the present embodiment, it is not the second largest data block of replacing by the data in first data block in buffer memory mirror image, but after the aging long data block finding accessed number of times relatively less in buffer memory mirror image, using this aging long data block as second largest data block, the storage space of data block second largest in buffer memory mirror image is kept for first data block, after the small data block in first data block is read, this small data block is written on storage space corresponding to second largest data block original in buffer memory mirror image.
The disposal route of the buffer memory that the present embodiment provides, receive read input and export I/O request, and according to reading I/O request, small data block is read from father's mirror image, if comprise the first data block of small data block not in buffer memory mirror image, then check whether the storage space of buffer memory mirror image occupation proportion that is whether full or storage space is greater than or equal to preset ratio threshold value, if the storage space of buffer memory mirror image occupation proportion that is full or storage space is greater than or equal to preset ratio threshold value, then first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.In prior art after the storage space of buffer memory mirror image is finished, just cannot again by with regard to the phenomenon of new data block write buffer memory mirror image, in the present embodiment, when being checked through the occupation proportion that is full or storage space of the storage space in buffer memory mirror image and being greater than or equal to preset ratio threshold value, the second largest data block in buffer memory mirror image is replaced by first data block, and by storage space corresponding for second largest data block in small data block write buffer memory mirror image, namely aging second largest data block is replaced by new first data block, then will need in the small data block write buffer memory mirror image of write, effectively improve the utilization factor of storage space.
The process flow figure of the buffer memory that Fig. 3 provides for the embodiment of the present invention two.As shown in Figure 3, the method comprises the following steps:
Step 201, reception read input export I/O request, and according to reading I/O request, read small data block from father's mirror image.
Step 202, the access count value of the first data block comprising small data block is added 1.
In the present embodiment, access count value is for recording the accessed number of times of first data block, and when there being small data block accessed in first data block, no matter whether first data block is in buffer memory mirror image, all the access count value of first data block added 1.
Step 203, judge that namely the first data block comprising small data block is whether in buffer memory mirror image, if so, comprise the first data block of small data block in buffer memory mirror image, then perform step 208; If not, namely comprise the first data block of small data block not in buffer memory mirror image, then perform step 204.
Step 204, by the access count value of the mark of first data block and correspondence write management chained list.
In the present embodiment, management chained list is for managing the long data block in buffer memory mirror image, and store the mark of long data block and the access count value of long data block, this management chained list is specifically as follows LFU chained list.In management chained list, head node (head) points to up-to-date adding and long data block that access count is minimum, and caudal knot point (tail) points to and adds the earliest and long data block that access count is maximum.If there is the mark of first data block in management chained list, then this first data block is in buffer memory mirror image, namely small data block is had to be stored in the storage space of buffer memory mirror image in this first data block, if there is no the mark of first data block in management chained list, then this first data block is not in buffer memory mirror image, namely do not have small data block to be stored in the storage space of buffer memory mirror image in this first data block.
When the small data block in first data block is accessed, and this first data block is not in buffer memory mirror image, by the mark of first data block and corresponding access count value write management chained list, represents that this first data block is in buffer memory mirror image.During original state, the access count value of all long data blocks is set to 0, and manage these long data blocks with management chained list, if there is small data block to enter buffer memory mirror image in long data block, namely the small data block that first data block comprises is read rear when needing the storage space being stored into buffer memory mirror image, then first data block identifier and access count value are added in management chained list.
Whether the storage space occupation proportion that is whether full or storage space of step 205, inspection buffer memory mirror image is greater than or equal to preset ratio threshold value, if, namely the storage space of buffer memory mirror image occupation proportion that is full or storage space is greater than or equal to preset ratio threshold value, then perform step 206; If not, namely buffer memory mirror image storage space less than or the occupation proportion of storage space be less than preset ratio threshold value, then perform step 207.
Step 206, first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.
Step 207, first data block is added buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.Terminate.
In the present embodiment, first data block is added buffer memory mirror image and can adopt two kinds of methods, one preempts in advance, and one is dynamic assignment.Preemption method is when the first data block of buffer memory adds buffer memory in advance, no matter whether the small data block in first data block can have an opportunity accessed and be stored in the storage space of buffer memory mirror image, just occupy the space (as 2MB) in spatial cache needed for first data block entirety in advance; Dynamic allocation method is when first data block adds buffer memory mirror image, and the space (as several 512B) needed for the medium and small data block in memory allocated space, this mode can make more how useful small data block enter in buffer memory mirror image.
Step 208, according to access count value, in management chained list, upgrade position and the access count value at the mark place of first data block, and by storage space corresponding for first data block in small data block write buffer memory mirror image.
In the present embodiment, when first data block is in buffer memory mirror image, namely the mark and the access count value that have first data block in chained list is managed, according to access count value, in management chained list, from the position of the mark of first data block, access count value is found to be less than or equal to first long data block of the access count value of first data block, before the mark of first data block and access count value being write this first long data block.
Fig. 4 is that the management chain before the mark of first data block moves represents intention, and Fig. 5 is that the management chain after the mark of first data block moves represents intention.As shown in Figure 4 and Figure 5,3 long data blocks are had: long data block 1 (BLOCK1) in buffer memory mirror image, long data block 6 (BLOCK6), long data block 8 (BLOCK8), their access count value is the access count value of BLOCK1 is respectively 3, the access count value of BLOCK6 is the access count value of 2, BLOCK8 is 2.When BLOCK8 is again accessed, its access count value adds 1 and becomes 3, and now the access count value of BLOCK8 is greater than BLOCK6, and in management chained list, BLOCK8 also before BLOCK6, then needs to be moved by BLOCK8 in management chained list.In BLOCK8 current position, search, finding first access count value to be greater than or equal to the data block of 3, is BLOCK1 in this example backward, as shown in Figure 5, BLOCK8 to be moved in management chained list before BLOCK1.
Alternatively, in the present embodiment, also can use the small data block in bitmap table management long data block, such as, using the data block of 2MB as long data block, using the data block of 512B as small data block, then can be divided into again 4096 512B small data blocks in each 2MB long data block inside, bitmap table can be used to manage these 512B data blocks, and in bitmap table, each 512B uses 1 position to manage.Fig. 6 is bitmap table management schematic diagram, as shown in Figure 6, the management schematic diagram of the data block of two 2MB has been shown in this bitmap table, if corresponding place value is 0, then represents corresponding 512B not in the storage space of buffer memory mirror image; Otherwise, if corresponding place value is 1, then represent corresponding 512B in the storage space of buffer memory mirror image.It should be noted that, Fig. 6 illustrate only 8 512B data blocks, not by all 512B data blocks in a 2MB data block, is as the criterion in concrete operations with actual conditions.
In the present embodiment, before small data block does not write the storage space of buffer memory mirror image, correspondence position in bitmap table is 0, and when after the storage space that first data block in small data block write buffer memory mirror image is corresponding, needing location updating corresponding for medium and small for bitmap table data block is 1.
The disposal route of the buffer memory that the present embodiment provides, receive read input and export I/O request, and according to reading I/O request, small data block is read from father's mirror image, and the access count value of first data block is added 1, if first data block is in buffer memory mirror image, then according to access count value, position and the access count value at the mark place of first data block is upgraded in management chained list, and by storage space corresponding for first data block in small data block write buffer memory mirror image, if first data block is not in buffer memory mirror image, then by the mark of first data block and corresponding access count value write management chained list, and check whether the storage space of buffer memory mirror image occupation proportion that is whether full or storage space is greater than or equal to preset ratio threshold value, if the storage space of buffer memory mirror image occupation proportion that is full or storage space is greater than or equal to preset ratio threshold value, then first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image, if the storage space of buffer memory mirror image less than or the occupation proportion of storage space be less than preset ratio threshold value, if not, namely buffer memory mirror image storage space less than or the occupation proportion of storage space be less than preset ratio threshold value.In prior art after the storage space of buffer memory mirror image is finished, just cannot again by with regard to the phenomenon of new data block write buffer memory mirror image, in the present embodiment, not only can realize replacing aging second largest data block by new first data block, then will need in the small data block write buffer memory mirror image of write, effectively improve the utilization factor of storage space, and, long data block in use management chained list management buffer memory mirror image, access count value according to long data block can find aging data block easily and fast, improve the replacement of long data block, add the efficiency of the movement in chained list with data block identifier.
The process flow figure of the buffer memory that Fig. 7 provides for the embodiment of the present invention three.On the basis of above-described embodiment two, the specific implementation that first data block " is replaced the second largest data block in buffer memory mirror image, and small data block is write the storage space that in buffer memory mirror image, first data block is corresponding " by step comprises the following steps:
Step 301, access count value according to first data block, search successively from the gauge outfit position of management chained list, obtain second largest data block, the mark of second largest data block and access count value are removed from management chained list, and by before the mark of the 3rd long data block in the mark of first data block and access count value write management chained list.
Wherein, second largest data block is that access count value is less than or equal to first data block of the access count value of first data block in management chained list; The third-largest data block is that in the management chained list after the mark deleting second largest data block, access count value is greater than or equal to first data block of the access count value of first data block.
In the present embodiment, in management chained list, according to the access count value of first data block, from the position of gauge outfit, find the data block that first access count value is less than or equal to the access count value of the second data, using this data block as second largest data block, the mark of second largest data block and access count value are removed from management chained list, represent that this second largest data block is not present in buffer memory mirror image, by in the mark of first data block and access count value write management chained list, represent that first data block is present in buffer memory mirror image.
Fig. 8 is that the management chain before first data block enters buffer memory mirror image in embodiment three represents intention, and Fig. 9 is that the management chain after first data block enters buffer memory mirror image in embodiment three represents intention.As shown in Figure 8, this management chained list comprises data block 3 (BLOCK3), data block 6 (BLOCK6), data block 1 (BLOCK1) and data block 8 (BLOCK8), the access count value of BLOCK3 is 5, the access count value of BLOCK6 is 7, the access count value of BLOCK1 is the access count value of 7, BLOCK8 is 8; In buffer memory mirror image other data block outer, namely first data block is BLOCK5, and access count value is 5.When BLOCK5 is again accessed, its access count value adds 1 and becomes 6, and now the access count value of BLOCK5 is greater than BLOCK3, and namely BLOCK3 is the data block that first access count value is less than BLOCK5, then using BLOCK3 as second largest data block, and in management chained list, BLOCK5 is not in chained list, and namely first data block is not in buffer memory mirror image, then need to replace in management chained list, as shown in Figure 9, BLOCK3 is removed from chained list, and BLOCK5 is added management chained list.When BLOCK5 being added management chained list, from the beginning search, finding first access count value to be greater than or equal to the data block of 6, be BLOCK6 in this example backward, and namely BLOCK6 is the 4th data block, then BLOCK5 is joined and to manage in chained list before BLOCK6.
It should be noted that, in the present embodiment, the access count value of the mark of more data block can be comprised in management chained list, be not limited with Fig. 8 and Fig. 9.
Step 302, in BAT, position mark corresponding for second largest data block to be lost efficacy, and the position that the first data block be stored in BAT the start offset position of first data block is corresponding.
Wherein, the start offset position of first data block is the start offset position of second largest data block.
In the present embodiment, using the data block of 2MB as long data block, using the data block of 512B as small data block, use BAT to manage these 2MB blocks, in BAT, store the start offset position of each 2MB data block in storage space.Such as, for the VHD virtual hard disk file that a capacity is 20GB, its BAT item quantity is 10240, if it is the position of 100M that the 5th 2MB data block is stored in VHD virtual hard disk file offset address, then in BAT, the value at the 5th list item place is exactly 100M, if a certain item in BAT is 0XFFFFFFFF, then represent that this data block is not present in buffer memory mirror image.
Table 1 adds the BAT before buffer memory mirror image for first data block in embodiment three, and table 2 is that in embodiment three, first data block adds the BAT after buffer memory mirror image.As shown in table 1, store the starting location offset address of three data blocks in this BAT, be respectively 6M+1.5K, 4M+1K, relative start offset position in the storage space corresponding for this BAT that 2M+512,0M represent is not start offset position actual in storage space.In the present embodiment, the start offset position of second largest data block is 6M+1.5K, then be labeled as 0XFFFFFFFF by BAT in the 3rd list item, then illustrate that the 3rd data are not in buffer memory mirror image, again start offset position write 6M+1.5K is write in the 5th list item of BAT, as shown in table 2, the start offset position of first data block that what in BAT, the 5th list item was corresponding is, then illustrate that this first data block is present in buffer memory mirror image, further, the storage space of this first data block is the poke space of original second largest data block.
Table 1
0M
0XFFFFFFFF
6M+1.5K
0XFFFFFFFF
0XFFFFFFFF
4M+1K
0XFFFFFFFF
2M+512
Table 2
0M
0XFFFFFFFF
0XFFFFFFFF
0XFFFFFFFF
6M+1.5K
4M+1K
0XFFFFFFFF
2M+512
Step 303, by storage space corresponding for the start offset position of first data block in small data block write buffer memory mirror image.
In the present embodiment, each small data block all has corresponding position in first data block, and this first data block occupies the storage space of original second largest data block, if desired the small data block write has data block to store in the position that original second largest data block is corresponding, then direct data block of replacing with this small data block on original correspondence position; If desired the small data block write does not have data block to store in the position that original second largest data block is corresponding, then need to the memory location memory allocated space of this small data block in correspondence, to be stored in the storage space of distribution by this small data block.
It should be noted that, in the present embodiment, as shown in Table 1 and Table 2, Section 3 in list item corresponds to second largest data block, be labeled as 0XFFFFFFFF, illustrate that this second largest data block is invalid, new data block can be stored in this position, but small data block accessed in fact original second largest data block is still stored in the storage space of buffer memory mirror image.Such as, in figure 6, if data block 1 is original second largest data block, after second largest data block is replaced it by first data block, although be labeled as 0XFFFFFFFF in the BAT item that second largest data block is corresponding, but wherein the small data block of the 3rd 512B is still stored in storage space, time in the small data block write buffer memory mirror image of the first data block, if the memory location of the small data block of this first data block is data block is the position of the data block of bitmap table the 3rd 512B, the data block of the 3rd 512B of original second largest data block is then directly replaced with the small data block of this first data block, if the small data block memory location of this first data block is the position of the data block of second 512B in bitmap table, but this position is 0, namely this position does not have storage space, then need the memory allocated space, position of the data block at this second 512B, this small data block storage is entered, and the value of the second place is set to 1 in the bitmap table of correspondence.
The disposal route of the buffer memory that the present embodiment provides, according to the access count value of first data block, search successively from the gauge outfit position of management chained list, obtain second largest data block, the mark of second largest data block and access count value are removed from management chained list, and by before the mark of the 3rd long data block in the mark of first data block and access count value write management chained list, in BAT, position mark corresponding for second largest data block was lost efficacy, and the position that the first data block be stored in BAT the start offset position of first data block is corresponding, by storage space corresponding for the start offset position of first data block in small data block write buffer memory mirror image, use management chained list and BAT manage the data block in buffer memory mirror image, long data block aging in buffer memory mirror image can be found quickly and easily, and the long data block always changed is replaced with new long data block, by the small data block of reading stored in storage space in buffer memory mirror image, not only increase the utilization factor of storage space, also can upper once access this small data block time, directly access in buffer memory mirror image, alleviate the pressure of the remote storage to father's mirror image place.
The process flow figure of the buffer memory that Figure 10 provides for the embodiment of the present invention four.On the basis of above-described embodiment two, the specific implementation that first data block " is added buffer memory mirror image, and small data block is write the storage space that in buffer memory mirror image, first data block is corresponding " by step comprises the steps:
Step 401, access count value according to first data block, by the mark of first data block and access count value write management chained list.
In the present embodiment, when comprising the first data block of small data block not in buffer memory mirror image, and, the storage space of buffer memory mirror image less than or the occupation proportion of storage space is less than preset ratio threshold value time, according to the access count value of first data block, from the head node of management chained list, access count value is found to be greater than or equal to first long data block of the access count value of first data block, and before the mark of first data block and access count value are write this first long data block.
Figure 11 is that the management chain before first data block enters buffer memory mirror image in embodiment four represents intention, and Figure 12 is that the management chain after first data block enters buffer memory mirror image in embodiment four represents intention.As shown in figure 11, have two long data blocks in this buffer memory mirror image, be respectively data block 1 (BLOCK1) and data block 6 (BLOCK6), the access count value of BLOCK1 is the access count value of 1, BLOCK6 is 3.As shown in figure 12, the access count value of the first data block (BLOCK8) outside buffer memory mirror image becomes 2 from 1, when BLOCK8 adds management chained list, from the beginning node starts, first access count value is found to be greater than or equal to the data block of the access count value of BLOCK8, be BLOCK6 herein, then the mark of BLOCK8 and access count value added in management chained list before BLOCK6.
Step 402, in buffer memory mirror image, find a free block, and by small data block write free block.
Wherein, free block is storage space corresponding to first data block.
In the present embodiment, in the storage space of buffer memory mirror image, search a free block, using this free block as storage space corresponding to first data block, and by small data block write free block.
Step 403, by position corresponding to free block in the start offset position of free block write BAT.
In the present embodiment, by list item position corresponding for free block in the start offset position of free block write BAT, so that according to the storage space of start offset location lookup to first data block during access next time.
Table 3 adds the BAT before buffer memory mirror image for first data block in embodiment four, and table 4 is that in embodiment four, first data block adds the BAT after buffer memory mirror image.As shown in table 3, the start offset position of BLOCK1 is the start offset position of 0M, BLOCK6 is 2M+512.As shown in table 4, when BLOCK8 adds buffer memory mirror image, the start offset position of the free block found is 4M+1K, then 4M+1K is write list item position corresponding to BLOCK8 in BAT.
Table 3
0M
0XFFFFFFFF
0XFFFFFFFF
0XFFFFFFFF
0XFFFFFFFF
2M+512
0XFFFFFFFF
0XFFFFFFFF
Table 4
0M
0XFFFFFFFF
0XFFFFFFFF
0XFFFFFFFF
0XFFFFFFFF
2M+512
0XFFFFFFFF
4M+1K
The disposal route of the buffer memory that the present embodiment provides, when comprising the first data block of small data block not in buffer memory mirror image, and, the storage space of buffer memory mirror image less than or the occupation proportion of storage space is less than preset ratio threshold value time, according to the access count value of first data block, by in the mark of first data block and access count value write management chained list, and in buffer memory mirror image, find a free block, and by small data block write free block, by position corresponding for free block in the start offset position of free block write BAT, use management chained list and BAT manage the data block in buffer memory mirror image, can quick and convenient first data block be added in buffer memory mirror image, by the small data block of reading stored in storage space in buffer memory mirror image, not only increase the utilization factor of storage space, also can upper once access this small data block time, directly access in buffer memory mirror image, alleviate the pressure of the remote storage to father's mirror image place.
The structural representation of the treating apparatus of the buffer memory that Figure 13 provides for the embodiment of the present invention five.As shown in figure 13, this device comprises read module 11, checking module 12 and processing module 13.Read module 11 exports I/O request for receiving read input, and according to reading I/O request, reads small data block from father's mirror image.If checking module 12 is for comprising the first data block of small data block not in buffer memory mirror image, then check whether the storage space of buffer memory mirror image occupation proportion that is whether full or storage space is greater than or equal to preset ratio threshold value.If processing module 13 is greater than or equal to preset ratio threshold value for the storage space occupation proportion that is full or storage space of buffer memory mirror image, then first data block is replaced the second largest data block in buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.
The device of the present embodiment, may be used for the technical scheme performing embodiment of the method shown in Fig. 2, it realizes principle and technique effect is similar, repeats no more herein.
The structural representation of the treating apparatus of the buffer memory that Figure 14 provides for the embodiment of the present invention six.On the basis of above-described embodiment five, as shown in figure 14, if processing module comprises updating block 21 for first data block in buffer memory mirror image, then according to access count value, position and the access count value at the mark place of first data block is upgraded in management chained list, and by storage space corresponding for first data block in small data block write buffer memory mirror image.Read module 11 is also for adding 1 by the access count value of the first data block comprising small data block.Processing module 13 is also for managing chained list by the mark of first data block and the write of corresponding access count value.If processing module 13 also for buffer memory mirror image storage space less than or the occupation proportion of storage space be less than preset ratio threshold value, then first data block is added buffer memory mirror image, and by storage space corresponding for first data block in small data block write buffer memory mirror image.
The device of the present embodiment, may be used for the technical scheme performing embodiment of the method shown in Fig. 3, it realizes principle and technique effect is similar, repeats no more herein.
The structural representation of the treating apparatus of the buffer memory that Figure 15 provides for the embodiment of the present invention seven.On the basis of above-described embodiment six, as shown in figure 15, processing module 13 comprises second largest data block acquiring unit 22, position mark unit 23 and small data block writing unit 24.Wherein, second largest data block acquiring unit 22 is for the access count value according to first data block, search successively from the gauge outfit position of management chained list, obtain second largest data block, the mark of second largest data block and access count value are removed from management chained list, and by before the mark of the 3rd long data block in the mark of first data block and access count value write management chained list; Wherein, second largest data block is that access count value is less than or equal to first data block of the access count value of first data block in management chained list; The third-largest data block is that in the management chained list after the mark deleting second largest data block, access count value is greater than or equal to first data block of the access count value of first data block.Position mark unit 23 for losing efficacy position mark corresponding for second largest data block in BAT, and the position that the first data block be stored in BAT the start offset position of first data block is corresponding; Wherein, the start offset position of first data block is the start offset position of second largest data block.Small data block writing unit 24 is for by storage space corresponding for the start offset position of first data block in small data block write buffer memory mirror image.
The device of the present embodiment, may be used for the technical scheme performing embodiment of the method shown in Fig. 7, it realizes principle and technique effect is similar, repeats no more herein.
The structural representation of the treating apparatus of the buffer memory that Figure 16 provides for the embodiment of the present invention eight.On the basis of above-described embodiment six, as shown in figure 16, processing module 13 comprises mark writing unit 25, free block acquiring unit 26 and position writing unit 27.Wherein, the mark of first data block and the write of access count value, for the access count value according to first data block, manage in chained list by mark writing unit 25.Small data block for finding a free block in buffer memory mirror image, and is write free block by free block acquiring unit 26; Wherein, free block is storage space corresponding to first data block.Position writing unit 27 is for writing the start offset position of free block the position that in BAT, free block is corresponding.
The device of the present embodiment, may be used for the technical scheme performing embodiment of the method shown in Figure 10, it realizes principle and technique effect is similar, repeats no more herein.
One of ordinary skill in the art will appreciate that: all or part of step realizing above-mentioned each embodiment of the method can have been come by the hardware that programmed instruction is relevant.Aforesaid program can be stored in a computer read/write memory medium.This program, when performing, performs the step comprising above-mentioned each embodiment of the method; And aforesaid storage medium comprises: ROM, RAM, magnetic disc or CD etc. various can be program code stored medium.
Last it is noted that above each embodiment is only in order to illustrate technical scheme of the present invention, be not intended to limit; Although with reference to foregoing embodiments to invention has been detailed description, those of ordinary skill in the art is to be understood that: it still can be modified to the technical scheme described in foregoing embodiments, or carries out equivalent replacement to wherein some or all of technical characteristic; And these amendments or replacement, do not make the essence of appropriate technical solution depart from the scope of various embodiments of the present invention technical scheme.

Claims (12)

1. a disposal route for buffer memory, is characterized in that, comprising:
Receive read input and export I/O request, and read I/O request according to described, from father's mirror image, read small data block;
If the first data block comprising described small data block is not in buffer memory mirror image, then check whether the storage space of described buffer memory mirror image occupation proportion that is whether full or described storage space is greater than or equal to preset ratio threshold value;
If the storage space of described buffer memory mirror image occupation proportion that is full or described storage space is greater than or equal to described preset ratio threshold value, then described first data block is replaced the second largest data block in described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
2. method according to claim 1, is characterized in that, described from father's mirror image, read small data block after, described method also comprises:
The access count value of the first data block comprising described small data block is added 1;
If then in the described first data block comprising described small data block not in buffer memory mirror image, before then checking whether the storage space of described buffer memory mirror image occupation proportion that is whether full or described storage space is greater than or equal to preset ratio threshold value, described method also comprises:
By the mark of described first data block and corresponding access count value write management chained list.
3. method according to claim 1 and 2, is characterized in that, also comprises:
If the storage space of described buffer memory mirror image less than or the occupation proportion of described storage space be less than described preset ratio threshold value, then described first data block is added described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
4. method according to claim 2, it is characterized in that, described second largest data block of described first data block being replaced in described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding, specifically comprise:
According to the access count value of described first data block, search successively from the gauge outfit position of described management chained list, obtain described second largest data block, the mark of described second largest data block and access count value are removed from described management chained list, and before the mark of described first data block and access count value being write the mark of the 3rd long data block in described management chained list; Wherein, described second largest data block is in described management chained list, and access count value is less than or equal to first data block of the access count value of first data block; Described the third-largest data block is that in the management chained list after the mark deleting described second largest data block, access count value is greater than or equal to first data block of the access count value of described first data block;
In block allocation table BAT, position mark corresponding for second largest data block was lost efficacy, and the position that the first data block be stored in BAT the start offset position of described first data block is corresponding; Wherein, the start offset position of described first data block is the start offset position of described second largest data block;
Described small data block is write the storage space that the start offset position of first data block described in described buffer memory mirror image is corresponding.
5. method according to claim 3, is characterized in that, described described first data block is added described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding, specifically comprises:
According to the access count value of described first data block, the mark of described first data block and access count value are write in described management chained list;
In described buffer memory mirror image, find a free block, and described small data block is write described free block; Wherein, described free block is storage space corresponding to described first data block;
By position corresponding for free block described in the start offset position of described free block write BAT.
6. method according to claim 2, it is characterized in that, if described first data block is in buffer memory mirror image, then according to described access count value, in described management chained list, upgrade the position at the mark place of described first data block and described access count value, and described small data block is write the storage space that in described buffer memory mirror image, first data block is corresponding.
7. a treating apparatus for buffer memory, is characterized in that, comprising:
Read module, exports I/O request for receiving read input, and reads I/O request according to described, read small data block from father's mirror image;
Checking module, if for comprise described small data block first data block not in buffer memory mirror image, then whether the storage space checking described buffer memory mirror image whether occupation proportion that is full or described storage space is greater than or equal to preset ratio threshold value;
Processing module, if the occupation proportion that is full or described storage space of the storage space for described buffer memory mirror image is greater than or equal to described preset ratio threshold value, then described first data block is replaced the second largest data block in described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
8. device according to claim 7, is characterized in that, described read module is also for adding 1 by the access count value of the first data block comprising described small data block;
Described processing module is also for managing chained list by the mark of described first data block and the write of corresponding access count value.
9. the device according to claim 7 or 8, it is characterized in that, if described processing module also for described buffer memory mirror image storage space less than or the occupation proportion of described storage space be less than described preset ratio threshold value, then described first data block is added described buffer memory mirror image, and described small data block is write the storage space that described in described buffer memory mirror image, first data block is corresponding.
10. a device according to claim 8, is characterized in that, described processing module comprises:
Second largest data block acquiring unit, for the access count value according to described first data block, search successively from the gauge outfit position of described management chained list, obtain described second largest data block, the mark of described second largest data block and access count value are removed from described management chained list, and before the mark of described first data block and access count value being write the mark of the 3rd long data block in described management chained list; Wherein, described second largest data block is in described management chained list, and access count value is less than or equal to first data block of the access count value of first data block; Described the third-largest data block is that in the management chained list after the mark deleting described second largest data block, access count value is greater than or equal to first data block of the access count value of described first data block;
Position mark unit, for position mark corresponding for second largest data block being lost efficacy in BAT, and the position that the first data block be stored in BAT the start offset position of described first data block is corresponding; Wherein, the start offset position of described first data block is the start offset position of described second largest data block;
Small data block writing unit, the storage space that the start offset position for described small data block being write first data block described in described buffer memory mirror image is corresponding.
11. devices according to claim 9, is characterized in that, described processing module comprises:
Mark writing unit, for the access count value according to described first data block, writes the mark of described first data block and access count value in described management chained list;
Free block acquiring unit, for finding a free block in described buffer memory mirror image, and writes described free block by described small data block; Wherein, described free block is storage space corresponding to described first data block;
Position writing unit, for writing the start offset position of described free block the position that described in BAT, free block is corresponding.
12. methods according to claim 8, is characterized in that, described processing module also comprises:
Updating block, if for described first data block in buffer memory mirror image, then according to described access count value, in described management chained list, upgrade the position at the mark place of described first data block and described access count value, and described small data block is write the storage space that in described buffer memory mirror image, first data block is corresponding.
CN201410784834.6A 2014-12-16 2014-12-16 The treating method and apparatus of caching Active CN104503703B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410784834.6A CN104503703B (en) 2014-12-16 2014-12-16 The treating method and apparatus of caching
PCT/CN2015/097176 WO2016095761A1 (en) 2014-12-16 2015-12-11 Cache processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410784834.6A CN104503703B (en) 2014-12-16 2014-12-16 The treating method and apparatus of caching

Publications (2)

Publication Number Publication Date
CN104503703A true CN104503703A (en) 2015-04-08
CN104503703B CN104503703B (en) 2018-06-05

Family

ID=52945104

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410784834.6A Active CN104503703B (en) 2014-12-16 2014-12-16 The treating method and apparatus of caching

Country Status (2)

Country Link
CN (1) CN104503703B (en)
WO (1) WO2016095761A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105227665A (en) * 2015-07-20 2016-01-06 中国科学院计算技术研究所 A kind of caching replacement method for cache node
WO2016095761A1 (en) * 2014-12-16 2016-06-23 华为技术有限公司 Cache processing method and apparatus
CN106383666A (en) * 2016-09-07 2017-02-08 东信和平科技股份有限公司 Data storage method and apparatus
CN109074301A (en) * 2017-03-13 2018-12-21 华为技术有限公司 A kind of data processing method and device
CN109542348A (en) * 2018-11-19 2019-03-29 郑州云海信息技术有限公司 Brush method and device under a kind of data
CN111324415A (en) * 2019-10-28 2020-06-23 烽火通信科技股份有限公司 Virtual machine mirror image cache creating method and system and computer readable medium
CN111831655A (en) * 2020-06-24 2020-10-27 北京字节跳动网络技术有限公司 Data processing method, device, medium and electronic equipment
CN114371810A (en) * 2020-10-15 2022-04-19 中国移动通信集团设计院有限公司 Data storage method and device of HDFS

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113655955B (en) * 2021-07-16 2023-05-16 深圳大普微电子科技有限公司 Cache management method, solid state disk controller and solid state disk

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050005057A1 (en) * 2003-07-04 2005-01-06 Chih-Hung Wang [nonvolatile memory unit with page cache]
CN103049397A (en) * 2012-12-20 2013-04-17 中国科学院上海微系统与信息技术研究所 Method and system for internal cache management of solid state disk based on novel memory
CN103885728A (en) * 2014-04-04 2014-06-25 华中科技大学 Magnetic disk cache system based on solid-state disk

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6418510B1 (en) * 2000-09-14 2002-07-09 International Business Machines Corporation Cooperative cache and rotational positioning optimization (RPO) scheme for a direct access storage device (DASD)
CN102999444A (en) * 2012-11-13 2013-03-27 华为技术有限公司 Method and device for replacing data in caching module
CN103136121B (en) * 2013-03-25 2014-04-16 中国人民解放军国防科学技术大学 Cache management method for solid-state disc
CN103218248B (en) * 2013-03-25 2016-12-28 华为技术有限公司 The update method of a kind of virtual machine image, server and desktop cloud system
CN104503703B (en) * 2014-12-16 2018-06-05 华为技术有限公司 The treating method and apparatus of caching

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050005057A1 (en) * 2003-07-04 2005-01-06 Chih-Hung Wang [nonvolatile memory unit with page cache]
CN103049397A (en) * 2012-12-20 2013-04-17 中国科学院上海微系统与信息技术研究所 Method and system for internal cache management of solid state disk based on novel memory
CN103885728A (en) * 2014-04-04 2014-06-25 华中科技大学 Magnetic disk cache system based on solid-state disk

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016095761A1 (en) * 2014-12-16 2016-06-23 华为技术有限公司 Cache processing method and apparatus
CN105227665B (en) * 2015-07-20 2018-11-30 中国科学院计算技术研究所 A kind of caching replacement method for cache node
CN105227665A (en) * 2015-07-20 2016-01-06 中国科学院计算技术研究所 A kind of caching replacement method for cache node
CN106383666B (en) * 2016-09-07 2020-05-01 东信和平科技股份有限公司 Data storage method and device
CN106383666A (en) * 2016-09-07 2017-02-08 东信和平科技股份有限公司 Data storage method and apparatus
CN109074301A (en) * 2017-03-13 2018-12-21 华为技术有限公司 A kind of data processing method and device
CN109542348A (en) * 2018-11-19 2019-03-29 郑州云海信息技术有限公司 Brush method and device under a kind of data
CN109542348B (en) * 2018-11-19 2022-05-10 郑州云海信息技术有限公司 Data brushing method and device
CN111324415A (en) * 2019-10-28 2020-06-23 烽火通信科技股份有限公司 Virtual machine mirror image cache creating method and system and computer readable medium
CN111831655A (en) * 2020-06-24 2020-10-27 北京字节跳动网络技术有限公司 Data processing method, device, medium and electronic equipment
CN111831655B (en) * 2020-06-24 2024-04-09 北京字节跳动网络技术有限公司 Data processing method, device, medium and electronic equipment
CN114371810A (en) * 2020-10-15 2022-04-19 中国移动通信集团设计院有限公司 Data storage method and device of HDFS
CN114371810B (en) * 2020-10-15 2023-10-27 中国移动通信集团设计院有限公司 Data storage method and device of HDFS

Also Published As

Publication number Publication date
CN104503703B (en) 2018-06-05
WO2016095761A1 (en) 2016-06-23

Similar Documents

Publication Publication Date Title
CN104503703A (en) Cache processing method and device
US10761731B2 (en) Array controller, solid state disk, and method for controlling solid state disk to write data
KR102510384B1 (en) Apparatus, system and method for caching compressed data background
US10133666B2 (en) File storage method and apparatus
US10268410B2 (en) Efficient modification of storage system metadata
US10303374B2 (en) Data check method and storage system
CN110555001B (en) Data processing method, device, terminal and medium
US20080120456A1 (en) Method for flash memory data management
CN105095116A (en) Cache replacing method, cache controller and processor
CN104298606A (en) Garbage collection action control method in SSD
US20160170873A1 (en) Information processing device
CN106598504B (en) data storage method and device
US20170003911A1 (en) Information processing device
CN110389712B (en) Data writing method and device, solid state disk and computer readable storage medium
US9524236B1 (en) Systems and methods for performing memory management based on data access properties
CN104408126B (en) A kind of persistence wiring method of database, device and system
CN107229580A (en) Sequential stream detection method and apparatus
CN116340198B (en) Data writing method and device of solid state disk and solid state disk
US20170003890A1 (en) Device, program, recording medium, and method for extending service life of memory
CN103577349B (en) Select the method and apparatus that data carry out brush in the caches
CN112181274B (en) Large block organization method for improving performance stability of storage device and storage device thereof
CN110119245B (en) Method and system for operating NAND flash memory physical space to expand memory capacity
CN104375955A (en) Cache device and control method thereof
US9927996B2 (en) Information processing device
US20190034121A1 (en) Information processing apparatus, method and non-transitory computer-readable storage medium

Legal Events

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