CN104268099A - 一种管理数据读写的方法及装置 - Google Patents

一种管理数据读写的方法及装置 Download PDF

Info

Publication number
CN104268099A
CN104268099A CN201410438004.8A CN201410438004A CN104268099A CN 104268099 A CN104268099 A CN 104268099A CN 201410438004 A CN201410438004 A CN 201410438004A CN 104268099 A CN104268099 A CN 104268099A
Authority
CN
China
Prior art keywords
data block
corresponding relation
deposit position
request
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410438004.8A
Other languages
English (en)
Other versions
CN104268099B (zh
Inventor
张书宁
徐旸
刘友生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201410438004.8A priority Critical patent/CN104268099B/zh
Publication of CN104268099A publication Critical patent/CN104268099A/zh
Application granted granted Critical
Publication of CN104268099B publication Critical patent/CN104268099B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种管理数据读写的方法及装置,包括:当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值;比较确定的数据块的热度分数值与预设的热度分数值阈值的大小,并根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置;根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。本发明技术方案提高了存储***的整体性能。

Description

一种管理数据读写的方法及装置
技术领域
本发明涉及计算机技术,尤指一种管理数据读写的方法及装置。 
背景技术
随着计算机技术的发展,存储***逐渐从计算***中迁移出来,并逐渐形成一种独立的设备。如今整个计算***可以看作由计算节点、交换节点和存储节点三部分组成。随着计算节点计算容量的不断增加,对后端存储***性能提出了越来越高的要求。 
普通机械硬盘由于受机械结构的影响,整体性能普遍偏低,普通机械硬盘每秒进行读写(I/O)操作的次数(IOPS)在100次左右,即使企业级高速机械硬盘的IOPS也不会超过200次。因此,通过普通机械硬盘组成的存储***的整体性能受到了极大的限制。随着技术的发展,固态(SSD)硬盘的使用变得越来越普及,而且,当前SSD硬盘的IOPS可以达到普通机械硬盘的百倍。 
申请号为“201010540729.X”,申请名称为“一种分布式的分级存储***”公开了基于网络环境,可以实现多台不同级别存储设备间的数据迁移处理,需要策略服务器实现具体的操作,整个***相对复杂,整个存储***的成本很高,并且对于单一存储的情况无法应对。 
申请号为“201110388104.0”,申请名称为“一种分级存储***和方法”虽然实现了单一存储***中不同存储介质的分层处理,但仅仅针对IO的随机特性和顺序特性实现数据迁移到特定层的存储介质上。但在实际生产环境中,由于数据具有特定的业务相关性,因此该申请很难适应所有的情况。因此简单的使用该申请的方法将会造成数据在不同层的介质之间频繁的迁移数据,从而影响了存储***的整体性能。 
如何提高存储***的整体性能以及降低存储***的成本是一个亟需解决的难题。 
发明内容
为了解决上述技术问题,本发明提供了一种管理数据读写的方法及装置,能够提高存储***的整体性能。 
为了达到本发明目的,本发明提供了一种管理数据读写的方法,包括: 
当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值; 
比较确定的数据块的热度分数值与预设的热度分数值阈值的大小,并根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置; 
根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。 
进一步地,该方法之前还包括:预先建立存储***中存储的各个数据块的名称与存放位置和各个数据块I/O请求的总次数一一对应的对应关系;其中,各个数据块I/O请求的总次数初始值设置为0。 
进一步地,判断出数据块I/O请求的总次数小于或者等于预置统计门限值且大于1时,该方法还包括: 
按照对应关系中的该数据块的存放位置读取数据块或者将数据块写入对应关系中的数据块的存放位置;以及, 
当数据块I/O请求的总次数等于1时,且I/O请求显示为写入请求时,该方法还包括: 
将数据块写入速存储设备,并将数据块的名称和存放位置保存在对应关系中。 
进一步地,存放位置所在的存储***包括高速存储设备和低速存储设备。 
进一步地,确定数据块的热度分数值包括:根据数据块的访问频度、迁移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。 
进一步地,按照公式(1)确定数据块的热度分数值: 
hot = 1 n Σ k = 0 n α R k * 1 β M k + μ n Σ k = 0 n c * ( γ - s ) - - - ( 1 )
其中,Rk表示第k次的数据块的访问频度,Mk表示第k次的数据块的迁移频度,α表示访问频度系数,β表示迁移频度系数,μ表示读写属性,c表示连续或随机特性,s表示大小属性,γ表示大小属性参考值,n表示统计次数,c的取值为0或1。 
进一步地,根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置,包括: 
当数据块的热度分数值大于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当数据块存放在高速存储设备时,数据块在对应关系中的存放位置不变;当数据块存放在低速存储设备时,更新数据块在对应关系中的存放位置为高速存储设备; 
当数据块的热度分数值小于或等于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当数据块存放在低速存储设备时,数据块在对应关系中的存放位置不变;当数据块存放在高速存储设备时,更新数据块在对应关系中的存放位置为低速存储设备。 
进一步地,在当该数据块存放在低速存储设备时,更新数据块在对应关系中的存放位置为高速存储设备之后,将数据块迁移至高速存储设备中;或者, 
在当该数据块存放在高速存储设备时,更新数据块在对应关系中的存放位置为低速存储设备之后,将数据块迁移至低速存储设备中。 
进一步地,根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作,包括: 
当更新后的对应关系中的数据块的存放位置显示为高速存储设备,则从高速存储设备中读取数据块或者将数据块写入高速存储设备中; 
当更新后的对应关系中的数据块的存放位置显示为低速存储设备,则从低速存储设备中读取该数据块或者将该数据块写入低速存储设备中。 
本发明还提供了一种管理数据读写的装置,包括:确定模块、更新模块、 比较模块和操作模块;其中, 
确定模块,用于当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值; 
比较模块,用于比较确定的数据块的热度分数值与预设的热度分数值阈值的大小; 
更新模块,用于根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置; 
操作模块,用于根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。 
进一步地,该装置还包括配置模块,用于:预先建立存储***中存储的各个数据块的名称与存放位置和各个数据块I/O请求的总次数一一对应的对应关系;其中,各个数据块I/O请求的总次数初始值设置为0。 
进一步地,操作模块还用于:当该数据块I/O请求的总次数小于或者等于预置统计门限值且大于1时,按照对应关系中的该数据块的存放位置读取数据块或者将数据块写入对应关系中的该数据块的存放位置;以及, 
当数据块I/O请求的总次数等于1时,且I/O请求显示为写入请求时,将数据块写入速存储设备,并将数据块的名称和存放位置保存在对应关系中。 
进一步地,存放位置所在的存储***包括高速存储设备和低速存储设备。 
进一步地,确定模块具体用于:根据数据块的访问频度、迁移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。 
进一步地,确定模块按照公式(1)确定数据块的热度分数值: 
hot = 1 n Σ k = 0 n α R k * 1 β M k + μ n Σ k = 0 n c * ( γ - s ) - - - ( 1 )
其中,Rk表示第k个统计时长T内的数据块的访问频度,Mk表示第k个统计时长T内的数据块的迁移频度,α表示访问频度系数,β表示迁移频 度系数,μ表示读写属性,c表示连续或随机特性,s表示大小属性,γ表示大小属性参考值,n表示统计次数,c的取值为0或1。 
进一步地,更新模块具体用于: 
当数据块的热度分数值大于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当数据块存放在高速存储设备时,数据块在对应关系中的存放位置不变;当数据块存放在低速存储设备时,更新数据块在对应关系中的存放位置为高速存储设备; 
当数据块的热度分数值小于或等于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当数据块存放在低速存储设备时,数据块在对应关系中的存放位置不变;当数据块存放在高速存储设备时,更新数据块在对应关系中的存放位置为低速存储设备。 
进一步地,更新模块还用于: 
在当该数据块存放在低速存储设备时,更新数据块在对应关系中的存放位置为高速存储设备之后,将数据块迁移至高速存储设备中;或者, 
在当该数据块存放在高速存储设备时,更新数据块在对应关系中的存放位置为低速存储设备之后,将数据块迁移至低速存储设备中。 
进一步地,其特征在于,操作模块具体用于: 
当更新后的对应关系中的数据块的存放位置显示为高速存储设备,则从高速存储设备中读取该数据块或者将该数据块写入高速存储设备中; 
当更新后的对应关系中的数据块的存放位置显示为低速存储设备,则从低速存储设备中读取数据块或者将数据块写入低速存储设备中。 
本发明技术方案包括:当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值;比较确定的数据块的热度分数值与预设的热度分数值阈值的大小,并根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置;根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。本发明技术方案提高了存储***的整体性能。 
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中: 
图1为本发明管理数据读写的方法的流程图; 
图2为本发明管理数据读写的装置的结构示意图。 
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。 
图1为本发明管理数据读写的方法的流程图,如图1所示,包括: 
步骤101,当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值。 
需要说明的是,关于本步骤中数据块I/O请求的总次数包括该数据块写入请求和读取请求的总次数。关于如何获取与保存数据块I/O请求的次数属于本领域技术人员所熟知的惯用技术手段,在此不再赘述。 
在步骤101之前,该方法还包括预先建立存储***中存储的各个数据块的名称与存放位置和各个数据块I/O请求的总次数一一对应的对应关系。该对应关系中的各个数据块I/O请求的总次数初始值可以设置为0。当有数据块I/O请求时,对该数据块I/O请求的总次数进行递增处理。 
其中,确定该数据块I/O请求的总次数包括:获取对应关系中的该数据块I/O请求的总次数,对该数据块I/O请求的总次数进行递增处理,将递增处理后的该数据块I/O请求的总次数更新至对应关系中。 
进一步地,建立的存储***中存储的各个数据块名称与存放位置和该数据块I/O请求的总次数一一对应的对应关系可以保存在一个位图中。 
进一步地,确定数据块的热度分数值包括:根据数据块的访问频度、迁 移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。 
进一步地,按照公式(1)确定数据块的热度分数值: 
hot = 1 n Σ k = 0 n α R k * 1 β M k + μ n Σ k = 0 n c * ( γ - s ) - - - ( 1 )
在公式(1)中,Rk表示第k次的数据块的访问频度,Mk表示第k次的数据块的迁移频度,α表示访问频度系数,β表示迁移频度系数,μ表示读写属性,c表示连续或随机特性,s表示大小属性,γ表示大小属性参考值,n表示统计次数,c的取值为0或1。 
在步骤101之前,该方法还包括:获取确定数据块的热度分数值的各个参数,包括:数据块的访问频度、迁移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。 
其中,访问频度Rk,表示前端对特定数据区域访问的频繁程度。数据访问频度的统计以存储池(即存储设备,高速存储设备或低速存储设备)为单位进行,第k个统计时间内,访问存储池的单位时间的IO数量用Niok来表示,存储池中总的数据块数的量用Nk表示。某个特定区块的第k个统计时间访问次数用Ck来表示,统计时间(一般是预设时长)用T表示,通过上述变量,第k个统计时间的访问频度如公式(2)所示: 
R k = C k T - N iok N k T - - - ( 2 )
公式(2)中,迁移频度Mk,表示数据在各个层次存储设备(高速存储设备和低速存储设备)上迁移的频繁程度。在第k个统计时间内,预设时长的统计时间T内数据块迁移的次数用mk表示。迁移频度如公式(3)所示: 
M k = m k T - - - ( 3 )
公式(3)中,访问频度系数α,表示根据实际业务情况期望访问频度在确定热度分数值的公式中所占的比重,该值通过外部进行设置。访问频度系数是性能优化参数,与用户业务相关。 
迁移频度系数β,表示根据实际业务情况迁移频度在确定热度分数值的 公式中所占的比重,该值通过外部进行设置。 
读写属性μ,表示表示数据块读写的占比情况。对于特定数据区域,在第k个统计时间内,统计预设时长T内该数据块总的读写次数分别用Wk和Rk表示。读写属性如公式(4)所示: 
μ = R k W k - - - ( 4 )
连续或随机特性c,该项值只能为0或者1。其中,数据块为随机性时c取值为1,数据块为连续性时c取值为0。 
大小属性s,表示数据块的大小,即IO的长度信息,以字节为单位。 
大小属性参考值γ,通过外部设定,作为数据迁移以及存放位置更改的参照量。 
统计次数n,表示统计的总次数。 
上述各个参数的获得以及如何保存是本领域技术人员所熟知的,在此不再赘述。 
进一步地,判断出稿数据块I/O请求的总次数小于或者等于预置统计门限值且大于1时,该方法还包括: 
按照对应关系中的该数据块的存放位置读取该数据块或者将该数据块写入对应关系中的该数据块的存放位置;以及, 
当该数据块I/O请求的总次数等于1时,且I/O请求显示为写入请求时,该方法还包括: 
将该数据块写入速存储设备,并将该数据块的名称和存放位置保存在该对应关系中。 
进一步地,上述存放位置所在的存储***包括高速存储设备和低速存储设备。 
其中,高速存储设备包括SSD硬盘或具有掉电保护功能的内存阵列等。低速存储设备包括普通磁盘阵列。 
步骤102,比较确定的数据块的热度分数值与预设的热度分数值阈值的大小,并根据比较结果确定是否更新预先建立的对应关系中的数据块的存放 位置。 
其中,根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置,包括: 
当数据块的热度分数值大于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当该数据块存放在高速存储设备时,该数据块在对应关系中的存放位置不变;当该数据块存放在低速存储设备时,更新该数据块在对应关系中的存放位置为高速存储设备; 
当数据块的热度分数值小于或等于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当该数据块存放在低速存储设备时,该数据块在对应关系中的存放位置不变;当该数据块存放在高速存储设备时,更新该数据块在对应关系中的存放位置为低速存储设备。 
进一步地,在当该数据块存放在低速存储设备时,更新该数据块在对应关系中的存放位置为高速存储设备之后,该方法还包括:将该数据块迁移至高速存储设备中;或者, 
在当该数据块存放在高速存储设备时,更新数据块在对应关系中的存放位置为低速存储设备之后,该方法还包括:将该数据块迁移至低速存储设备中。 
步骤103,根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。 
具体包括: 
当更新后的对应关系中的数据块的存放位置显示为高速存储设备,则从高速存储设备中读取该数据块或者将该数据块写入高速存储设备中; 
当更新后的对应关系中的数据块的存放位置显示为低速存储设备,则从低速存储设备中读取该数据块或者将该数据块写入低速存储设备中。 
本发明的方法,根据数据块的各个特性,包括前端对特定区域的访问频度和该段区域数据的迁移频度等信息,还根据数据属性包括数据的随机特性、连续特性、读特性、写特性和数据大小特性等确定数据块的热度分数值,实现了对数据块的I/O请求进行处理并且进行数据块在不同存储设备之间的迁 移,从而提高了存储***的整体性能。 
图2为本发明管理数据读写的装置的结构示意图,如图2所示,包括:确定模块、更新模块、比较模块和操作模块。其中, 
确定模块,用于当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值。 
该装置还包括:配置模块,用于:预先建立存储***中存储的各个数据块的名称与存放位置和各个数据块I/O请求的总次数一一对应的对应关系。其中,该对应关系中的各个数据块I/O请求的总次数初始值可以设置为0。当有数据块I/O请求时,对该数据块I/O请求的总次数进行递增处理。可以将建立的对应关系保存在一个位图中。 
进一步地,确定模块确定该数据块I/O请求的总次数,包括:获取对应关系中的该数据块I/O请求的总次数,对该数据块I/O请求的总次数进行递增处理,将递增处理后的该数据块I/O请求的总次数更新至对应关系中。 
其中,确定模块具体用于:根据数据块的访问频度、迁移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。 
进一步地,确定模块按照公式(1)确定数据块的热度分数值: 
hot = 1 n Σ k = 0 n α R k * 1 β M k + μ n Σ k = 0 n c * ( γ - s ) - - - ( 1 )
其中,在公式(1)中,访问频度Rk,表示前端对特定数据区域访问的频繁程度。数据访问频度的统计以存储池(即存储设备,高速存储设备或低速存储设备)为单位进行,第k个统计时间内,访问存储池的单位时间的IO数量用Niok来表示,存储池中总的数据块数的量用Nk表示。某个特定区块的第k个统计时间访问次数用Ck来表示,统计时间(一般是预设时长)用T表示,通过上述变量,第k个统计时间的访问频度如公式(2)所示: 
R k = C k T - N iok N k T - - - ( 2 )
公式(2)中,迁移频度Mk,表示数据在各个层次存储设备(高速存储设备 和低速存储设备)上迁移的频繁程度。在第k个统计时间内,预设时长的统计时间T内数据块迁移的次数用mk表示。迁移频度如公式(3)所示: 
M k = m k T - - - ( 3 )
公式(3)中,访问频度系数α,表示根据实际业务情况期望访问频度在确定热度分数值的公式中所占的比重,该值通过外部进行设置。访问频度系数是性能优化参数,与用户业务相关。 
迁移频度系数β,表示根据实际业务情况迁移频度在确定热度分数值的公式中所占的比重,该值通过外部进行设置。 
读写属性μ,表示表示数据块读写的占比情况。对于特定数据区域,在第k个统计时间内,统计预设时长T内该数据块总的读写次数分别用Wk和Rk表示。读写属性如公式(4)所示: 
μ = R k W k - - - ( 4 )
连续或随机特性c,该项值只能为0或者1。其中,数据块为随机性时c取值为1,数据块为连续性时c取值为0。 
大小属性s,表示数据块的大小,即IO的长度信息,以字节为单位。 
大小属性参考值γ,通过外部设定,作为数据迁移以及存放位置更改的参照量。 
统计次数n,表示统计的总次数。 
上述各个参数的获得以及如何保存是本领域技术人员所熟知的,在此不再赘述。 
比较模块,用于比较确定的数据块的热度分数值与预设的热度分数值阈值的大小。 
更新模块,用于根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置。 
其中,更新模块具体用于: 
当数据块的热度分数值大于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当该数据块存放在高速存储设备时,该数据块在对应 关系中的存放位置不变;当该数据块存放在低速存储设备时,更新该数据块在对应关系中的存放位置为高速存储设备; 
当数据块的热度分数值小于或等于预设的热度分数值阈值时,查看对应关系中该数据块的存放位置,当该数据块存放在低速存储设备时,该数据块在对应关系中的存放位置不变;当该数据块存放在高速存储设备时,更新该数据块在对应关系中的存放位置为低速存储设备。 
进一步地,更新模块还用于: 
在该当该数据块存放在低速存储设备时,更新该数据块在对应关系中的存放位置为高速存储设备之后,将该数据块迁移至高速存储设备中;或者, 
在该当该数据块存放在高速存储设备时,更新该数据块在对应关系中的存放位置为低速存储设备之后,将该数据块迁移至低速存储设备中。 
操作模块,用于根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。 
进一步地,操作模块还用于: 
当该数据块I/O请求的总次数小于或者等于预置统计门限值且大于1时,按照该对应关系中的该数据块的存放位置读取该数据块或者将该数据块写入该对应关系中的该数据块的存放位置;以及, 
当该数据块I/O请求的总次数等于1时,且I/O请求显示为写入请求时,将该数据块写入速存储设备,并将该数据块的名称和存放位置保存在预先建立的对应关系中。 
其中,操作模块具体用于: 
当更新后的对应关系中的该数据块的存放位置显示为高速存储设备,则从高速存储设备中读取该数据块或者将该数据块写入高速存储设备中; 
当更新后的对应关系中的该数据块的存放位置显示为低速存储设备,则从低速存储设备中读取该数据块或者将该数据块写入低速存储设备中。 
该装置中,存放位置所在的存储***包括高速存储设备和低速存储设备。其中,高速存储设备包括SSD硬盘或具有掉电保护功能的内存阵列等。低速存储设备包括普通磁盘阵列。 
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。 
以上,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 

Claims (18)

1.一种管理数据读写的方法,其特征在于,包括:
当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值;
比较确定的数据块的热度分数值与预设的热度分数值阈值的大小,并根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置;
根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。
2.根据权利要求1所述的方法,其特征在于,该方法之前还包括:预先建立存储***中存储的各个数据块的名称与存放位置和各个数据块I/O请求的总次数一一对应的对应关系;其中,各个数据块I/O请求的总次数初始值设置为0。
3.根据权利要求2所述的方法,其特征在于,所述判断出所述数据块I/O请求的总次数小于或者等于预置统计门限值且大于1时,该方法还包括:
按照所述对应关系中的该数据块的存放位置读取所述数据块或者将所述数据块写入所述对应关系中的所述数据块的存放位置;以及,
当所述数据块I/O请求的总次数等于1时,且所述I/O请求显示为写入请求时,该方法还包括:
将所述数据块写入速存储设备,并将所述数据块的名称和存放位置保存在所述对应关系中。
4.根据权利要求1所述的方法,其特征在于,所述存放位置所在的存储***包括高速存储设备和低速存储设备。
5.根据权利要求1所述的方法,其特征在于,所述确定数据块的热度分数值包括:根据所述数据块的访问频度、迁移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。
6.根据权利要求5所述的方法,其特征在于,按照公式(1)确定数据块的热度分数值:
hot = 1 n Σ k = 0 n α R k * 1 β M k + μ n Σ k = 0 n c * ( γ - s ) - - - ( 1 )
其中,Rk表示第k次的数据块的访问频度,Mk表示第k次的数据块的迁移频度,α表示访问频度系数,β表示迁移频度系数,μ表示读写属性,c表示连续或随机特性,s表示大小属性,γ表示大小属性参考值,n表示统计次数,c的取值为0或1。
7.根据权利要求1所述的方法,其特征在于,所述根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置,包括:
当所述数据块的热度分数值大于预设的热度分数值阈值时,查看所述对应关系中该数据块的存放位置,当所述数据块存放在高速存储设备时,所述数据块在所述对应关系中的存放位置不变;当所述数据块存放在低速存储设备时,更新所述数据块在所述对应关系中的存放位置为高速存储设备;
当所述数据块的热度分数值小于或等于预设的热度分数值阈值时,查看所述对应关系中该数据块的存放位置,当所述数据块存放在低速存储设备时,所述数据块在所述对应关系中的存放位置不变;当所述数据块存放在高速存储设备时,更新所述数据块在所述对应关系中的存放位置为低速存储设备。
8.根据权利要求7所述的方法,其特征在于,在所述当该数据块存放在低速存储设备时,更新所述数据块在所述对应关系中的存放位置为高速存储设备之后,将所述数据块迁移至高速存储设备中;或者,
在所述当该数据块存放在高速存储设备时,更新所述数据块在所述对应关系中的存放位置为低速存储设备之后,将所述数据块迁移至低速存储设备中。
9.根据权利要求1或7所述的方法,其特征在于,所述根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作,包括:
当更新后的所述对应关系中的所述数据块的存放位置显示为高速存储设备,则从高速存储设备中读取所述数据块或者将所述数据块写入高速存储设备中;
当更新后的对应关系中的所述数据块的存放位置显示为低速存储设备,则从低速存储设备中读取该数据块或者将该数据块写入低速存储设备中。
10.一种管理数据读写的装置,其特征在于,包括:确定模块、更新模块、比较模块和操作模块;其中,
确定模块,用于当有数据块I/O请求时,确定该数据块I/O请求的总次数并判断该数据块I/O请求的总次数是否超过预置统计门限值,当该数据块I/O请求的总次数超过预置统计门限值时,确定数据块的热度分数值;
比较模块,用于比较确定的数据块的热度分数值与预设的热度分数值阈值的大小;
更新模块,用于根据比较结果确定是否更新预先建立的对应关系中的数据块的存放位置;
操作模块,用于根据更新后的预先建立的对应关系中的数据块的存放位置,进行数据块的I/O操作。
11.根据权利要求10所述的装置,其特征在于,该装置还包括配置模块,用于:预先建立存储***中存储的各个数据块的名称与存放位置和各个数据块I/O请求的总次数一一对应的对应关系;其中,各个数据块I/O请求的总次数初始值设置为0。
12.根据权利要求11所述的装置,其特征在于,所述操作模块还用于:当该数据块I/O请求的总次数小于或者等于预置统计门限值且大于1时,按照所述对应关系中的该数据块的存放位置读取所述数据块或者将所述数据块写入所述对应关系中的该数据块的存放位置;以及,
当所述数据块I/O请求的总次数等于1时,且所述I/O请求显示为写入请求时,将所述数据块写入速存储设备,并将所述数据块的名称和存放位置保存在所述对应关系中。
13.根据权利要求10所述的装置,其特征在于,所述存放位置所在的存储***包括高速存储设备和低速存储设备。
14.根据权利要求10所述的装置,其特征在于,所述确定模块具体用于:根据所述数据块的访问频度、迁移频度、访问频度系数、迁移频度系数、读写属性、连续或随机特性、大小属性、大小属性参考值和统计次数确定数据块的热度分数值。
15.根据权利要求14所述的装置,其特征在于,所述确定模块按照公式(1)确定数据块的热度分数值:
hot = 1 n Σ k = 0 n α R k * 1 β M k + μ n Σ k = 0 n c * ( γ - s ) - - - ( 1 )
其中,Rk表示第k个统计时长T内的数据块的访问频度,Mk表示第k个统计时长T内的数据块的迁移频度,α表示访问频度系数,β表示迁移频度系数,μ表示读写属性,c表示连续或随机特性,s表示大小属性,γ表示大小属性参考值,n表示统计次数,c的取值为0或1。
16.根据权利要求10所述的装置,其特征在于,所述更新模块具体用于:
当所述数据块的热度分数值大于预设的热度分数值阈值时,查看所述对应关系中该数据块的存放位置,当所述数据块存放在高速存储设备时,所述数据块在所述对应关系中的存放位置不变;当所述数据块存放在低速存储设备时,更新所述数据块在所述对应关系中的存放位置为高速存储设备;
当所述数据块的热度分数值小于或等于预设的热度分数值阈值时,查看所述对应关系中该数据块的存放位置,当所述数据块存放在低速存储设备时,所述数据块在所述对应关系中的存放位置不变;当所述数据块存放在高速存储设备时,更新所述数据块在对应关系中的存放位置为低速存储设备。
17.根据权利要求16所述的装置,其特征在于,所述更新模块还用于:
在所述当该数据块存放在低速存储设备时,更新所述数据块在所述对应关系中的存放位置为高速存储设备之后,将所述数据块迁移至高速存储设备中;或者,
在所述当该数据块存放在高速存储设备时,更新所述数据块在所述对应关系中的存放位置为低速存储设备之后,将所述数据块迁移至低速存储设备中。
18.根据权利要求10或16所述的装置,其特征在于,所述操作模块具体用于:
当更新后的所述对应关系中的所述数据块的存放位置显示为高速存储设备,则从高速存储设备中读取该数据块或者将该数据块写入高速存储设备中;
当更新后的所述对应关系中的所述数据块的存放位置显示为低速存储设备,则从低速存储设备中读取所述数据块或者将所述数据块写入低速存储设备中。
CN201410438004.8A 2014-08-29 2014-08-29 一种管理数据读写的方法及装置 Active CN104268099B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410438004.8A CN104268099B (zh) 2014-08-29 2014-08-29 一种管理数据读写的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410438004.8A CN104268099B (zh) 2014-08-29 2014-08-29 一种管理数据读写的方法及装置

Publications (2)

Publication Number Publication Date
CN104268099A true CN104268099A (zh) 2015-01-07
CN104268099B CN104268099B (zh) 2017-06-13

Family

ID=52159622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410438004.8A Active CN104268099B (zh) 2014-08-29 2014-08-29 一种管理数据读写的方法及装置

Country Status (1)

Country Link
CN (1) CN104268099B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105207993A (zh) * 2015-08-17 2015-12-30 深圳市云宙多媒体技术有限公司 一种cdn中数据的访问、调度方法和***
CN105653642A (zh) * 2015-12-25 2016-06-08 曙光信息产业股份有限公司 分布式文件***的数据管理方法和装置
CN105739925A (zh) * 2016-01-28 2016-07-06 上海新储集成电路有限公司 一种混合存储器连续读的方法
CN105988720A (zh) * 2015-02-09 2016-10-05 ***通信集团浙江有限公司 数据存储装置和方法
CN106406759A (zh) * 2016-09-13 2017-02-15 郑州云海信息技术有限公司 一种数据存储方法及装置
CN107122126A (zh) * 2016-12-22 2017-09-01 华为技术有限公司 数据的迁移方法、装置和***
CN111177022A (zh) * 2019-12-26 2020-05-19 广东浪潮大数据研究有限公司 一种特征提取方法、装置、设备及存储介质
CN112889021A (zh) * 2019-07-23 2021-06-01 华为技术有限公司 重复数据删除的设备、***和方法
CN114327279A (zh) * 2021-12-29 2022-04-12 湖南国科微电子股份有限公司 一种迁移数据的方法及装置
CN116069261A (zh) * 2023-03-03 2023-05-05 苏州浪潮智能科技有限公司 一种数据处理方法、***、设备以及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582013A (zh) * 2009-06-10 2009-11-18 成都市华为赛门铁克科技有限公司 一种在分布式存储中处理存储热点的方法、装置及***
CN102841931A (zh) * 2012-08-03 2012-12-26 中兴通讯股份有限公司 分布式文件***的存储方法及装置
US20130007091A1 (en) * 2011-07-01 2013-01-03 Yahoo! Inc. Methods and apparatuses for storing shared data files in distributed file systems
CN103605482A (zh) * 2013-11-21 2014-02-26 浪潮电子信息产业股份有限公司 一种硬盘内数据高性能存储方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582013A (zh) * 2009-06-10 2009-11-18 成都市华为赛门铁克科技有限公司 一种在分布式存储中处理存储热点的方法、装置及***
US20130007091A1 (en) * 2011-07-01 2013-01-03 Yahoo! Inc. Methods and apparatuses for storing shared data files in distributed file systems
CN102841931A (zh) * 2012-08-03 2012-12-26 中兴通讯股份有限公司 分布式文件***的存储方法及装置
CN103605482A (zh) * 2013-11-21 2014-02-26 浪潮电子信息产业股份有限公司 一种硬盘内数据高性能存储方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988720A (zh) * 2015-02-09 2016-10-05 ***通信集团浙江有限公司 数据存储装置和方法
CN105207993A (zh) * 2015-08-17 2015-12-30 深圳市云宙多媒体技术有限公司 一种cdn中数据的访问、调度方法和***
CN105653642A (zh) * 2015-12-25 2016-06-08 曙光信息产业股份有限公司 分布式文件***的数据管理方法和装置
CN105739925B (zh) * 2016-01-28 2019-06-25 上海新储集成电路有限公司 一种混合存储器连续读的方法
CN105739925A (zh) * 2016-01-28 2016-07-06 上海新储集成电路有限公司 一种混合存储器连续读的方法
CN106406759A (zh) * 2016-09-13 2017-02-15 郑州云海信息技术有限公司 一种数据存储方法及装置
CN106406759B (zh) * 2016-09-13 2019-12-31 苏州浪潮智能科技有限公司 一种数据存储方法及装置
CN107122126A (zh) * 2016-12-22 2017-09-01 华为技术有限公司 数据的迁移方法、装置和***
CN107122126B (zh) * 2016-12-22 2020-09-08 华为技术有限公司 数据的迁移方法、装置和***
CN112889021A (zh) * 2019-07-23 2021-06-01 华为技术有限公司 重复数据删除的设备、***和方法
CN112889021B (zh) * 2019-07-23 2023-11-28 华为技术有限公司 重复数据删除的设备、***和方法
CN111177022A (zh) * 2019-12-26 2020-05-19 广东浪潮大数据研究有限公司 一种特征提取方法、装置、设备及存储介质
CN114327279A (zh) * 2021-12-29 2022-04-12 湖南国科微电子股份有限公司 一种迁移数据的方法及装置
CN116069261A (zh) * 2023-03-03 2023-05-05 苏州浪潮智能科技有限公司 一种数据处理方法、***、设备以及存储介质

Also Published As

Publication number Publication date
CN104268099B (zh) 2017-06-13

Similar Documents

Publication Publication Date Title
CN104268099A (zh) 一种管理数据读写的方法及装置
CN104679661B (zh) 混合存储的控制方法及混合存储***
EP3367251B1 (en) Storage system and solid state hard disk
CN103064639B (zh) 数据存储方法及装置
US8909887B1 (en) Selective defragmentation based on IO hot spots
CN104850358B (zh) 一种磁光电混合存储***及其数据获取和存储方法
CN104516471B (zh) 一种管理存储器***的电源的方法和装置
CN109213696B (zh) 用于缓存管理的方法和设备
CN104462240A (zh) 云存储中实现分级存储管理的方法和***
CN105487823A (zh) 一种数据迁移的方法及装置
US10908833B2 (en) Data migration method for a storage system after expansion and storage system
CN106406759B (zh) 一种数据存储方法及装置
CN105653591A (zh) 一种工业实时数据分级存储及迁移方法
CN102156738A (zh) 数据块处理方法、数据块存储设备及***
CN103491152A (zh) 分布式文件***中元数据获取方法、装置及***
CN102981971B (zh) 一种快速响应的相变存储器损耗均衡方法
EP2765522B1 (en) Method and device for data pre-heating
CN109086141B (zh) 内存管理方法和装置以及计算机可读存储介质
CN106775474A (zh) 一种Nand Flash磨损均衡方法、装置及存储器
CN104199784A (zh) 一种基于分级存储的数据迁移方法及装置
CN103853671A (zh) 一种数据写入控制方法及装置
CN108733306A (zh) 一种文件合并方法及装置
CN103631729A (zh) 一种基于块级的分级存储方法及***
CN107704200A (zh) 一种数据存放方法
CN110147203A (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
GR01 Patent grant
GR01 Patent grant