CN103226522A - 一种固态硬盘缓冲区的数据块置换方法及装置 - Google Patents
一种固态硬盘缓冲区的数据块置换方法及装置 Download PDFInfo
- Publication number
- CN103226522A CN103226522A CN2013101232514A CN201310123251A CN103226522A CN 103226522 A CN103226522 A CN 103226522A CN 2013101232514 A CN2013101232514 A CN 2013101232514A CN 201310123251 A CN201310123251 A CN 201310123251A CN 103226522 A CN103226522 A CN 103226522A
- Authority
- CN
- China
- Prior art keywords
- data block
- length
- hit
- solid state
- time period
- 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
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种固态硬盘缓冲区的数据块置换方法,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述方法包括以下步骤:每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。具有可以大量节约时间和空间资源的特点。
Description
技术领域
本发明涉及存储技术,尤其涉及一种固态硬盘缓冲区的数据块置换方法及装置。
背景技术
关于固态硬盘,目前有多种缓冲区置换方法和装置。
目前,各种方法和装置均存在的问题是处理非常复杂,并且多以数据页为单元进行处理,消耗大量的时间和空间资源。
迄今为止,还未出现很好解决大量消耗资源等技术问题的技术方案。
发明内容
本发明的目的是提供一种固态硬盘缓冲区的数据块置换方法,具有可以大量节约时间和空间资源的特点。
本发明采用下述技术方案:
本发明提供一种固态硬盘缓冲区的数据块置换方法,用于在时间段T内置换所述固态硬盘缓一种固态硬盘缓冲区的数据块置换方法,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述方法包括以下步骤:
a.每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;
b.将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。
步骤a包括如下步骤:
a1.获取固态硬盘缓冲区中在时间t内的各个数据块的命中长度Bi,所述时间段T=nt,n为自然数,第i个数据块的命中长度为Bi,i为自然数;
a2.获取固态硬盘缓冲区中在时间t内的所有被命中数据块的平均命中长度η;
a3.每隔时间段t,比较各个数据块的命中长度Bi与所有被命中数据块的平均命中长度η,若Bi大于或等于η则Bi自动加1,若Bi小于或等于η则Bi不变;
a4.每隔时间段T,即每隔时间段nt,获取各个数据块的命中长度Bi。
本发明还提供了一种固态硬盘缓冲区的数据块置换装置,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述装置包括:
a.数据块长度处理器,所述数据块长度处理器用于每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;
b.数据块置换器,所述数据块置换器用于将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。
数据块长度处理器包括:
a1.t时间段数据块命中长度处理单元,所述数据块命中长度处理单元用于获取固态硬盘缓冲区中在时间t内的各个数据块的命中长度Bi,所述时间段T=nt,n为自然数,第i个数据块的命中长度为Bi,i为自然数;
a2.数据块命中平均长度处理单元,所述数据块命中平均长度处理单元用于获取固态硬盘缓冲区中在时间t内的所有被命中数据块的平均命中长度η;
a3.数据块比较单元,所述数据块比较单元用于每隔时间段t,比较各个数据块的命中长度Bi与所有被命中数据块的平均命中长度η,若Bi大于或等于η则Bi自动加1,若Bi小于或等于η则Bi不变;
a4.T时间段数据块命中长度处理单元,所述T时间段数据块命中长度处理单元用于每隔时间段T,即每隔时间段nt,获取各个数据块的命中长度Bi。
本发明具有克服了以下2个问题:
其一,以数据页作为基本操作单位导致维护缓存的表很大且不易遍历访问和置换;
其二,无法满足大量随机写操作的要求;具有相当大的实用特点。
附图说明
图1是本发明的方法步骤示意图;
图2是本发明的装置结构示意图。
具体实施方式
本发明的实施例提供本发明的目的是提供一种固态硬盘缓冲区的数据块置换方法和装置,具有可以大量节约时间和空间资源的特点。
本发明采用下述技术方案:
本发明提供一种固态硬盘缓冲区的数据块置换方法,用于在时间段T内置换所述固态硬盘缓一种固态硬盘缓冲区的数据块置换方法,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述方法包括以下步骤:
步骤S1.每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;
步骤S2.将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。
步骤S1包括如下步骤:
S11.获取固态硬盘缓冲区中在时间t内的各个数据块的命中长度Bi,所述时间段T=nt,n为自然数,第i个数据块的命中长度为Bi,i为自然数;
S12.获取固态硬盘缓冲区中在时间t内的所有被命中数据块的平均命中长度η;
S13.每隔时间段t,比较各个数据块的命中长度Bi与所有被命中数据块的平均命中长度η,若Bi大于或等于η则Bi自动加1,若Bi小于或等于η则Bi不变;
S14.每隔时间段T,即每隔时间段nt,获取各个数据块的命中长度Bi。
本发明还提供了一种固态硬盘缓冲区的数据块置换装置,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述装置包括:
a.数据块长度处理器1,所述数据块长度处理器1用于每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;
b.数据块置换器2,所述数据块置换器2用于将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。
数据块长度处理器1包括:
a1.t时间段数据块命中长度处理单元,所述数据块命中长度处理单元用于获取固态硬盘缓冲区中在时间t内的各个数据块的命中长度Bi,所述时间段T=nt,n为自然数,第i个数据块的命中长度为Bi,i为自然数;
a2.数据块命中平均长度处理单元,所述数据块命中平均长度处理单元用于获取固态硬盘缓冲区中在时间t内的所有被命中数据块的平均命中长度η;
a3.数据块比较单元,所述数据块比较单元用于每隔时间段t,比较各个数据块的命中长度Bi与所有被命中数据块的平均命中长度η,若Bi大于或等于η则Bi自动加1,若Bi小于或等于η则Bi不变;
a4.T时间段数据块命中长度处理单元,所述T时间段数据块命中长度处理单元用于每隔时间段T,即每隔时间段nt,获取各个数据块的命中长度Bi。
以下对本发明的实施例进行更详细说明。
固态硬盘数据块缓冲区置换方法主要分为数据页缓存操作和数据块缓存操作两大部分。数据块中保护若干数据页。其中数据块空间的块大小定义为与固态硬盘中闪存执行擦除操作的块大小相同。
本实施例设立一个全局变量C,每当发生一次数据块写操作请求C自动加1,为缓冲区中数据块空间的每个数据块b关联了3个变量:L、M和N,其中L表示b进入缓冲区的顺序(当时的计数值),否则为最近一次被命中的顺序,被命中即指对数据块进行写操作;M是b的写操作计数器;N表示b最近两次被命中之间对其它数据块进行写操作的次数,称为“命中长度”,记为B.
“数据块命中长度Bi”为,经过某个时间段,缓冲区数据块空间中的某个数据块的命中长度。
数据页p命中长度的属于本领域技术人员所知的现有技术,本发明中不再赘述,而数据块A的命中长度与该数据块所包含的数据页p的命中长度有关。
数据块A命中长度的计算还需如下步骤。对数据块A的位置记法描述如下:
现在假设数据块A中包含s个数据页(按照数据页地址的从小到达的顺序依次记为p1,p2,…,ps)则:
数据块A在数据块序列中的第一个位置可以描述为向量
数据块A在数据块序列中的第二个位置可以描述为向量
对数据块A的两次位置所产生的“数据块命中长度Aij”的描述如下:
不难看出对Ai的处理是一个时间复杂度为O(nn)的处理,要占用非常大的时间和空间,因此需要引入数据块矩阵精简对Ai的处理。
对数据块Ai的矩阵精简处理如下:
若设置k=1,则A12简化为
数据块命中长度A12的值为:
因此数据块Ai的命中长度为0。
而数据块平均命中长度η为,在某个时间段内,缓冲区中数据块空间内的数据块序列“b1,b2,…,bn”中所有被命中的数据块的命中长度的平均值。
例如,数据块的访问序列为:b1,b3,b4,b2,b3,则在访问第一个数据块b3之后,C=2,L=1,M=1,N=0;访问第二个b3后,C=5,L=5,M=2,N=3。
假设访问缓冲区中数据块序列为“b1,b2,b2,b3,b2,b1”而言,并规定数据块空间大小为6,初始状态为空.当访问最后一个b2时,可知在过去6次访问中,b1在第6次访问时被命中,其命中长度B1=5,而b2在第2、第3及第5次访问时被命中,其命中长度分别为0、0和1.可知该序列过去6次访问的平均命中长度是η=(5+0+0+1)/5=1.
数据块缓存发生数据块置换的过程以及判别条件,当一定时间内,计算出来的数据块序列中的各个数据块命中长度与数据Bi与数据块平均命中长度η做比较,若Bi大于或等于η则Bi自动加1,反之则不变;当需要做置换时,选择数据块序列中Bi数值最大的数据所对应的数据块作为替换块。
本发明具有克服了以下2个问题:
其一,以数据页作为基本操作单位导致维护缓存的表很大且不易遍历访问和置换;
其二,无法满足大量随机写操作的要求;具有相当大的实用特点。
以上对本发明的具体实施例进行了描述,需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以再所附权利要求的范围内做出各种变形或修改。
Claims (4)
1.一种固态硬盘缓冲区的数据块置换方法,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述方法包括以下步骤:
a.每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;
b.将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。
2.根据权利要求1所述的方法,其特征在于,所述步骤a包括如下步骤:
a1.获取固态硬盘缓冲区中在时间t内的各个数据块的命中长度Bi,所述时间段T=nt,n为自然数,第i个数据块的命中长度为Bi,i为自然数;
a2.获取固态硬盘缓冲区中在时间t内的所有被命中数据块的平均命中长度η;
a3.每隔时间段t,比较各个数据块的命中长度Bi与所有被命中数据块的平均命中长度η,若Bi大于或等于η则Bi自动加1,若Bi小于或等于η则Bi不变;
a4.每隔时间段T,即每隔时间段nt,获取各个数据块的命中长度Bi。
3.一种固态硬盘缓冲区的数据块置换装置,用于在时间段T内置换所述固态硬盘缓冲区的数据块,所述固态硬盘缓冲区包括至少2个数据块,其特征在于,所述装置包括:
a.数据块长度处理器,所述数据块长度处理器用于每隔时间段T,获取固态硬盘缓冲区中各个数据块的命中长度Bi;
b.数据块置换器,所述数据块置换器用于将所有数据块中的命中长度Bi数值最大的数据块作为替换块,置换所有数据块中命中长度Bi的数值最小的数据块。
4.根据权利要求3所述的装置,其特征在于,所述数据块长度处理器包括:
a1.t时间段数据块命中长度处理单元,所述数据块命中长度处理单元用于获取固态硬盘缓冲区中在时间t内的各个数据块的命中长度Bi,所述时间段T=nt,n为自然数,第i个数据块的命中长度为Bi,i为自然数;
a2.数据块命中平均长度处理单元,所述数据块命中平均长度处理单元用于获取固态硬盘缓冲区中在时间t内的所有被命中数据块的平均命中长度η;
a3.数据块比较单元,所述数据块比较单元用于每隔时间段t,比较各个数据块的命中长度Bi与所有被命中数据块的平均命中长度η,若Bi大于或等于η则Bi自动加1,若Bi小于或等于η则Bi不变;
a4.T时间段数据块命中长度处理单元,所述T时间段数据块命中长度处理单元用于每隔时间段T,即每隔时间段nt,获取各个数据块的命中长度Bi。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310123251.4A CN103226522B (zh) | 2013-04-10 | 2013-04-10 | 一种固态硬盘缓冲区的数据块置换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310123251.4A CN103226522B (zh) | 2013-04-10 | 2013-04-10 | 一种固态硬盘缓冲区的数据块置换方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103226522A true CN103226522A (zh) | 2013-07-31 |
CN103226522B CN103226522B (zh) | 2016-07-06 |
Family
ID=48836979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310123251.4A Active CN103226522B (zh) | 2013-04-10 | 2013-04-10 | 一种固态硬盘缓冲区的数据块置换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103226522B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105608014A (zh) * | 2015-07-21 | 2016-05-25 | 上海磁宇信息科技有限公司 | 一种使用mram的存储设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050152461A1 (en) * | 2004-01-09 | 2005-07-14 | Matsushita Elec. Ind. Co. Ltd. | Digital data demodulator, digital data modulator, and digital data modulator-demodulator |
CN1852318A (zh) * | 2006-04-19 | 2006-10-25 | 华中科技大学 | 适用于对象网络存储的分布式多级缓存系统 |
-
2013
- 2013-04-10 CN CN201310123251.4A patent/CN103226522B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050152461A1 (en) * | 2004-01-09 | 2005-07-14 | Matsushita Elec. Ind. Co. Ltd. | Digital data demodulator, digital data modulator, and digital data modulator-demodulator |
CN1852318A (zh) * | 2006-04-19 | 2006-10-25 | 华中科技大学 | 适用于对象网络存储的分布式多级缓存系统 |
Non-Patent Citations (1)
Title |
---|
汤显等: "FClock:一种面向SSD的自适应缓冲区管理算法", 《计算机学报》, vol. 33, no. 8, 15 August 2010 (2010-08-15), pages 1460 - 1471 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105608014A (zh) * | 2015-07-21 | 2016-05-25 | 上海磁宇信息科技有限公司 | 一种使用mram的存储设备 |
CN105608014B (zh) * | 2015-07-21 | 2018-09-14 | 上海磁宇信息科技有限公司 | 一种使用mram的存储设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103226522B (zh) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021120789A1 (zh) | 数据写入方法、装置及存储服务器和计算机可读存储介质 | |
US10838642B2 (en) | Efficient modification of storage system metadata | |
US9965196B2 (en) | Resource reservation for storage system metadata updates | |
CN104156380A (zh) | 一种分布式存储器哈希索引方法及系统 | |
CN105095116A (zh) | 缓存替换的方法、缓存控制器和处理器 | |
US20190005101A1 (en) | Method and apparatus for accessing time series data in memory | |
CN104699422A (zh) | 缓存数据的确定方法及装置 | |
CN103559027A (zh) | 一种key与value分开存储的key-value存储系统设计方法 | |
CN106407224A (zh) | 一种键值存储系统中文件压实的方法和装置 | |
JP2017084338A (ja) | フラッシュメモリのフラッシングを改善する方法およびシステム | |
CN105190574B (zh) | 在共享存储环境中提供本地高速缓存一致性 | |
US20140258672A1 (en) | Demand determination for data blocks | |
CN104461943A (zh) | 数据读取方法、装置以及系统 | |
CN112286459A (zh) | 一种数据处理方法、装置、设备及介质 | |
US10334011B2 (en) | Efficient sorting for a stream processing engine | |
US20150212744A1 (en) | Method and system of eviction stage population of a flash memory cache of a multilayer cache system | |
US8930631B2 (en) | Efficient management of computer memory using memory page associations and memory | |
CN104750432A (zh) | 一种数据存储方法及装置 | |
US10241716B2 (en) | Global occupancy aggregator for global garbage collection scheduling | |
CN105068941A (zh) | 一种缓存页面替换方法及装置 | |
CN106201918A (zh) | 一种基于大数据量和大规模缓存快速释放的方法和系统 | |
CN102722456A (zh) | 闪存存储设备的数据写入方法和闪存存储设备 | |
CN103226522A (zh) | 一种固态硬盘缓冲区的数据块置换方法及装置 | |
CN104317735A (zh) | 大容量缓存及数据存储和读取、内存分配和回收的方法 | |
CN105264500B (zh) | 一种数据传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220809 Address after: 8th Floor, Building 5, Henan Information Security Demonstration Base, No. 115, Baorui Road, Jinshui District, Zhengzhou City, Henan Province, 450000 Patentee after: Henan Zhongan Zhike Information Technology Co., Ltd. Address before: Room 1801, Unit 1, Building 2, No. 66, Jingsan Road, Jinshui District, Zhengzhou City, Henan Province, 450008 Patentee before: HENAN ZHONGTIAN YIKE ELECTRONIC SCIENCE & TECHNOLOGY CO.,LTD. |
|
TR01 | Transfer of patent right |