WO2016082176A1 - 一种数据阈值预测方法与相关装置 - Google Patents

一种数据阈值预测方法与相关装置 Download PDF

Info

Publication number
WO2016082176A1
WO2016082176A1 PCT/CN2014/092447 CN2014092447W WO2016082176A1 WO 2016082176 A1 WO2016082176 A1 WO 2016082176A1 CN 2014092447 W CN2014092447 W CN 2014092447W WO 2016082176 A1 WO2016082176 A1 WO 2016082176A1
Authority
WO
WIPO (PCT)
Prior art keywords
threshold
data block
current period
data
period
Prior art date
Application number
PCT/CN2014/092447
Other languages
English (en)
French (fr)
Inventor
丁岩
张烽
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201480038613.2A priority Critical patent/CN105493024B/zh
Priority to PCT/CN2014/092447 priority patent/WO2016082176A1/zh
Publication of WO2016082176A1 publication Critical patent/WO2016082176A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

Definitions

  • the present invention relates to the field of data storage, and in particular, to a data threshold prediction method and related apparatus.
  • the cache performance layer In storage devices, in order to improve IO performance, you need to deploy a cache performance layer to cache the most recent or most accessed data. Because the cache performance layer is much faster than the hard disk drive (HDD, Hard Disk Drive) media, the cache performance layer can speed up the overall access performance of the storage device.
  • HDD Hard Disk Drive
  • SSD solid state drive
  • the storage device counts the number of times the accessed data block is accessed within a preset time period, and the storage device sets a fixed preset threshold, if the data block is accessed within the preset time period. If the number of times is greater than the preset threshold, the data block is determined to be hotspot data, and the data block is moved from the HDD into the SSD.
  • the reasonable setting of the preset threshold has a very important meaning: if the preset threshold is set too low, the amount of data moved into the SSD will be too large, affecting the SSD. The service life; if the preset threshold is set too high, it will result in the data block with higher traffic being considered as not hot data can not be moved into the SSD, affecting the overall access performance of the storage device.
  • the IO access mode of the service to the data is dynamic, and the access of the service to the SSD is also fluctuating.
  • the values of the optimal preset thresholds are different. Therefore, the fixed threshold of the SSD is difficult to be properly set, which affects the overall access performance of the storage device.
  • the embodiment of the invention provides a data threshold prediction method, which can improve the overall access performance of the storage device.
  • a first aspect of the embodiments of the present invention provides a data threshold prediction method, including:
  • Calculating a first actual threshold of a previous period of the current period the first actual threshold being used to represent The minimum number of times the data block identified as hotspot data is accessed in the last week of the current cycle;
  • the predicted threshold for a cycle includes:
  • the calculating the second actual threshold of the current period includes:
  • the minimum value of the number of times of access of each data block in the first first number of data blocks with the highest number of times of access in the current period is determined as the second actual threshold
  • the calculating the first actual threshold of the previous period of the current period includes:
  • the minimum value of the number of times of access of each data block in the first second number of data blocks with the highest number of times of access in the last week of the current period is determined as the first actual threshold.
  • the counting the number of times of accessing each data block in the current period includes:
  • the statistics of the number of times of accessing each data block in the last week of the current period include:
  • the value range is 5% to 10% of the total number of cache blocks of the SSD.
  • a second aspect of the embodiments of the present invention provides a data threshold prediction apparatus, including:
  • a threshold statistic module configured to calculate a first actual threshold of a previous period of the current period, where the first actual threshold is used to represent a minimum visited of a data block that is confirmed as hotspot data in the last week of the current period frequency;
  • the threshold statistic module is further configured to calculate a second actual threshold of the current period, where the second actual threshold is used to indicate a minimum number of accessed data blocks that are confirmed as hotspot data in the current period;
  • a threshold prediction module configured to determine, according to the first actual threshold and the second actual threshold, a prediction threshold of a next period of the current period, where the prediction threshold is used to indicate a next period of the current period The minimum number of times the data block that was moved into the SSD SSD was accessed.
  • the threshold prediction module is specifically configured to:
  • the threshold statistics module includes:
  • the access count statistics unit is configured to count the number of times of accessing each data block in the current period
  • An available cache determining unit configured to determine a first number of available cache blocks of the SSD in the current period
  • the actual threshold value determining unit is configured to determine, as the second actual threshold value, a minimum value of the number of times of accessing each data block in the first first number of data blocks with the highest number of times of access in the current period;
  • the access count statistics unit is further configured to count the number of times of accessing each data block in the previous week of the current period
  • the available cache determining unit is further configured to determine a second number of available cache blocks of the SSD in the last week of the current period;
  • the actual threshold determining unit is further configured to determine, as the minimum value of the number of times of accessing each data block, in the first second number of data blocks with the highest number of times of access in the previous period of the current period.
  • the first actual threshold is described.
  • the access count statistics unit includes:
  • a data block determining subunit configured to determine a size of each data block in the current period
  • An increment value determining subunit configured to determine, according to a size of each data block in the current period, a correspondence between a size of the data block and an increment value, and an increment value when each data block in the current period is accessed once ;
  • the data block determining subunit is further configured to determine a size of each data block in the previous period of the current period;
  • the increment value determining subunit is further configured to determine, according to the size of each data block in the previous week of the current period, the correspondence between the size of the data block and the increment value, and determine the last week of the current period. An increment value when each data block is accessed once;
  • the number of statistics subunits is further configured to accumulate all the increment values corresponding to each data block in the previous period of the current period, and obtain the interview of each data block in the previous period of the current period. Number of questions.
  • the first number and the second number are The range is 5% to 10% of the total number of cache blocks of the SSD.
  • a third aspect of the embodiments of the present invention provides a data threshold prediction apparatus, including an input device, an output device, a processor, and a memory, wherein the processor is configured to perform the following steps by calling an operation instruction stored in a memory:
  • the processor is further configured to:
  • the processor is further configured to:
  • the minimum value of the number of times of access of each data block in the first first number of data blocks with the highest number of times of access in the current period is determined as the second actual threshold
  • the first second number of data blocks with the highest number of times of access in the last week of the current cycle The minimum value of the number of times of access of each data block is determined as the first actual threshold.
  • the processor is further configured to:
  • the first number and the second number are The range is 5% to 10% of the total number of cache blocks of the SSD.
  • An embodiment of the present invention provides a data threshold prediction method, including: calculating a first actual threshold of a current period, and calculating a second actual threshold of a previous period of the current period; and the first actual threshold according to the first actual threshold The second actual threshold determines a prediction threshold for the next cycle of the current cycle.
  • the method provided by the embodiment of the present invention enables the storage device to predict the prediction threshold of the next period SSD according to the current period and the actual threshold of the previous period. In the next period, the data block whose access times are higher than the prediction threshold is moved in. SSD.
  • the threshold of the SSD is no longer a fixed preset threshold, but dynamically changes with the service condition, so that the threshold of the SSD can be closer to the actual requirement, and the overall access performance of the storage device is improved.
  • FIG. 1 is a flowchart of an embodiment of a data threshold prediction method according to an embodiment of the present invention
  • FIG. 2 is a flowchart of another embodiment of a data threshold prediction method according to an embodiment of the present invention.
  • FIG. 3 is a flowchart of another embodiment of a data threshold prediction method according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of an embodiment of a data threshold prediction apparatus according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of another embodiment of a data threshold prediction apparatus according to an embodiment of the present invention.
  • FIG. 6 is a flowchart of another embodiment of a data threshold prediction apparatus according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of another embodiment of a data threshold prediction apparatus according to an embodiment of the present invention.
  • the embodiment of the invention provides a data threshold prediction method, which can improve the access performance of the storage device as a whole and prolong the service life of the SSD.
  • the present invention also proposes a related data threshold prediction apparatus, which will be separately described below.
  • the basic flow of the data threshold prediction method provided by the embodiment of the present invention is as shown in FIG. 1, and includes:
  • the storage device is provided with a preset period.
  • the data block whose number of accesses reaches the threshold is regarded as hotspot data and can be moved into the SSD.
  • the data threshold prediction apparatus calculates a first actual threshold of a previous period of the current period, where the first actual threshold is used to indicate that the data block identified as hotspot data is the smallest accessed during the previous week of the current period. frequency. That is, in the last week of the current cycle, the data block whose number of accesses is not less than the first actual threshold is considered to be a hotspot data block.
  • the data threshold prediction means calculates a second actual threshold of the current period, the second actual threshold being used to indicate the minimum number of accesses of the data block identified as hotspot data in the current period. That is, in the current cycle, the data block whose number of accesses is not less than the second actual threshold is considered to be a hotspot data block.
  • the data threshold prediction apparatus determines, according to the first actual threshold and the second actual threshold, a prediction threshold of a next period of the current period, the prediction threshold is used to indicate that the data block moved into the SSD is the smallest accessed in the next period of the current period. frequency.
  • the storage device may confirm the data block not less than the access number as hotspot data and move into the SSD in the next cycle of the current cycle.
  • the embodiment provides a data threshold prediction method, including: calculating a first actual threshold of a current period, and calculating a second actual threshold of a previous period of the current period; and according to the first actual threshold and the first The second actual threshold determines a prediction threshold for the next cycle of the current cycle.
  • the method provided by this embodiment enables the storage device to predict the prediction threshold of the next periodic SSD according to the current period and the actual threshold of the previous period, so that the data block whose access times are higher than the prediction threshold is moved in the next period. SSD.
  • the threshold of the SSD is no longer a fixed preset threshold, but dynamically changes with the service condition, so that the threshold of the SSD can be closer to the actual requirement, and the overall access performance of the storage device is improved.
  • the actual threshold of the period is used for each period. It will be used twice (respectively for predicting the prediction threshold for the next cycle of the cycle, and the prediction threshold for the next cycle of the cycle). Therefore, preferably, after the data threshold prediction device calculates the actual threshold of a certain period, the actual threshold may be temporarily saved in the memory until the actual threshold is used twice.
  • FIG. 1 provides a basic flow of the data threshold prediction method provided by the embodiment of the present invention, so that the storage device can predict the prediction threshold of the next periodic SSD according to the current period and the actual threshold of the previous period.
  • FIG. 2 For the method for predicting the prediction threshold of the next period SSD according to the current period and the actual threshold of the previous period, refer to FIG. 2, including:
  • Steps 201 and 202 are basically the same as steps 101 and 102, and are not described herein.
  • step 203 is performed;
  • step 204 is performed.
  • the second actual threshold is greater than the first actual threshold, it indicates that the current period is lower than the previous period, and the buffer capacity of the SSD is decreased.
  • the condition that the data block is moved into the SSD is increased, and one data block needs to be accessed more times. It is confirmed to be a hot data block and moved into the SSD. Since the buffering capacity of the SSD is declining, the prediction threshold should be set larger.
  • the second actual threshold is determined as the prediction threshold, that is, in the next period, the data block whose number of accesses is not less than the second actual threshold is determined as the hotspot data block and moved into the SSD.
  • the second actual threshold is not greater than the first actual threshold, it indicates that the current period is higher than the previous period, the buffering capacity of the SSD is increasing, the condition that the data block is moved into the SSD is unchanged or decreased, and one data block is accessed unchanged. Or fewer times, it can be confirmed as a hot data block and moved into the SSD. Since the cache capability of the SSD is on the rise, the prediction threshold should be set smaller. For the sake of SSD performance, in order to prevent the threshold from falling rapidly, too much data is moved into the SSD in the next cycle to affect the life of the SSD. Therefore, the prediction threshold should not be too large.
  • the average value of the second actual threshold and the first actual threshold is determined as a prediction threshold, that is, in the next period, the data block whose access times are not less than the average of the second actual threshold and the first actual threshold is determined. It is a hot data block and is moved into the SSD.
  • the embodiment provides a data threshold prediction method, including: calculating a first actual threshold of a current period, and calculating a second actual threshold of the previous period of the current period; if the second actual threshold is greater than the first actual threshold, Then, the second actual threshold is determined as the prediction threshold; if the second actual threshold is not greater than the first actual threshold, the average of the second actual threshold and the first actual threshold is determined as the prediction threshold.
  • the method provided in this embodiment enables the storage device to determine the trend of the SSD cache capability according to the current period and the actual threshold of the previous cycle, and then predict the prediction threshold of the next cycle SSD.
  • the second actual threshold is determined as the prediction threshold; the buffering capacity of the SSD is on an upward trend, and in order to prevent the threshold from falling rapidly, too much data is moved into the SSD in the next cycle to affect the life of the SSD, and the second actual threshold is The average of the first actual threshold is determined as the predicted threshold.
  • the threshold of the SSD is no longer a fixed preset threshold, but dynamically changes with the trend of the SSD's buffering capability.
  • the buffering capacity of the SSD is increasing, the data moved into the SSD will increase.
  • the SSD's caching capability is declining, the amount of data moved into the SSD will decrease. This achieves dynamic optimization of the SSD threshold and improves the accessibility of the storage device as a whole. Can and extend the life of the SSD.
  • FIG. 2 gives a specific method of predicting the prediction threshold of the next period SSD based on the actual threshold of the current period and the previous period.
  • the following embodiment will give the determination of the first and second actual thresholds.
  • FIG. 3 the flow of still another embodiment provided by the present invention includes:
  • the data threshold prediction device counts the number of times each data block is accessed in the previous week of the current cycle.
  • each data block is accessed once, and the number of times the data block is accessed is counted as one.
  • the data block is accessed once, and the number of times the data block is accessed may be counted by two or more to increase the possibility that the data block is determined to be a hot data block. This can be achieved by the following methods:
  • the data threshold prediction device determines the size of each data block in the previous week of the current cycle
  • the data threshold prediction device determines, according to the size of each data block in the previous week of the current cycle, the corresponding relationship between the size and the increment value of the data block, and determines the increment value when each data block is accessed once in the previous period of the current cycle. ;
  • the data threshold prediction device accumulates all the increment values corresponding to each data block in the previous period of the current cycle, and obtains the number of times of access of each data block in the previous period of the current cycle.
  • the SSD performs data caching in units of cache blocks, and the number of available cache blocks of the SSD is used to indicate the number of cache blocks in the SSD that can be used for data caching.
  • the data threshold prediction means determines the second number of available cache blocks of the SSD during the previous week of the current cycle.
  • the second number of values may be a certain percentage of the total number of cache blocks of the SSD, such as 5% to 10%, which is not limited herein.
  • the step 302 may also be before step 301, which is not limited herein.
  • the number of cache blocks available in the SSD in the last week of the current period is the second number. Therefore, in this embodiment, the data threshold prediction apparatus will use the second and second data blocks with the highest number of accesses in the previous period of the current period.
  • the minimum value of the number of times of access of each data block is determined as a first actual threshold, and the data block whose number of times of access in the previous period of the current period is not less than the first actual threshold is regarded as a hot data block. It can be understood that the number of hotspot data blocks determined by this method will be closer to the second number.
  • the data threshold prediction device counts the number of times each data block is accessed during the current period.
  • the number of times that each data block in the current period is accessed may be specifically implemented by the following method:
  • the data threshold prediction device determines the size of each data block in the current period
  • the data threshold prediction apparatus determines, according to the size of each data block in the current period, the corresponding relationship between the size of the data block and the increment value, and determines an increment value when each data block is accessed once in the current period;
  • the data threshold prediction means accumulates all the increment values corresponding to each data block in the current period to obtain the number of times of access of each data block in the current period.
  • the SSD performs data caching in units of cache blocks, and the number of available cache blocks of the SSD is used to indicate the number of cache blocks in the SSD that can be used for data caching.
  • the data threshold prediction means determines the first number of available cache blocks of the SSD during the current period.
  • the first number of values may be a certain percentage of the total number of cache blocks of the SSD, such as 5% to 10%, which is not limited herein.
  • the step 305 may also be before step 304, which is not limited herein.
  • the number of cache blocks available in the SSD in the current period is the first number. Therefore, in this embodiment, the data threshold prediction apparatus will be the first number of data blocks in the current period, the highest number of times of access, and the data block of each data block.
  • the minimum value of the number of accesses is determined as the second actual threshold, and the data block whose number of accesses in the current period is not less than the second actual threshold is considered to be a hotspot data block. It can be understood that the number of hotspot data blocks determined by this method will be closer to the first number.
  • step 307 is performed if the second actual threshold is greater than the first actual threshold
  • step 308 is performed.
  • Steps 307 and 308 are basically the same as steps 203 and 204, and are not described herein.
  • This embodiment provides a more detailed method for predicting data thresholds, and details a method for calculating a first actual threshold of a current period and a second actual threshold for calculating a previous period of the current period; When the threshold is greater than the first actual threshold, the second actual threshold is determined as the predicted threshold; if the second actual threshold is not greater than the first actual threshold, the average of the second actual threshold and the first actual threshold is determined as the predicted threshold.
  • the method provided in this embodiment enables the storage device to determine the trend of the SSD cache capability according to the current period and the actual threshold of the previous cycle, and then predict the prediction threshold of the next cycle SSD.
  • the second actual threshold is determined as the prediction threshold; the buffering capacity of the SSD is on an upward trend, and in order to prevent the threshold from falling rapidly, too much data is moved into the SSD in the next cycle to affect the life of the SSD, and the second actual threshold is The average of the first actual threshold is determined as the predicted threshold.
  • the threshold of the SSD is no longer a fixed preset threshold, but dynamically changes with the trend of the SSD's buffering capability.
  • the buffering capacity of the SSD is increasing, the data moved into the SSD will increase.
  • the SSD's caching capability is declining, the amount of data moved into the SSD will decrease. This achieves dynamic optimization of the SSD threshold, improves the overall access performance of the storage device, and extends the life of the SSD.
  • a preset period of 30 minutes is set in the storage device.
  • the data threshold prediction device counts the number of times each data block in the storage device is accessed during the last week of the current cycle. Wherein, if a certain data block is larger than 64 KB, the increment value of the data block is 1 when it is accessed once; if a data block is less than or equal to 64 KB, the increment value of the data block is 0 when it is accessed once.
  • the statistical result has a total of 100 data blocks, of which 10 have been accessed 50 times, 30 have been accessed 30 times, 20 have been accessed 20 times, and 0 have been accessed. There are 40 data blocks.
  • the total cache block data capacity in the SSD is 400, assuming that the number of available cache blocks per cycle is 8% of the total number of cache blocks, that is, 32. In the last 32 periods of the current cycle, among the top 32 data blocks with the highest number of accesses, The minimum number of times of access for each data block is 30, so the first actual threshold of the previous cycle of the current cycle is determined to be 30.
  • the data threshold prediction device counts the number of times each data block in the storage device is accessed during the current period. There are still 100 data blocks in the statistical results, 10 of which have been accessed 50 times, 15 of which have been accessed 30 times, 20 of which have been accessed 20 times, and 0 times of access. There are 55 data blocks. The number of available cache blocks in the SSD is 32. In the current period, among the first 32 data blocks with the highest number of accesses, the minimum number of times of accessing each data block is 20, so the second actual threshold of the current period is determined to be 20.
  • the predicted threshold is the average 25 of the second actual threshold and the first actual threshold, that is, the data block whose number of times of access is not less than 25 is determined in the next period of the current period. It is a hot data block and is moved into the SSD.
  • An embodiment of the present invention further provides a data threshold prediction apparatus.
  • FIG. 4 For the basic structure, refer to FIG. 4, which includes:
  • the threshold statistics module 401 is configured to calculate a first actual threshold of a previous period of the current period, and a second actual threshold of the current period.
  • the storage device is provided with a preset period.
  • the data block whose number of accesses reaches the threshold is regarded as hotspot data and can be moved into the SSD.
  • the threshold statistic module 401 calculates a first actual threshold of a previous period of the current period, where the first actual threshold is used to indicate that the data block that is confirmed as hotspot data is accessed the last period of the current period. frequency. That is, in the last week of the current cycle, the data block whose number of accesses is not less than the first actual threshold is considered to be a hotspot data block.
  • the threshold statistics module 401 calculates a second actual threshold of the current period, the second actual threshold being used to indicate the minimum number of accesses of the data block identified as hotspot data in the current period. That is, in the current cycle, the data block whose number of accesses is not less than the second actual threshold is considered to be a hotspot data block.
  • threshold statistics module 401 calculates the second actual threshold, which will be described in detail in the following embodiments, which are not limited herein.
  • the threshold prediction module 402 is configured to determine, according to the first actual threshold and the second actual threshold, The prediction threshold for the next cycle of the current cycle.
  • the threshold prediction module 402 determines, according to the first actual threshold and the second actual threshold, a prediction threshold of a next period of the current period, where the prediction threshold is used to indicate that the data block moved into the SSD is the smallest accessed in the next period of the current period. frequency. After the prediction threshold is determined, the storage device may confirm the data block not less than the access number as hotspot data and move into the SSD in the next cycle of the current cycle.
  • the present embodiment provides a data threshold prediction apparatus, including: a threshold statistic module 401, configured to calculate a first actual threshold of a previous period of a current period, and a second actual threshold of a current period; a threshold prediction module 402, configured to And determining, according to the first actual threshold and the second actual threshold, a prediction threshold of a next period of the current period.
  • the apparatus provided in this embodiment enables the storage device to predict the prediction threshold of the next period SSD according to the current period and the actual threshold of the previous period, so that in the next period, the data block whose access times are higher than the prediction threshold is moved in. SSD. In this way, the threshold of the SSD is no longer a fixed preset threshold, but dynamically changes with the service situation.
  • the actual threshold for that cycle will be used twice (predicted by the prediction threshold for the next cycle of the cycle, respectively, and the predicted threshold for the next cycle of the cycle). Therefore, after the threshold statistic module 401 calculates the actual threshold of a certain period, the actual threshold can be temporarily saved in the memory until the actual threshold is used twice.
  • the threshold prediction module 402 is specifically configured to:
  • the second actual threshold is determined as the predicted threshold. If the second actual threshold is greater than the first actual threshold, it indicates that the current period is lower than the previous period, and the buffer capacity of the SSD is decreased. The condition that the data block is moved into the SSD is increased, and one data block needs to be accessed more times. It is confirmed to be a hot data block and moved into the SSD. Since the buffering capacity of the SSD is declining, the prediction threshold should be set larger. In this embodiment, the second actual threshold is determined as the prediction threshold, that is, in the next period, the data block whose number of accesses is not less than the second actual threshold is determined as the hotspot data block and moved into the SSD.
  • the second actual threshold is first The average of the actual thresholds is determined as the predicted threshold. If the second actual threshold is not greater than the first actual threshold, it indicates that the current period is higher than the previous period, the buffering capacity of the SSD is increasing, the condition that the data block is moved into the SSD is unchanged or decreased, and one data block is accessed unchanged. Or fewer times, it can be confirmed as a hot data block and moved into the SSD. Since the cache capability of the SSD is on the rise, the prediction threshold should be set smaller. For the sake of SSD performance, in order to prevent the threshold from falling rapidly, too much data is moved into the SSD in the next cycle to affect the life of the SSD. Therefore, the prediction threshold should not be too large.
  • the average value of the second actual threshold and the first actual threshold is determined as a prediction threshold, that is, in the next period, the data block whose access times are not less than the average of the second actual threshold and the first actual threshold is determined. It is a hot data block and is moved into the SSD.
  • the data threshold prediction apparatus provided by the embodiment shown in FIG. 4 is capable of predicting the prediction threshold of the next period SSD according to the current period and the actual threshold of the previous period.
  • the following embodiment will show the structure of a data threshold prediction device capable of determining the first and second actual thresholds, see Figure 5:
  • the threshold statistics module 501 is configured to calculate a first actual threshold of a previous period of the current period, and a second actual threshold of the current period.
  • the threshold statistics module 501 specifically includes:
  • the access number statistics unit 5011 is configured to count the number of times of accessing each data block in the current period
  • each data block is accessed once, and the number of times the data block is accessed is counted as one.
  • the data block is accessed once, and the number of times the data block is accessed may be added by two or more to increase the possibility that the data block is determined to be a hot data block.
  • the available cache determining unit 5012 is configured to determine a first number of available cache blocks of the SSD in the current period
  • the SSD performs data caching in units of cache blocks, and the number of available cache blocks of the SSD is used to indicate the number of cache blocks in the SSD that can be used for data caching.
  • the available cache determining unit 5012 determines the first number of available cache blocks of the SSD in the current period.
  • the first number of values may be a certain percentage of the total number of cache blocks of the SSD, such as 5% to 10%, which is not limited herein.
  • the actual threshold determining unit 5013 is configured to use the first one of the highest number of times of access in the current period. The minimum value of the number of times of accessing each data block in the number of data blocks is determined as a second actual threshold;
  • the number of cache blocks available in the SSD in the current period is the first number. Therefore, in this embodiment, the actual threshold determining unit 5013 will use the first first number of data blocks in the current period, the highest number of times of access, and the data block. The minimum value of the number of times of access is determined as the second actual threshold, and the data block whose number of times of access in the current period is not less than the second actual threshold is regarded as a hotspot data block. It can be understood that the number of hotspot data blocks determined by this method will be closer to the first number.
  • the access count statistic unit 5011 is further configured to count the number of times of accessing each data block in the previous week of the current cycle
  • the cache priority of the small block data is higher than the cache priority of the large block data in order to save the IO time of the system.
  • Level which saves IO time and improves the overall performance of the system.
  • the data block is accessed once, and the number of times the data block is accessed may be added by two or more to increase the possibility that the data block is determined to be a hot data block.
  • the available cache determining unit 5012 is further configured to determine a second number of available cache blocks of the SSD in the last week of the current period;
  • the SSD performs data caching in units of cache blocks, and the number of available cache blocks of the SSD is used to indicate the number of cache blocks in the SSD that can be used for data caching.
  • the data threshold prediction means determines the second number of available cache blocks of the SSD during the previous week of the current cycle.
  • the second number of values may be a certain percentage of the total number of cache blocks of the SSD, such as 5% to 10%, which is not limited herein.
  • the actual threshold determining unit 5013 is further configured to determine, as the first, the minimum number of times of accessing each data block in the first second number of data blocks with the highest number of accesses in the previous period of the current cycle. Actual threshold.
  • the number of cache blocks available in the SSD in the last week of the current period is the second number. Therefore, in this embodiment, the data threshold prediction apparatus will use the second and second data blocks with the highest number of accesses in the previous period of the current period.
  • the minimum value of the number of times of access of each data block is determined as a first actual threshold, and the data block whose number of times of access in the previous period of the current period is not less than the first actual threshold is regarded as a hot data block. It can be understood that the number of hotspot data blocks determined by this method will be closer to the second number.
  • the threshold prediction module 502 is configured to determine a prediction threshold of a next period of the current period according to the first actual threshold and the second actual threshold.
  • the threshold prediction module 502 determines the second actual threshold as the prediction threshold if the second actual threshold is greater than the first actual threshold. If the second actual threshold is greater than the first actual threshold, it indicates that the current period is lower than the previous period, and the buffer capacity of the SSD is decreased. The condition that the data block is moved into the SSD is increased, and one data block needs to be accessed more times. It is confirmed to be a hot data block and moved into the SSD. Since the buffering capacity of the SSD is declining, the prediction threshold should be set larger. In this embodiment, the second actual threshold is determined as the prediction threshold, that is, in the next period, the data block whose number of accesses is not less than the second actual threshold is determined as the hotspot data block and moved into the SSD.
  • the threshold prediction module 502 determines the average of the second actual threshold and the first actual threshold as the predicted threshold. If the second actual threshold is not greater than the first actual threshold, it indicates that the current period is higher than the previous period, the buffering capacity of the SSD is increasing, the condition that the data block is moved into the SSD is unchanged or decreased, and one data block is accessed unchanged. Or fewer times, it can be confirmed as a hot data block and moved into the SSD. Since the cache capability of the SSD is on the rise, the prediction threshold should be set smaller. For the sake of SSD performance, in order to prevent the threshold from falling rapidly, too much data is moved into the SSD in the next cycle to affect the life of the SSD.
  • the prediction threshold should not be too large.
  • the average value of the second actual threshold and the first actual threshold is determined as a prediction threshold, that is, in the next period, the data block whose access times are not less than the average of the second actual threshold and the first actual threshold is determined. It is a hot data block and is moved into the SSD.
  • This embodiment provides a more detailed data threshold prediction apparatus, which explains in detail how the apparatus calculates a first actual threshold of a current period and a second actual threshold of a previous period of the current period. If the second actual threshold is greater than the first actual threshold, the threshold prediction module 502 determines the second actual threshold as the predicted threshold; if the second actual threshold is not greater than the first actual threshold, the threshold prediction module 502 sets the second actual threshold The average of an actual threshold is determined as the predicted threshold.
  • the device provided in this embodiment enables the storage device to determine the trend of the SSD cache capability according to the current period and the actual threshold of the previous cycle, and further predict the prediction threshold of the next cycle SSD.
  • the second actual threshold is determined as the prediction threshold; the buffering capacity of the SSD is on an upward trend, and in order to prevent the threshold from falling rapidly, too much data is moved into the SSD in the next cycle to affect the life of the SSD, and the second actual threshold is The average of the first actual threshold is determined as the predicted threshold.
  • the threshold of the SSD is no longer a fixed preset threshold, but dynamically changes with the trend of the SSD's buffering capability.
  • the buffering capacity of the SSD is increasing, the data moved into the SSD will increase.
  • the SSD's caching capability is declining, the amount of data moved into the SSD will decrease. This achieves dynamic optimization of the SSD threshold, improves the overall access performance of the storage device, and extends the life of the SSD.
  • the embodiment shown in FIG. 5 provides a structure of a data threshold prediction apparatus capable of determining first and second actual thresholds. The following embodiment will further refine the access count statistics unit therein, as shown in FIG.
  • the structure of the data threshold prediction apparatus includes:
  • the threshold statistics module 601 is configured to calculate a first actual threshold of a previous period of the current period, and a second actual threshold of the current period.
  • the threshold statistics module 601 specifically includes:
  • the access count statistic unit 6011 is configured to count the number of times of access of each data block in the current period, and the number of times of accessing each data block in the previous period of the current period.
  • each data block is accessed once, and the number of times the data block is accessed is counted as one.
  • the data block is accessed once, and the number of times the data block is accessed may be counted by two or more to increase the possibility that the data block is determined to be a hot data block.
  • the access count statistics unit 6011 specifically includes:
  • a data block determining sub-unit 60111 configured to determine a size of each data block in a current period, and determine a size of each data block in a previous period of the current period;
  • the increment value determining sub-unit 60112 is configured to determine, according to the size of each data block in the current period, a corresponding value of the size of the data block and the increment value, and determine an increment value when each data block in the current period is accessed once. And an increment value when each data block is accessed once during the last week of the current cycle;
  • the number statistics sub-unit 60113 is configured to accumulate all the increment values corresponding to each data block in the current period to obtain the number of times of accessing each data block in the current period, and each data block in the previous period of the current period. The corresponding incremental values are accumulated to obtain the number of times each data block is accessed in the previous period of the current cycle.
  • the available cache determining unit 6012 is configured to determine the first of the available cache blocks of the SSD in the current period number
  • the actual threshold determining unit 6013 is configured to determine, as a second actual threshold, a minimum value of the number of times of accessing each data block in the first first number of data blocks with the highest number of times of access in the current period;
  • the threshold prediction module 602 is configured to determine a prediction threshold of a next period of the current period according to the first actual threshold and the second actual threshold.
  • the number statistics sub-unit 60113 is configured to accumulate all the increment values corresponding to each data block in the current period to obtain the number of times of accessing each data block in the current period, and each data block in the previous period of the current period. The corresponding incremental values are accumulated to obtain the number of times each data block is accessed in the previous period of the current cycle.
  • the available cache determining unit 6012, the actual threshold determining unit 6013, and the threshold predicting module 602 are substantially the same as the available buffer determining unit 5012, the actual threshold determining unit 513, and the threshold predicting module 502 in the embodiment shown in FIG. 5, and are not described herein. .
  • This embodiment provides a more detailed data threshold prediction apparatus, which explains in detail how the access count statistics unit in the apparatus counts the number of times each data block is accessed.
  • the device provided in this embodiment enables the storage device to not only dynamically optimize the SSD threshold, but also improve the overall access performance of the storage device, and can move relatively large data blocks into the SSD as much as possible, thereby reducing the data blocks moved into the SSD. The number avoids reducing the useful life of the SSD by reading a large number of small data blocks into the SSD.
  • the access count statistic unit 6011 counts the number of times of access of each data block in the storage device during the last week of the current cycle.
  • the data block determining sub-unit 60111 determines the size of each data block. If a certain data block is greater than 64 KB, the increment value determining sub-unit 60112 determines that the increment value of the data block is 1 when it is accessed once; if a certain data The block is less than or equal to 64 KB, and the increment value determining sub-unit 60112 determines that the increment value of the data block every time it is accessed is 2.
  • the number-of-statistics sub-unit 60113 statistically obtains a total of 100 data blocks, of which 10 have been accessed 50 times, 30 have been accessed 30 times, and 20 have been accessed 20 times. There are 40 data blocks that have been accessed 0 times.
  • the total cache block data capacity in the SSD is 400, and the available cache determining unit 6012 determines the number of available cache blocks in each cycle as the total number of cache blocks. 8%, that is, 32.
  • the actual threshold determining unit 6013 determines the first period of the previous cycle of the current cycle.
  • the actual threshold is 30.
  • the access count statistic unit 6011 counts the number of times each data block in the storage device is accessed during the current period. There are still 100 data blocks in the number counting sub-unit 60113, in which 10 data blocks are accessed 50 times, 15 data blocks are accessed 30 times, and 20 data blocks are accessed 20 times. There are 55 data blocks that have been accessed 0 times.
  • the available cache determining unit 6012 has determined that the number of available cache blocks in the SSD is 32. In the current period, among the first 32 data blocks having the highest number of accesses, the minimum number of times of access of each data block is 20, so the actual threshold determining unit 6013 determines that the second actual threshold of the current period is 20.
  • the threshold prediction module 602 determines that the predicted threshold is the average 25 of the second actual threshold and the first actual threshold, that is, the number of times visited is not less than 25 in the next period of the current period.
  • the data block is determined to be a hot data block and moved into the SSD.
  • the data threshold prediction apparatus in the embodiment of the present invention is described above from the perspective of a unitized functional entity.
  • the data threshold prediction apparatus in the embodiment of the present invention is described below from the perspective of hardware processing. Referring to FIG. 7, the embodiment of the present invention is described.
  • Another embodiment of the data threshold prediction apparatus 700 includes:
  • the input device 701, the output device 702, the processor 703, and the memory 704 (wherein the number of processors 703 in the data threshold prediction device 700 may be one or more, and one processor 703 is taken as an example in FIG. 7).
  • the input device 701, the output device 702, the processor 703, and the memory 704 may be connected by a bus or other means, wherein the bus connection is taken as an example in FIG.
  • the processor 703 is configured to perform the following steps by calling an operation instruction stored in the memory 704:
  • the processor 703 is further configured to perform the following steps:
  • the average of the second actual threshold and the first actual threshold is determined as the predicted threshold.
  • the processor 703 is further configured to perform the following steps:
  • the minimum value of the number of times of access of each data block in the first first number of data blocks with the highest number of times of access in the current period is determined as the second actual threshold
  • the minimum value of the number of times of access of each data block in the first second number of data blocks with the highest number of accesses is determined as the first actual threshold in the previous week of the current cycle.
  • the processor 703 is further configured to perform the following steps:
  • the first number and the second number range from 5% to 10% of the total number of cache blocks of the SSD.
  • the disclosed systems and methods can be implemented in other ways.
  • the system embodiment described above is merely illustrative.
  • the division of the unit is only a logical function division, and the actual implementation may have another division manner, for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, module or unit, and may be electrical, mechanical or otherwise.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供了一种数据阈值预测方法,包括计算当前周期的第一实际阈值,并计算所述当前周期的上一周期的第二实际阈值;根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值。本发明实施例提供的方法实现了SSD阈值的动态优化,提高了存储设备整体的访问性能,并延长了SSD的使用寿命。本发明实施例还提供了相关的数据阈值预测装置。

Description

一种数据阈值预测方法与相关装置 技术领域
本发明涉及数据存储领域,尤其涉及一种数据阈值预测方法与相关装置。
背景技术
在存储设备中,为了提高IO性能,需要部署缓存性能层来缓存最近或最多访问的数据。由于缓存性能层中,缓存介质的访问速度远高于硬盘驱动器(HDD,Hard Disk Drive)的介质,所以部署缓存性能层可以加快存储设备整体的访问性能。
随着固态硬盘(SSD,Solid State Drive)技术的成熟与成本的下降,越来越多的存储设备选择SSD作为缓存介质。具体的,存储设备会统计被访问的数据块在预置时间周期内的被访问次数,且存储设备中设定有固定的预置阈值,若该数据块在该预置时间周期内的被访问次数大于该预置阈值,则确定该数据块为热点数据,并将该数据块从HDD移入SSD中。其中,由于SSD存在着写次数的限制,因此预置阈值的合理设定具有很重要的意义:若预置阈值被设定的太低,会导致移入SSD中的数据量过多,影响SSD的使用寿命;若预置阈值被设定的太高,则会导致访问量较高的数据块被认为不是热点数据不能被移入SSD中,影响存储设备整体的访问性能。
但是在实际应用中,业务对数据的IO访问模式是动态的,进而业务对SSD的访问情况也是波动的。而在不同的访问模式情况下,最为优化的预置阈值的数值也是不同的,因此SSD的固定阈值难以被合理设定,影响了存储设备的整体访问性能。
发明内容
本发明实施例提供了一种数据阈值预测方法,可以提高存储设备的整体访问性能。
本发明实施例第一方面提供了一种数据阈值预测方法,包括:
计算当前周期的上一周期的第一实际阈值,所述第一实际阈值用于表示所 述当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
计算所述当前周期的第二实际阈值,所述第二实际阈值用于表示所述当前周期内被确认为热点数据的数据块的最小被访问次数;
根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值,所述预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的数据块的最小被访问次数。
结合本发明实施例的第一方面,本发明实施例的第一方面的第一种实现方式中,所述根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值包括:
若所述第二实际阈值大于所述第一实际阈值,则将所述第二实际阈值确定为所述预测阈值;
和/或,若所述第二实际阈值不大于所述第一实际阈值,则将所述第二实际阈值与所述第一实际阈值的平均值确定为所述预测阈值。
结合本发明实施例的第一方面与第一方面的第一种实现方式,本发明实施例的第一方面的第二种实现方式中,所述计算当前周期的第二实际阈值包括:
统计所述当前周期内每个数据块的被访问次数;
确定所述当前周期内所述SSD的可用缓存块的第一数目;
将所述当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第二实际阈值;
所述计算所述当前周期的上一周期的第一实际阈值包括:
统计所述当前周期的上一周期内每个数据块的被访问次数;
确定所述当前周期的上一周期内所述SSD的可用缓存块的第二数目;
将所述当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第一实际阈值。
结合本发明实施例的第一方面的第二种实现方式,本发明实施例的第一方面的第三种实现方式中,所述统计所述当前周期内每个数据块的被访问次数包括:
确定所述当前周期内每个数据块的大小;
根据所述当前周期内每个数据块的大小,与数据块的大小与递增值的对应 关系,确定所述当前周期内每个数据块被访问一次时的递增值;
将所述当前周期内每个数据块对应的所有递增值进行累加,得到所述当前周期内每个数据块的被访问次数;
所述统计所述当前周期的上一周期内,每个数据块的被访问次数包括:
确定所述当前周期的上一周期内每个数据块的大小;
根据所述当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期的上一周期内每个数据块被访问一次时的递增值;
将所述当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到所述当前周期的上一周期内每个数据块的被访问次数。
本发明实施例的第一方面的第二种实现方式或第三种实现方式,本发明实施例的第一方面的第四种实现方式中,所述第一数目与所述第二数目的取值范围为所述SSD的总缓存块数的5%~10%。
本发明实施例的第二方面提供了一种数据阈值预测装置,包括:
阈值统计模块,用于计算当前周期的上一周期的第一实际阈值,所述第一实际阈值用于表示所述当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
所述阈值统计模块,还用于计算所述当前周期的第二实际阈值,所述第二实际阈值用于表示所述当前周期内被确认为热点数据的数据块的最小被访问次数;
阈值预测模块,用于根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值,所述预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的数据块的最小被访问次数。
结合本发明实施例的第二方面,本发明实施例的第二方面的第一种实现方式中,所述阈值预测模块具体用于:
若所述第二实际阈值大于所述第一实际阈值,则将所述第二实际阈值确定为所述预测阈值;
和/或,若所述第二实际阈值不大于所述第一实际阈值,则将所述第二实际阈值与所述第一实际阈值的平均值确定为所述预测阈值。
结合本发明实施例的第二方面和第二方面的第一种实现方式,本发明实施例的第二方面的第二种实现方式中,所述阈值统计模块包括:
访问次数统计单元,用于统计所述当前周期内每个数据块的被访问次数;
可用缓存确定单元,用于确定所述当前周期内所述SSD的可用缓存块的第一数目;
实际阈值确定单元,用于将所述当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第二实际阈值;
所述访问次数统计单元,还用于统计所述当前周期的上一周期内每个数据块的被访问次数;
所述可用缓存确定单元,还用于确定所述当前周期的上一周期内所述SSD的可用缓存块的第二数目;
所述实际阈值确定单元,还用于将所述当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第一实际阈值。
结合本发明实施例的第二方面的第二种实现方式,本发明实施例的第二方面的第三种实现方式中,所述访问次数统计单元包括:
数据块确定子单元,用于确定所述当前周期内每个数据块的大小;
递增值确定子单元,用于根据所述当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期内每个数据块被访问一次时的递增值;
次数统计子单元,用于将所述当前周期内每个数据块对应的所有递增值进行累加,得到所述当前周期内每个数据块的被访问次数;
所述数据块确定子单元,还用于确定所述当前周期的上一周期内每个数据块的大小;
所述递增值确定子单元,还用于根据所述当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期的上一周期内每个数据块被访问一次时的递增值;
所述次数统计子单元,还用于将所述当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到所述当前周期的上一周期内每个数据块的被访 问次数。
结合本发明实施例的第二方面的第二种或第三种实现方式,本发明实施例的第二方面的第四种实现方式中,所述第一数目与所述第二数目的取值范围为所述SSD的总缓存块数的5%~10%。
本发明实施例的第三方面提供了一种数据阈值预测装置,包括输入装置、输出装置、处理器和存储器,其特征在于,通过调用存储器存储的操作指令,所述处理器用于执行如下步骤:
计算当前周期的上一周期的第一实际阈值,所述第一实际阈值用于表示所述当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
计算所述当前周期的第二实际阈值,所述第二实际阈值用于表示所述当前周期内被确认为热点数据的数据块的最小被访问次数;
根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值,所述预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的数据块的最小被访问次数。
结合本发明实施例的第三方面,本发明实施例的第三方面的第一种实现方式中,所述处理器还用于执行:
若所述第二实际阈值大于所述第一实际阈值,则将所述第二实际阈值确定为所述预测阈值;
和/或,若所述第二实际阈值不大于所述第一实际阈值,则将所述第二实际阈值与所述第一实际阈值的平均值确定为所述预测阈值。
结合本发明实施例的第三方面或第三方面的第一种实现方式,本发明实施例的第三方面的第二种实现方式中,所述处理器还用于执行:
统计所述当前周期内每个数据块的被访问次数;
确定所述当前周期内所述SSD的可用缓存块的第一数目;
将所述当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第二实际阈值;
统计所述当前周期的上一周期内每个数据块的被访问次数;
确定所述当前周期的上一周期内所述SSD的可用缓存块的第二数目;
将所述当前周期的上一周期内,被访问次数最高的前第二数目个数据块 中,每个数据块的被访问次数的最小值,确定为所述第一实际阈值。
结合本发明实施例的第三方面的第二种实现方式,本发明实施例的第三方面的第三种实现方式中,所述处理器还用于执行:
确定所述当前周期内每个数据块的大小;
根据所述当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期内每个数据块被访问一次时的递增值;
将所述当前周期内每个数据块对应的所有递增值进行累加,得到所述当前周期内每个数据块的被访问次数;
确定所述当前周期的上一周期内每个数据块的大小;
根据所述当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期的上一周期内每个数据块被访问一次时的递增值;
将所述当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到所述当前周期的上一周期内每个数据块的被访问次数。
结合本发明实施例的第三方面的第二种或第三种实现方式,本发明实施例的第三方面的第四种实现方式中,所述第一数目与所述第二数目的取值范围为所述SSD的总缓存块数的5%~10%。
本发明实施例提供了一种数据阈值预测方法,包括:计算当前周期的第一实际阈值,并计算所述当前周期的上一周期的第二实际阈值;根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值。本发明实施例提供的方法使得存储设备可以根据当前周期与上一周期的实际阈值,来预测下一周期SSD的预测阈值,在下一周期内,被访问次数高于该预测阈值的数据块被移入SSD。这样SSD的阈值不再是固定不变的预置阈值,而是随着业务情况而动态变化,使得SSD的阈值能够更加贴近实际需求,提高了存储设备的整体访问性能。
附图说明
图1为本发明实施例中数据阈值预测方法一个实施例流程图;
图2为本发明实施例中数据阈值预测方法另一个实施例流程图;
图3为本发明实施例中数据阈值预测方法另一个实施例流程图;
图4为本发明实施例中数据阈值预测装置一个实施例流程图;
图5为本发明实施例中数据阈值预测装置另一个实施例流程图;
图6为本发明实施例中数据阈值预测装置另一个实施例流程图;
图7为本发明实施例中数据阈值预测装置另一个实施例流程图。
具体实施方式
本发明实施例提供了一种数据阈值预测方法,可以提高存储设备整体的访问性能,并延长SSD的使用寿命。本发明还提出了相关的数据阈值预测装置,以下将分别进行说明。
本发明实施例提供的数据阈值预测方法的基本流程请参阅图1,包括:
101、计算当前周期的上一周期的第一实际阈值;
存储设备中设置有预置的周期,在一个周期内,被访问次数达到阈值的数据块会被认为是热点数据,可以被移入SSD中。
本实施例中,数据阈值预测装置计算当前周期的上一周期的第一实际阈值,该第一实际阈值用于表示当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数。即,在当前周期的上一周期内,被访问次数不小于该第一实际阈值的数据块被认为是热点数据块。
数据阈值预测装置计算第一实际阈值的方法有很多,将在后面的实施例中详述,此处不做限定。
102、计算当前周期的第二实际阈值;
数据阈值预测装置计算当前周期的第二实际阈值,该第二实际阈值用于表示当前周期内被确认为热点数据的数据块的最小被访问次数。即,在当前周期内,被访问次数不小于该第二实际阈值的数据块被认为是热点数据块。
数据阈值预测装置计算第二实际阈值的方法有很多,将在后面的实施例中详述,此处不做限定。
103、根据第一实际阈值与第二实际阈值,确定当前周期的下一周期的预测阈值;
数据阈值预测装置根据第一实际阈值与第二实际阈值,确定当前周期的下一周期的预测阈值,该预测阈值用于表示当前周期的下一周期内,被移入SSD的数据块的最小被访问次数。确定了该预测阈值之后,存储设备可以在当前周期的下一周期内,将不小于该访问次数的数据块确认为热点数据并移入SSD中。
本实施例提供了一种数据阈值预测方法,包括:计算当前周期的第一实际阈值,并计算所述当前周期的上一周期的第二实际阈值;根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值。本实施例提供的方法使得存储设备可以根据当前周期与上一周期的实际阈值,来预测下一周期SSD的预测阈值,使得在下一周期内,被访问次数高于该预测阈值的数据块被移入SSD。这样就使得SSD的阈值不再是固定不变的预置阈值,而是随着业务情况而动态变化,使得SSD的阈值能够更加贴近实际需求,提高了存储设备的整体访问性能。
其中,从步骤101至103中可以看出,若在进行数据读写时不停的通过图1所示的方法来进行SSD的数据阈值预测,则对于每个周期而言,该周期的实际阈值会被使用两次(分别用于预测该周期的下一周期的预测阈值,与该周期的下下周期的预测阈值)。因此优选的,数据阈值预测装置计算得到某个周期的实际阈值后,可以暂时在内存中保存该实际阈值,直至该实际阈值被使用两次。
图1所示的实施例给出了本发明实施例提供的数据阈值预测方法的基本流程,使得存储设备可以根据当前周期与上一周期的实际阈值,来预测下一周期SSD的预测阈值。其中,存储设备根据当前周期与上一周期的实际阈值预测下一周期SSD的预测阈值的方法请参阅图2,包括:
201、计算当前周期的上一周期的第一实际阈值;
202、计算当前周期的第二实际阈值;
步骤201、202与步骤101、102基本相同,此处不做赘述。
其中,若第二实际阈值大于第一实际阈值,则执行步骤203;
若第二实际阈值不大于第一实际阈值,则执行步骤204。
203、将第二实际阈值确定为预测阈值。
若第二实际阈值大于第一实际阈值,则说明当前周期与上一周期相比,SSD的缓存能力呈下降趋势,数据块被移入SSD的条件增高,一个数据块需要被访问更多的次数才能被确认为是热点数据块并被移入到SSD中。由于SSD的缓存能力呈下降趋势,因此预测阈值应设置的较大。本实施例中将第二实际阈值确定为预测阈值,即在下一周期内,将被访问次数不小于第二实际阈值的数据块确定为热点数据块并移入SSD中。
204、将第二实际阈值与第一实际阈值的平均值确定为预测阈值。
若第二实际阈值不大于第一实际阈值,则说明当前周期与上一周期相比,SSD的缓存能力呈上升趋势,数据块被移入SSD的条件不变或降低,一个数据块被访问不变或更少的次数就能被确认为是热点数据块并被移入到SSD中。由于SSD的缓存能力呈上升趋势,因此预测阈值应设置的较小。出于SSD性能的考虑,为了防止阈值快速下降导致下一周期内有过多的数据被移入SSD中进而影响SSD的寿命,因此预测阈值的减小不宜过大。本实施例中将第二实际阈值与第一实际阈值的平均值确定为预测阈值,即在下一周期内,将被访问次数不小于第二实际阈值与第一实际阈值的平均值的数据块确定为热点数据块并移入SSD中。
本实施例提供了一种数据阈值预测方法,包括:计算当前周期的第一实际阈值,并计算所述当前周期的上一周期的第二实际阈值;若第二实际阈值大于第一实际阈值,则将第二实际阈值确定为预测阈值;若第二实际阈值不大于第一实际阈值,则将第二实际阈值与第一实际阈值的平均值确定为预测阈值。本实施例提供的方法使得存储设备可以根据当前周期与上一周期的实际阈值,来判断SSD的缓存能力的趋势,进而预测下一周期SSD的预测阈值,若SSD的缓存能力呈下降趋势,则将第二实际阈值确定为预测阈值;SSD的缓存能力呈上升趋势,则为了防止阈值快速下降导致下一周期内有过多的数据被移入SSD中进而影响SSD的寿命,将第二实际阈值与第一实际阈值的平均值确定为预测阈值。这样就使得SSD的阈值不再是固定不变的预置阈值,而是随着SSD的缓存能力的趋势而动态变化,进而在SSD的缓存能力呈上升趋势时,移入SSD中的数据会增多;SSD的缓存能力呈下降趋势时,移入SSD中的数据量会减少。这样就实现了SSD阈值的动态优化,提高了存储设备整体的访问性 能,并延长了SSD的使用寿命。
图2所示的实施例给出了根据当前周期与上一周期的实际阈值,来预测下一周期SSD的预测阈值的具体方法,下面的实施例将给出确定第一与第二实际阈值的具体方法,请参阅图3,本发明提供的又一实施例的流程包括:
301、统计当前周期的上一周期内每个数据块的被访问次数;
数据阈值预测装置统计当前周期的上一周期内,每个数据块的被访问次数。
可以理解的,由于小块数据被随机访问时,HDD的寻道转动时间开销大,因此优选的,为了节省***的IO时间,应设置小块数据的缓存优先级高于大块数据的缓存优先级,进而节省IO时间,提升***的整体性能。因此一般地,每个数据块被访问一次,则统计时该数据块被访问的次数就会被记加一。但优选的,当数据块较小时,该数据块被访问一次,统计时该数据块被访问的次数可以被记加二甚至更多,以增大该数据块被确定为热点数据块的可能。具体可以通过如下方法实现:
数据阈值预测装置确定当前周期的上一周期内每个数据块的大小;
数据阈值预测装置根据当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定当前周期的上一周期内每个数据块被访问一次时的递增值;
数据阈值预测装置将当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到当前周期的上一周期内每个数据块的被访问次数。
302、确定当前周期的上一周期内SSD的可用缓存块的第二数目;
一般地,SSD进行数据缓存以缓存块为单位,SSD的可用缓存块数目用于表示SSD中可以被用于数据缓存的缓存块的数目。本实施例中,数据阈值预测装置确定当前周期的上一周期内SSD的可用缓存块的第二数目。
优选的,第二数目的取值范围可以为SSD的总缓存块数的一定的百分比,如5%~10%,此处不做限定。
其中,步骤302也可以位于步骤301之前,此处不做限定。
303、将当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为第一实际阈值。
当前周期的上一周期内SSD中可用的缓存块数目为第二数目,因此本实施例中,数据阈值预测装置将当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值确定为第一实际阈值,当前周期的上一周期内被访问次数不小于该第一实际阈值的数据块被认为是热点数据块。可以理解的,通过这种方法确定的热点数据块数目会较为贴近第二数目。
304、统计当前周期内每个数据块的被访问次数;
数据阈值预测装置统计当前周期内,每个数据块的被访问次数。
优选的,类似步骤301,统计当前周期内每个数据块的被访问次数具体可以通过如下方法实现:
数据阈值预测装置确定当前周期内每个数据块的大小;
数据阈值预测装置根据当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定当前周期内每个数据块被访问一次时的递增值;
数据阈值预测装置将当前周期内每个数据块对应的所有递增值进行累加,得到当前周期内每个数据块的被访问次数。
305、确定当前周期内SSD的可用缓存块的第一数目;
一般地,SSD进行数据缓存以缓存块为单位,SSD的可用缓存块数目用于表示SSD中可以被用于数据缓存的缓存块的数目。本实施例中,数据阈值预测装置确定当前周期内SSD的可用缓存块的第一数目。
优选的,第一数目的取值范围可以为SSD的总缓存块数的一定的百分比,如5%~10%,此处不做限定。
其中,步骤305也可以位于步骤304之前,此处不做限定。
306、将当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为第二实际阈值。
当前周期内SSD中可用的缓存块数目为第一数目,因此本实施例中,数据阈值预测装置将当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值确定为第二实际阈值,当前周期内被访问次数不小于该第二实际阈值的数据块被认为是热点数据块。可以理解的,通过这种方法确定的热点数据块数目会较为贴近第一数目。
其中,若第二实际阈值大于第一实际阈值,则执行步骤307;
若第二实际阈值不大于第一实际阈值,则执行步骤308。
307、将第二实际阈值确定为预测阈值。
308、将第二实际阈值与第一实际阈值的平均值确定为预测阈值。
步骤307、308与步骤203、204基本相同,此处不做赘述。
本实施例提供了一种更为细化的数据阈值预测方法,详细解释了计算当前周期的第一实际阈值和计算所述当前周期的上一周期的第二实际阈值的方法;若第二实际阈值大于第一实际阈值,则将第二实际阈值确定为预测阈值;若第二实际阈值不大于第一实际阈值,则将第二实际阈值与第一实际阈值的平均值确定为预测阈值。本实施例提供的方法使得存储设备可以根据当前周期与上一周期的实际阈值,来判断SSD的缓存能力的趋势,进而预测下一周期SSD的预测阈值,若SSD的缓存能力呈下降趋势,则将第二实际阈值确定为预测阈值;SSD的缓存能力呈上升趋势,则为了防止阈值快速下降导致下一周期内有过多的数据被移入SSD中进而影响SSD的寿命,将第二实际阈值与第一实际阈值的平均值确定为预测阈值。这样就使得SSD的阈值不再是固定不变的预置阈值,而是随着SSD的缓存能力的趋势而动态变化,进而在SSD的缓存能力呈上升趋势时,移入SSD中的数据会增多;SSD的缓存能力呈下降趋势时,移入SSD中的数据量会减少。这样就实现了SSD阈值的动态优化,提高了存储设备整体的访问性能,并延长了SSD的使用寿命。
为了便于理解上述实施例,下面将以上述实施例的一个具体应用场景为例进行描述。
存储设备中设置有预置周期30分钟。数据阈值预测装置统计当前周期的上一周期内,存储设备中每个数据块的被访问次数。其中,若某个数据块大于64KB,则该数据块每被访问一次时的递增值为1;若某个数据块小于等于64KB,则该数据块每被访问一次时的递增值为2。统计结果共有100个数据块,其中被访问了50次的数据块有10个,被访问了30次的数据块有30个,被访问了20次的数据块有20个,访问了0次的数据块有40个。SSD中总缓存块数据能力为400个,假设每个周期内可用缓存块数目为总缓存块数目的8%,即32个。当前周期的上一周期内,被访问次数最高的前32个数据块中, 每个数据块的被访问次数的最小值为30,故确定当前周期的上一周期的第一实际阈值为30。
数据阈值预测装置统计当前周期内,存储设备中每个数据块的被访问次数。统计结果仍有100个数据块,其中被访问了50次的数据块有10个,被访问了30次的数据块有15个,被访问了20次的数据块有20个,访问了0次的数据块有55个。SSD中可用缓存块数目为32个。当前周期内,被访问次数最高的前32个数据块中,每个数据块的被访问次数的最小值为20,故确定当前周期的第二实际阈值为20。
由于第二实际阈值不大于第一实际阈值,因此预测阈值为第二实际阈值与第一实际阈值的平均值25,即当前周期的下一周期内,被访问次数不小于25的数据块被确定为热点数据块并移入SSD中。
本发明实施例还提供了一种数据阈值预测装置,其基本结构请参阅图4,包括:
阈值统计模块401,用于计算当前周期的上一周期的第一实际阈值,和当前周期的第二实际阈值。
存储设备中设置有预置的周期,在一个周期内,被访问次数达到阈值的数据块会被认为是热点数据,可以被移入SSD中。
本实施例中,阈值统计模块401计算当前周期的上一周期的第一实际阈值,该第一实际阈值用于表示当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数。即,在当前周期的上一周期内,被访问次数不小于该第一实际阈值的数据块被认为是热点数据块。
阈值统计模块401计算第一实际阈值的方法有很多,将在后面的实施例中详述,此处不做限定。
阈值统计模块401计算当前周期的第二实际阈值,该第二实际阈值用于表示当前周期内被确认为热点数据的数据块的最小被访问次数。即,在当前周期内,被访问次数不小于该第二实际阈值的数据块被认为是热点数据块。
阈值统计模块401计算第二实际阈值的方法有很多,将在后面的实施例中详述,此处不做限定。
阈值预测模块402,用于根据第一实际阈值与所述第二实际阈值,确定所 述当前周期的下一周期的预测阈值。
阈值预测模块402根据第一实际阈值与第二实际阈值,确定当前周期的下一周期的预测阈值,该预测阈值用于表示当前周期的下一周期内,被移入SSD的数据块的最小被访问次数。确定了该预测阈值之后,存储设备可以在当前周期的下一周期内,将不小于该访问次数的数据块确认为热点数据并移入SSD中。
本实施例提供了一种数据阈值预测装置,包括:阈值统计模块401,用于计算当前周期的上一周期的第一实际阈值,和当前周期的第二实际阈值;阈值预测模块402,用于根据第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值。本实施例提供的装置使得存储设备可以根据当前周期与上一周期的实际阈值,来预测下一周期SSD的预测阈值,使得在下一周期内,被访问次数高于该预测阈值的数据块被移入SSD。这样就使得SSD的阈值不再是固定不变的预置阈值,而是随着业务情况而动态变化,进而在业务访问量较高时,移入SSD中的数据会增多;业务访问量较低时,移入SSD中的数据量会减少。这样就实现了SSD阈值的动态优化,提高了存储设备整体的访问性能,并延长了SSD的使用寿命。
对于每个周期而言,该周期的实际阈值会被使用两次(分别用于预测该周期的下一周期的预测阈值,与该周期的下下周期的预测阈值)。因此优选的,阈值统计模块401计算得到某个周期的实际阈值后,可以暂时在内存中保存该实际阈值,直至该实际阈值被使用两次。
其中,作为本发明的又一个实施例,阈值预测模块402具体用于:
若第二实际阈值大于第一实际阈值,则将第二实际阈值确定为预测阈值。若第二实际阈值大于第一实际阈值,则说明当前周期与上一周期相比,SSD的缓存能力呈下降趋势,数据块被移入SSD的条件增高,一个数据块需要被访问更多的次数才能被确认为是热点数据块并被移入到SSD中。由于SSD的缓存能力呈下降趋势,因此预测阈值应设置的较大。本实施例中将第二实际阈值确定为预测阈值,即在下一周期内,将被访问次数不小于第二实际阈值的数据块确定为热点数据块并移入SSD中。
和/或,若第二实际阈值不大于第一实际阈值,则将第二实际阈值与第一 实际阈值的平均值确定为预测阈值。若第二实际阈值不大于第一实际阈值,则说明当前周期与上一周期相比,SSD的缓存能力呈上升趋势,数据块被移入SSD的条件不变或降低,一个数据块被访问不变或更少的次数就能被确认为是热点数据块并被移入到SSD中。由于SSD的缓存能力呈上升趋势,因此预测阈值应设置的较小。出于SSD性能的考虑,为了防止阈值快速下降导致下一周期内有过多的数据被移入SSD中进而影响SSD的寿命,因此预测阈值的减小不宜过大。本实施例中将第二实际阈值与第一实际阈值的平均值确定为预测阈值,即在下一周期内,将被访问次数不小于第二实际阈值与第一实际阈值的平均值的数据块确定为热点数据块并移入SSD中。
图4所示的实施例提供的数据阈值预测装置能够根据当前周期与上一周期的实际阈值,来预测下一周期SSD的预测阈值。下面的实施例将给出能够确定第一与第二实际阈值的数据阈值预测装置的结构,请参阅图5:
阈值统计模块501,用于计算当前周期的上一周期的第一实际阈值,和当前周期的第二实际阈值。本实施例中,阈值统计模块501具体包括:
访问次数统计单元5011,用于统计当前周期内每个数据块的被访问次数;
可以理解的,由于小块数据被随机访问时,HDD的寻道转动时间开销大,因此优选的,为了节省***的IO时间,应设置小块数据的缓存优先级高于大块数据的缓存优先级,进而节省IO时间,提升***的整体性能。因此一般地,每个数据块被访问一次,则统计时该数据块被访问的次数就会被记加一。但优选的,当数据块较小时,该数据块被访问一次,统计时该数据块被访问的次数可以被记加二甚至更多,以增大该数据块被确定为热点数据块的可能
可用缓存确定单元5012,用于确定当前周期内SSD的可用缓存块的第一数目;
一般地,SSD进行数据缓存以缓存块为单位,SSD的可用缓存块数目用于表示SSD中可以被用于数据缓存的缓存块的数目。本实施例中,可用缓存确定单元5012确定当前周期内SSD的可用缓存块的第一数目。
优选的,第一数目的取值范围可以为SSD的总缓存块数的一定的百分比,如5%~10%,此处不做限定。
实际阈值确定单元5013,用于将当前周期内,被访问次数最高的前第一 数目个数据块中,每个数据块的被访问次数的最小值,确定为第二实际阈值;
当前周期内SSD中可用的缓存块数目为第一数目,因此本实施例中,实际阈值确定单元5013将当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值确定为第二实际阈值,当前周期内被访问次数不小于该第二实际阈值的数据块被认为是热点数据块。可以理解的,通过这种方法确定的热点数据块数目会较为贴近第一数目。
所述访问次数统计单元5011,还用于统计当前周期的上一周期内每个数据块的被访问次数;
可以理解的,由于小块数据被随机访问时,HDD的寻道转动时间开销大,因此优选的,为了节省***的IO时间,应设置小块数据的缓存优先级高于大块数据的缓存优先级,进而节省IO时间,提升***的整体性能。但优选的,当数据块较小时,该数据块被访问一次,统计时该数据块被访问的次数可以被记加二甚至更多,以增大该数据块被确定为热点数据块的可能
所述可用缓存确定单元5012,还用于确定当前周期的上一周期内SSD的可用缓存块的第二数目;
一般地,SSD进行数据缓存以缓存块为单位,SSD的可用缓存块数目用于表示SSD中可以被用于数据缓存的缓存块的数目。本实施例中,数据阈值预测装置确定当前周期的上一周期内SSD的可用缓存块的第二数目。
优选的,第二数目的取值范围可以为SSD的总缓存块数的一定的百分比,如5%~10%,此处不做限定。
所述实际阈值确定单元5013,还用于将当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为第一实际阈值。
当前周期的上一周期内SSD中可用的缓存块数目为第二数目,因此本实施例中,数据阈值预测装置将当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值确定为第一实际阈值,当前周期的上一周期内被访问次数不小于该第一实际阈值的数据块被认为是热点数据块。可以理解的,通过这种方法确定的热点数据块数目会较为贴近第二数目。
阈值预测模块502,用于根据第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值。
其中,若第二实际阈值大于第一实际阈值,则阈值预测模块502将第二实际阈值确定为预测阈值。若第二实际阈值大于第一实际阈值,则说明当前周期与上一周期相比,SSD的缓存能力呈下降趋势,数据块被移入SSD的条件增高,一个数据块需要被访问更多的次数才能被确认为是热点数据块并被移入到SSD中。由于SSD的缓存能力呈下降趋势,因此预测阈值应设置的较大。本实施例中将第二实际阈值确定为预测阈值,即在下一周期内,将被访问次数不小于第二实际阈值的数据块确定为热点数据块并移入SSD中。
和/或,若第二实际阈值不大于第一实际阈值,则阈值预测模块502将第二实际阈值与第一实际阈值的平均值确定为预测阈值。若第二实际阈值不大于第一实际阈值,则说明当前周期与上一周期相比,SSD的缓存能力呈上升趋势,数据块被移入SSD的条件不变或降低,一个数据块被访问不变或更少的次数就能被确认为是热点数据块并被移入到SSD中。由于SSD的缓存能力呈上升趋势,因此预测阈值应设置的较小。出于SSD性能的考虑,为了防止阈值快速下降导致下一周期内有过多的数据被移入SSD中进而影响SSD的寿命,因此预测阈值的减小不宜过大。本实施例中将第二实际阈值与第一实际阈值的平均值确定为预测阈值,即在下一周期内,将被访问次数不小于第二实际阈值与第一实际阈值的平均值的数据块确定为热点数据块并移入SSD中。
本实施例提供了一种更为细化的数据阈值预测装置,详细解释了该装置如何计算当前周期的第一实际阈值和计算所述当前周期的上一周期的第二实际阈值。若第二实际阈值大于第一实际阈值,则阈值预测模块502将第二实际阈值确定为预测阈值;若第二实际阈值不大于第一实际阈值,则阈值预测模块502将第二实际阈值与第一实际阈值的平均值确定为预测阈值。本实施例提供的装置使得存储设备可以根据当前周期与上一周期的实际阈值,来判断SSD的缓存能力的趋势,进而预测下一周期SSD的预测阈值,若SSD的缓存能力呈下降趋势,则将第二实际阈值确定为预测阈值;SSD的缓存能力呈上升趋势,则为了防止阈值快速下降导致下一周期内有过多的数据被移入SSD中进而影响SSD的寿命,将第二实际阈值与第一实际阈值的平均值确定为预测阈值。 这样就使得SSD的阈值不再是固定不变的预置阈值,而是随着SSD的缓存能力的趋势而动态变化,进而在SSD的缓存能力呈上升趋势时,移入SSD中的数据会增多;SSD的缓存能力呈下降趋势时,移入SSD中的数据量会减少。这样就实现了SSD阈值的动态优化,提高了存储设备整体的访问性能,并延长了SSD的使用寿命。
图5所示的实施例给出了能够确定第一与第二实际阈值的数据阈值预测装置的结构,下面的实施例将对其中的访问次数统计单元做进一步的细化,请参阅图6,该数据阈值预测装置的结构包括:
阈值统计模块601,用于计算当前周期的上一周期的第一实际阈值,和当前周期的第二实际阈值。本实施例中,阈值统计模块601具体包括:
访问次数统计单元6011,用于统计当前周期内每个数据块的被访问次数,和当前周期的上一周期内每个数据块的被访问次数。
可以理解的,由于小块数据被随机访问时,HDD的寻道转动时间开销大,因此优选的,为了节省***的IO时间,应设置小块数据的缓存优先级高于大块数据的缓存优先级,进而节省IO时间,提升***的整体性能。因此一般地,每个数据块被访问一次,则统计时该数据块被访问的次数就会被记加一。但优选的,当数据块较小时,该数据块被访问一次,统计时该数据块被访问的次数可以被记加二甚至更多,以增大该数据块被确定为热点数据块的可能。
本实施例中,访问次数统计单元6011具体包括:
数据块确定子单元60111,用于确定当前周期内每个数据块的大小,和确定当前周期的上一周期内每个数据块的大小;
递增值确定子单元60112,用于根据当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期内每个数据块被访问一次时的递增值,以及当前周期的上一周期内每个数据块被访问一次时的递增值;
次数统计子单元60113,用于将当前周期内每个数据块对应的所有递增值进行累加,得到当前周期内每个数据块的被访问次数,和将当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到当前周期的上一周期内每个数据块的被访问次数。
可用缓存确定单元6012,用于确定当前周期内SSD的可用缓存块的第一 数目;
实际阈值确定单元6013,用于将当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为第二实际阈值;
阈值预测模块602,用于根据第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值。
次数统计子单元60113,用于将当前周期内每个数据块对应的所有递增值进行累加,得到当前周期内每个数据块的被访问次数,和将当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到当前周期的上一周期内每个数据块的被访问次数。
可用缓存确定单元6012、实际阈值确定单元6013、阈值预测模块602与图5所示的实施例中的可用缓存确定单元5012、实际阈值确定单元513、阈值预测模块502基本相同,此处不做赘述。
本实施例提供了一种更为细化的数据阈值预测装置,详细解释了该装置中的访问次数统计单元如何统计每个数据块的被访问次数。本实施例提供的装置使得存储设备不仅能够实现SSD阈值的动态优化,提高存储设备整体的访问性能,而且能尽可能地将比较大的数据块移入SSD中,减少了移入SSD中的数据块的数目,避免了因向SSD中读入大量的小数据块而降低SSD的使用寿命。
为了便于理解上述实施例,下面将以上述实施例的一个具体应用场景为例进行描述。
存储设备中设置有预置周期30分钟。访问次数统计单元6011统计当前周期的上一周期内,存储设备中每个数据块的被访问次数。其中,数据块确定子单元60111确定每个数据块的大小,若某个数据块大于64KB,则递增值确定子单元60112确定该数据块每被访问一次时的递增值为1;若某个数据块小于等于64KB,则递增值确定子单元60112确定该数据块每被访问一次时的递增值为2。次数统计子单元60113统计得到共有100个数据块,其中被访问了50次的数据块有10个,被访问了30次的数据块有30个,被访问了20次的数据块有20个,访问了0次的数据块有40个。SSD中总缓存块数据能力为400个,可用缓存确定单元6012确定每个周期内可用缓存块数目为总缓存块数目 的8%,即32个。当前周期的上一周期内,被访问次数最高的前32个数据块中,每个数据块的被访问次数的最小值为30,故实际阈值确定单元6013确定当前周期的上一周期的第一实际阈值为30。
访问次数统计单元6011统计当前周期内,存储设备中每个数据块的被访问次数。次数统计子单元60113统计仍有100个数据块,其中被访问了50次的数据块有10个,被访问了30次的数据块有15个,被访问了20次的数据块有20个,访问了0次的数据块有55个。可用缓存确定单元6012已确定SSD中可用缓存块数目为32个。当前周期内,被访问次数最高的前32个数据块中,每个数据块的被访问次数的最小值为20,故实际阈值确定单元6013确定当前周期的第二实际阈值为20。
由于第二实际阈值不大于第一实际阈值,因此阈值预测模块602确定预测阈值为第二实际阈值与第一实际阈值的平均值25,即当前周期的下一周期内,被访问次数不小于25的数据块被确定为热点数据块并移入SSD中。
上面从单元化功能实体的角度对本发明实施例中的数据阈值预测装置进行了描述,下面从硬件处理的角度对本发明实施例中的数据阈值预测装置进行描述,请参阅图7,本发明实施例中的数据阈值预测装置700另一实施例包括:
输入装置701、输出装置702、处理器703和存储器704(其中数据阈值预测装置700中的处理器703的数量可以一个或多个,图7中以一个处理器703为例)。在本发明的一些实施例中,输入装置701、输出装置702、处理器703和存储器704可通过总线或其它方式连接,其中,图7中以通过总线连接为例。
其中,通过调用存储器704存储的操作指令,处理器703用于执行如下步骤:
计算当前周期的上一周期的第一实际阈值,第一实际阈值用于表示当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
计算当前周期的第二实际阈值,第二实际阈值用于表示当前周期内被确认为热点数据的数据块的最小被访问次数;
根据第一实际阈值与第二实际阈值,确定当前周期的下一周期的预测阈值,预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的 数据块的最小被访问次数。
本发明的一些实施例中,处理器703还用于执行如下步骤:
若第二实际阈值大于第一实际阈值,则将第二实际阈值确定为预测阈值;
和/或,若第二实际阈值不大于第一实际阈值,则将第二实际阈值与第一实际阈值的平均值确定为预测阈值。
本发明的一些实施例中,处理器703还用于执行如下步骤:
统计当前周期内每个数据块的被访问次数;
确定当前周期内SSD的可用缓存块的第一数目;
将当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为第二实际阈值;
统计当前周期的上一周期内每个数据块的被访问次数;
确定当前周期的上一周期内SSD的可用缓存块的第二数目;
将当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为第一实际阈值。
本发明的一些实施例中,处理器703还用于执行如下步骤:
确定当前周期内每个数据块的大小;
根据当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定当前周期内每个数据块被访问一次时的递增值;
将当前周期内每个数据块对应的所有递增值进行累加,得到当前周期内每个数据块的被访问次数;
确定当前周期的上一周期内每个数据块的大小;
根据当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定当前周期的上一周期内每个数据块被访问一次时的递增值;
将当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到当前周期的上一周期内每个数据块的被访问次数。
本发明的一些实施例中,第一数目与第二数目的取值范围为SSD的总缓存块数的5%~10%。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程, 在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***和方法,可以通过其它的方式实现。例如,以上所描述的***实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (15)

  1. 一种数据阈值预测方法,其特征在于,包括:
    计算当前周期的上一周期的第一实际阈值,所述第一实际阈值用于表示所述当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
    计算所述当前周期的第二实际阈值,所述第二实际阈值用于表示所述当前周期内被确认为热点数据的数据块的最小被访问次数;
    根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值,所述预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的数据块的最小被访问次数。
  2. 根据权利要求1所述的数据阈值预测方法,其特征在于,所述根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值包括:
    若所述第二实际阈值大于所述第一实际阈值,则将所述第二实际阈值确定为所述预测阈值;
    和/或,若所述第二实际阈值不大于所述第一实际阈值,则将所述第二实际阈值与所述第一实际阈值的平均值确定为所述预测阈值。
  3. 根据权利要求1或2所述的数据阈值预测方法,其特征在于,所述计算当前周期的第二实际阈值包括:
    统计所述当前周期内每个数据块的被访问次数;
    确定所述当前周期内所述SSD的可用缓存块的第一数目;
    将所述当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第二实际阈值;
    所述计算所述当前周期的上一周期的第一实际阈值包括:
    统计所述当前周期的上一周期内每个数据块的被访问次数;
    确定所述当前周期的上一周期内所述SSD的可用缓存块的第二数目;
    将所述当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第一实际阈值。
  4. 根据权利要求3所述的数据阈值预测方法,其特征在于,所述统计所述当前周期内每个数据块的被访问次数包括:
    确定所述当前周期内每个数据块的大小;
    根据所述当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期内每个数据块被访问一次时的递增值;
    将所述当前周期内每个数据块对应的所有递增值进行累加,得到所述当前周期内每个数据块的被访问次数;
    所述统计所述当前周期的上一周期内,每个数据块的被访问次数包括:
    确定所述当前周期的上一周期内每个数据块的大小;
    根据所述当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期的上一周期内每个数据块被访问一次时的递增值;
    将所述当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到所述当前周期的上一周期内每个数据块的被访问次数。
  5. 根据权利要求3或4所述的数据阈值预测方法,其特征在于,所述第一数目与所述第二数目的取值范围为所述SSD的总缓存块数的5%~10%。
  6. 一种数据阈值预测装置,其特征在于,包括:
    阈值统计模块,用于计算当前周期的上一周期的第一实际阈值,所述第一实际阈值用于表示所述当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
    所述阈值统计模块,还用于计算所述当前周期的第二实际阈值,所述第二实际阈值用于表示所述当前周期内被确认为热点数据的数据块的最小被访问次数;
    阈值预测模块,用于根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值,所述预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的数据块的最小被访问次数。
  7. 根据权利要求6所述的数据阈值预测装置,其特征在于,所述阈值预测模块具体用于:
    若所述第二实际阈值大于所述第一实际阈值,则将所述第二实际阈值确定为所述预测阈值;
    和/或,若所述第二实际阈值不大于所述第一实际阈值,则将所述第二实 际阈值与所述第一实际阈值的平均值确定为所述预测阈值。
  8. 根据权利要求6或7所述的数据阈值预测装置,其特征在于,所述阈值统计模块包括:
    访问次数统计单元,用于统计所述当前周期内每个数据块的被访问次数;
    可用缓存确定单元,用于确定所述当前周期内所述SSD的可用缓存块的第一数目;
    实际阈值确定单元,用于将所述当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第二实际阈值;
    所述访问次数统计单元,还用于统计所述当前周期的上一周期内每个数据块的被访问次数;
    所述可用缓存确定单元,还用于确定所述当前周期的上一周期内所述SSD的可用缓存块的第二数目;
    所述实际阈值确定单元,还用于将所述当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第一实际阈值。
  9. 根据权利要求8所述的数据阈值预测装置,其特征在于,所述访问次数统计单元包括:
    数据块确定子单元,用于确定所述当前周期内每个数据块的大小;
    递增值确定子单元,用于根据所述当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期内每个数据块被访问一次时的递增值;
    次数统计子单元,用于将所述当前周期内每个数据块对应的所有递增值进行累加,得到所述当前周期内每个数据块的被访问次数;
    所述数据块确定子单元,还用于确定所述当前周期的上一周期内每个数据块的大小;
    所述递增值确定子单元,还用于根据所述当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期的上一周期内每个数据块被访问一次时的递增值;
    所述次数统计子单元,还用于将所述当前周期的上一周期内每个数据块对 应的所有递增值进行累加,得到所述当前周期的上一周期内每个数据块的被访问次数。
  10. 根据权利要求8或9所述的数据阈值预测装置,其特征在于,所述第一数目与所述第二数目的取值范围为所述SSD的总缓存块数的5%~10%。
  11. 一种数据阈值预测装置,包括输入装置、输出装置、处理器和存储器,其特征在于,通过调用存储器存储的操作指令,所述处理器用于执行如下步骤:
    计算当前周期的上一周期的第一实际阈值,所述第一实际阈值用于表示所述当前周期的上一周期内,被确认为热点数据的数据块的最小被访问次数;
    计算所述当前周期的第二实际阈值,所述第二实际阈值用于表示所述当前周期内被确认为热点数据的数据块的最小被访问次数;
    根据所述第一实际阈值与所述第二实际阈值,确定所述当前周期的下一周期的预测阈值,所述预测阈值用于表示所述当前周期的下一周期内,被移入固态硬盘SSD的数据块的最小被访问次数。
  12. 根据权利要求11所述的数据阈值预测装置,其特征在于,所述处理器还用于执行:
    若所述第二实际阈值大于所述第一实际阈值,则将所述第二实际阈值确定为所述预测阈值;
    和/或,若所述第二实际阈值不大于所述第一实际阈值,则将所述第二实际阈值与所述第一实际阈值的平均值确定为所述预测阈值。
  13. 根据权利要求11或12所述的数据阈值预测装置,其特征在于,所述处理器还用于执行:
    统计所述当前周期内每个数据块的被访问次数;
    确定所述当前周期内所述SSD的可用缓存块的第一数目;
    将所述当前周期内,被访问次数最高的前第一数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第二实际阈值;
    统计所述当前周期的上一周期内每个数据块的被访问次数;
    确定所述当前周期的上一周期内所述SSD的可用缓存块的第二数目;
    将所述当前周期的上一周期内,被访问次数最高的前第二数目个数据块中,每个数据块的被访问次数的最小值,确定为所述第一实际阈值。
  14. 根据权利要求13所述的数据阈值预测装置,其特征在于,所述处理器还用于执行:
    确定所述当前周期内每个数据块的大小;
    根据所述当前周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期内每个数据块被访问一次时的递增值;
    将所述当前周期内每个数据块对应的所有递增值进行累加,得到所述当前周期内每个数据块的被访问次数;
    确定所述当前周期的上一周期内每个数据块的大小;
    根据所述当前周期的上一周期内每个数据块的大小,与数据块的大小与递增值的对应关系,确定所述当前周期的上一周期内每个数据块被访问一次时的递增值;
    将所述当前周期的上一周期内每个数据块对应的所有递增值进行累加,得到所述当前周期的上一周期内每个数据块的被访问次数。
  15. 根据权利要求13或14所述的数据阈值预测装置,其特征在于,所述第一数目与所述第二数目的取值范围为所述SSD的总缓存块数的5%~10%。
PCT/CN2014/092447 2014-11-28 2014-11-28 一种数据阈值预测方法与相关装置 WO2016082176A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201480038613.2A CN105493024B (zh) 2014-11-28 2014-11-28 一种数据阈值预测方法与相关装置
PCT/CN2014/092447 WO2016082176A1 (zh) 2014-11-28 2014-11-28 一种数据阈值预测方法与相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/092447 WO2016082176A1 (zh) 2014-11-28 2014-11-28 一种数据阈值预测方法与相关装置

Publications (1)

Publication Number Publication Date
WO2016082176A1 true WO2016082176A1 (zh) 2016-06-02

Family

ID=55678492

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/092447 WO2016082176A1 (zh) 2014-11-28 2014-11-28 一种数据阈值预测方法与相关装置

Country Status (2)

Country Link
CN (1) CN105493024B (zh)
WO (1) WO2016082176A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503841B (zh) * 2016-10-17 2019-12-13 东软集团股份有限公司 指标阈值的确定方法和装置
CN108021484B (zh) * 2016-11-02 2021-03-16 先智云端数据股份有限公司 云端服务***中磁盘预期寿命值的延长方法及其***
CN107403199B (zh) * 2017-08-07 2021-02-26 北京京东尚科信息技术有限公司 数据处理方法和装置
CN111913650B (zh) * 2019-05-09 2022-01-21 深圳大普微电子科技有限公司 一种确定预测窗口期的方法及装置
CN114500349B (zh) * 2021-12-27 2023-08-08 天翼云科技有限公司 一种云平台混沌测试方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102203749A (zh) * 2010-12-31 2011-09-28 华为技术有限公司 多级缓存下固态硬盘的写方法及装置
CN103186350A (zh) * 2011-12-31 2013-07-03 北京快网科技有限公司 混合存储***及热点数据块的迁移方法
US8838916B2 (en) * 2011-09-15 2014-09-16 International Business Machines Corporation Hybrid data storage management taking into account input/output (I/O) priority

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101788995B (zh) * 2009-12-31 2011-11-09 成都市华为赛门铁克科技有限公司 一种热点数据识别方法及装置
CN101887400B (zh) * 2010-06-24 2015-08-12 中兴通讯股份有限公司 缓存对象老化的方法和装置
US8972661B2 (en) * 2011-10-31 2015-03-03 International Business Machines Corporation Dynamically adjusted threshold for population of secondary cache
CN103092867B (zh) * 2011-11-03 2017-02-01 ***通信集团甘肃有限公司 一种数据管理方法及***、数据分析装置
CN104111900B (zh) * 2013-04-22 2017-06-20 ***通信集团公司 一种缓存中数据替换方法及装置
CN103473335B (zh) * 2013-09-18 2016-08-17 浪潮(北京)电子信息产业有限公司 一种热点数据检测方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102203749A (zh) * 2010-12-31 2011-09-28 华为技术有限公司 多级缓存下固态硬盘的写方法及装置
US8838916B2 (en) * 2011-09-15 2014-09-16 International Business Machines Corporation Hybrid data storage management taking into account input/output (I/O) priority
CN103186350A (zh) * 2011-12-31 2013-07-03 北京快网科技有限公司 混合存储***及热点数据块的迁移方法

Also Published As

Publication number Publication date
CN105493024B (zh) 2019-03-08
CN105493024A (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
WO2016082176A1 (zh) 一种数据阈值预测方法与相关装置
US9606937B1 (en) Cache insertion based on threshold access frequency
US9626309B1 (en) Method and controller for requesting queue arbitration and coalescing memory access commands
JP6640242B2 (ja) ハイブリッドストレージシステム内のサービス品質を改善するためのシステム及び方法
CN103092526B (zh) 在存储设备间进行数据迁移的方法和装置
WO2022057391A1 (zh) 缓存内存调整方法、装置及计算机设备
CN103051701B (zh) 一种缓存准入方法及装置
US20150199281A1 (en) Apparatus and method for meeting performance metrics for users in file systems
US20050097085A1 (en) Method for prioritizing content
CN107534615B (zh) 用于自适应数据压缩的装置和方法
WO2013075341A1 (zh) 缓存文件替换方法、装置及***
EP4020153A1 (en) Cache space management method and device
CN109086009B (zh) 一种监控管理方法和装置、计算机可读存储介质
CN110209502B (zh) 一种信息存储方法、装置、电子设备及存储介质
US20210157725A1 (en) Method and apparatus for dynamically adapting cache size based on estimated cache performance
US20140258672A1 (en) Demand determination for data blocks
US20120290789A1 (en) Preferentially accelerating applications in a multi-tenant storage system via utility driven data caching
TWI493446B (zh) 記憶體管理方法及記憶體管理裝置
CN111245732A (zh) 一种流量控制方法、装置及设备
JP6060276B2 (ja) 監視レコード管理方法及びデバイス
CN104424118A (zh) 热点文件自适应拷贝方法及***
US8930773B2 (en) Determining root cause
CN110928489A (zh) 一种写数据方法、装置及存储节点
US10587527B1 (en) Systems and methods for apportioning bandwidth in storage systems
CN114253917A (zh) 基于文件访问特性的分布式自适应存储方法及***

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480038613.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14906913

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14906913

Country of ref document: EP

Kind code of ref document: A1