CN107122126A - 数据的迁移方法、装置和*** - Google Patents

数据的迁移方法、装置和*** Download PDF

Info

Publication number
CN107122126A
CN107122126A CN201611199849.1A CN201611199849A CN107122126A CN 107122126 A CN107122126 A CN 107122126A CN 201611199849 A CN201611199849 A CN 201611199849A CN 107122126 A CN107122126 A CN 107122126A
Authority
CN
China
Prior art keywords
storage device
read
data
unit interval
capacity ratio
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
CN201611199849.1A
Other languages
English (en)
Other versions
CN107122126B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201611199849.1A priority Critical patent/CN107122126B/zh
Priority to PCT/CN2017/096784 priority patent/WO2018113317A1/zh
Publication of CN107122126A publication Critical patent/CN107122126A/zh
Application granted granted Critical
Publication of CN107122126B publication Critical patent/CN107122126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种存储***中迁移数据的方法,存储***包括第一存储设备和第二存储设备,此方法包括以下步骤:获取第二存储设备单位时间内的读写次数;根据第二存储设备单位时间内的读写次数,获取所述第二存储设备的强度比;查询强度比与容量比对应表,获得与所述强度比对应的容量比;根据获得的容量比得到需要从第一存储设备迁移到第二存储设备的数据块的数量;根据所述数量将对应的数据块从第一存储设备迁移到第二存储设备。通过本方法,可以精确确定从第一存储设备迁移到第二存储设备的数据块的数量,在把尽量多的数据迁移到第二存储设备的同时,又可以保证第二存储设备的性能不受影响,提高了存储***的性能和效率。

Description

数据的迁移方法、装置和***
技术领域
本申请涉及通信技术领域,尤其涉及一种数据的迁移方法、装置和***。
背景技术
随着网络的发展,有越来越多的数据产生。不同的数据具备不同的使用价值,有些数据会被频繁访问,有些数据会在很长时间之内都不会被访问,还有些数据会在某些时刻被频繁访问。
数据的使用价值有自己的生命周期,可以有规律可循。通常,各类元数据(例如虚拟机的部分操作***数据)使用价值高,会被频繁访问,并且对响应速度要求也很高。新产生的数据的通常被访问的频率也比较高。而随着时间的推移,新产生的数据的使用频率会下降,不再被频繁访问。
自动分级存储技术因此而产生,并被广泛应用于各行各业。自动分级存储技术根据数据的访问频率、重要性、保留时间等特性,将数据存储在不同性能的存储设备上;并且基于数据被访问的频率,将被访问频率低的数据迁移到性能较低的存储设备中,将被频繁访问的数据迁移到性能高的存储设备中。
数据迁移策略包括把被访问频率低的数据迁移到性能较低的存储设备中,以及将被频繁访问的数据迁移到高性能的存储设备中。数据迁移时优先选择将被频繁访问的数据往高性能的存储设备中迁移,迁移的数据量往往是根据高性能存储设备当前的可用容量来决定的,而且一般是通过对访问数据的IO请求进行监控,将访问的IO请求数量达到一定数量的数据迁移到高性能的存储设备中。
发明人在发明过程中发现,目前自动分级存储技术的数据迁移策略比较简单,迁移后的存储***的整体性能无法预判,可能导致高性能的存储设备出现过载的问题。
发明内容
本申请实施例提供一种迁移数据的方法、装置和***,可以精确确定需要从第一存储设备迁移到第二存储设备的数据的数据量,在把尽量多的数据迁移到第二存储设备的同时,又可以保证第二存储设备的性能不受影响,提高了存储***的性能和效率。
本申请实施例提供如下技术方案:
第一方面,提供一种存储***中迁移数据的方法,存储***第一存储设备和第二存储设备,方法包括:获取第二存储设备单位时间内的读写次数;根据所述第二存储设备单位时间内的读写次数,获取所述第二存储设备的强度比;查询强度比与容量比对应表,获得与所述强度比对应的容量比;根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量;根据所述数量将对应的数据块从所述第一存储设备迁移到所述第二存储设备。
获取第二存储设备的强度比后,根据强度比与容量比对应表得到需要迁移到第二存储设备的数据块的数量。这样可以根据第二存储设备的性能确定迁移的数据的具体数值,可以确保迁入数据之后第二存储设备的性能不受影响,保证了整个存储***的性能。
在一种可能的设计中,强度比与容量比对应表是预先监测分析得到的。
这样在得到第二存储设备的强度比之后,可以直接查询强度比与容量比对应表,快速得到需要从第一存储设备迁移到第二存储设备的数据块的数量。
在一种可能的设计中,查询强度比与容量比对应表,通过模糊匹配规则获取与所述强度比对应的容量比。
强度比与容量比对应表中不可能将所有可能出现的数据都记录出来,因此当计算出来的强度比的具体的数值在强度比与容量比对应表中无法找到时,可以根据模糊匹配规则,以强度比与容量比对应表比计算出来的强度比高一级的强度比的值为准确定对应的容量比,提高查找效率。
在一种可能的设计中,获取所述存储***中的每个数据块单位时间内的读写次数,并将获取到的每个数据块的单位时间内的读写次数从高到低按顺序排列。根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量具体包括:根据所述容量比和所述获取到的每个数据块的单位时间内的读写次数确定与所述容量比对应的数据块;确认在所述第一存储设备中与所述容量比对应的数据块的数量。
为了确定将访问次数较多的数据从第一存储设备中迁移到第二存储设备,将获取到的存储***中每个数据块的单位时间内的读写次数从高到低按顺序排列,这样可以根据确定的需要迁移的数据块的数量按顺序将单位时间内的读写次数较高的数据块从第一存储设备中迁移到性能更高的第二存储设备中,更快的响应IO请求。
在一种可能的设计中,获取所述第一存储设备单位时间内的读写次数;
所述第二存储设备的强度比为所述第二存储设备单位时间内的读写次数占第一存储设备单位时间内的读写次数与第二存储设备单位时间内的读写次数之和的比重。
在一种可能的设计中,第一存储设备单位时间内的读写次数为所述第一存储设备中单盘单位时间内的读写次数与所述第一存储设备中的盘的数量的积再除以第一换算系数,所述第一换算系数与所述第一存储设备的读请求与写请求的比例以及第一存储设备的RAID级别有关;所述第二存储设备单位时间内的读写次数为所述第二存储设备中单盘单位时间内的读写次数与所述第二存储设备中的盘的数量的积再除以第二换算系数,所述第二换算系数与所述第二存储设备的读请求与写请求的比例以及第二存储设备的RAID级别有关。
在一种可能的设计中,所述第一存储设备中单盘单位时间内的读写次数与所述第一存储设备的负载特征以及响应时长相关;所述第二存储设备中单盘单位时间内的读写次数与所述第二存储设备的负载特征以及响应时长相关。
通过对各个参数具体数值的设置和获取,可以准确的得到需要从第一存储设备迁移到第二存储设备的数据块的数量,可以在尽可能多的把热数据迁移到高性能的第二存储设备的同时,又可以保证存储设备的性能,提高存储***的效率和性能。
第二方面,提供一种实现数据迁移的存储***,存储***包括第一存储设备、第二存储设备和处理器,处理器用于上述方法中的各个步骤。各个步骤的实现细节以及带来的相应的好处,请参见第一方面中的相关描述。
第三方面,提供一种实现数据迁移的存储***,存储***包括第一存储设备、第二存储设备和处理器,处理器包括数据采集分析模块和数据迁移模块。数据采集分析模块用于获取第二存储设备单位时间内的读写次数;根据所述第二存储设备单位时间内的读写次数获取所述第二存储设备的强度比;查询强度比与容量比对应表,获得与所述强度比对应的容量比;根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量;将得到的需要迁移的数据块的数量发送给数据迁移模块。数据迁移模块用于将得到数量的数据块从第一存储设备迁移到第二存储设备。
数据采集分析模块获取第二存储设备的强度比,并根据强度比与容量比对应表得到需要迁移到第二存储设备的数据块的数量。这样可以根据第二存储设备的性能确定迁移的数据的具体数值,可以确保迁入数据之后第二存储设备的性能不受影响,保证了整个存储***的性能。
在一种可能的设计中,数据采集分析模块还用于:预先采集分析应用对存储***的IO请求,得到强度比与容量比对应表。
这样在得到第二存储设备的强度比之后,数据采集分析模块可以直接查询强度比与容量比对应表,快速得到需要从第一存储设备迁移到第二存储设备的数据块的数量。
在一种可能的设计中,数据采集分析模块用于查询强度比与容量比对应表获得与所述强度比对应的容量比具体为:数据采集分析模块用于查询强度比与容量比对应表,通过模糊匹配规则获取与所述强度比对应的容量比。
强度比与容量比对应表中不可能将所有可能出现的数据都记录出来,因此当计算出来的强度比的具体的数值在强度比与容量比对应表中无法找到时,可以根据模糊匹配规则,以强度比与容量比对应表比计算出来的强度比高一级的强度比的值为准确定对应的容量比,提高查找效率。
在一种可能的设计中,数据采集分析模块还用于获取所述存储***中的每个数据块单位时间内的读写次数,并将获取到的每个数据块的单位时间内的读写次数从高到低按顺序排列;数据采集分析模块根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量具体为:数据采集分析模块根据所述容量比按顺序得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量。
为了确定将访问次数较多的数据从第一存储设备中迁移到第二存储设备,数据采集分析模块将获取到的存储***中每个数据块的单位时间内的读写次数从高到低按顺序排列,这样可以根据确定的需要迁移的数据块的数量按顺序将单位时间内的读写次数较高的数据块从第一存储设备中迁移到性能更高的第二存储设备中,更快的响应IO请求。
在一种可能的设计中,数据采集分析模块还用于获取第一存储设备单位时间内的读写次数。第二存储设备的强度比为第二存储设备单位时间内的读写次数占第一存储设备单位时间内的读写次数与第二存储设备单位时间内的读写次数之和的比重。
在一种可能的设计中,第一存储设备单位时间内的读写次数为第一存储设备中单盘单位时间内的读写次数与第一存储设备中的盘的数量的积再除以第一换算系数,述第一换算系数与第一存储设备的读请求与写请求的比例以及第一存储设备的RAID级别有关;第二存储设备单位时间内的读写次数为第二存储设备中单盘单位时间内的读写次数与第二存储设备中的盘的数量的积再除以第二换算系数,第二换算系数与第二存储设备的读请求与写请求的比例以及第二存储设备的RAID级别有关。
通过对各个参数具体数值的设置和获取,可以准确的得到需要从第一存储设备迁移到第二存储设备的数据块的数量,可以在尽可能多的把热数据迁移到高性能的第二存储设备的同时,又可以保证存储设备的性能,提高存储***的效率和性能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1为本发明实施例中存储***的结构示意图;
图2为本发明实施例提供的迁移数据的方法流程示意图;
图3为本发明实施例提供的另一存储***的结构示意图。
具体实施方式
本发明实施例提供一种存储***中迁移数据的方法,通过对访问存储***的IO请求的负载特征的采集与统计、以及存储***中存储设备性能的估算,计算出需要迁移的数据的大小,以达到按需迁移数据的目的,充分发挥存储***的性能
在本发明实施例中,将被访问频率达到预定的数值的数据称为热数据,将访问频率低于预定的数值的数据称为冷数据。
本发明实施例适用的存储***如附图1所示。存储***1中包括有存储介质101,处理器103和缓存105。存储***1中的存储介质101可以有多种,并根据存储介质的性能划分为不同的性能层。例如,存储***中的存储介质有SSD盘和普通硬盘组成,SSD盘组成高性能层存储设备,普通硬盘组成普通性能层的存储设备。在本发明实施例中,以存储***中包含高性能层和普通性能层为例进行说明,为了便于描述,将存储***中的普通性能层称之为第一存储设备,存储***中的高性能层称为第二存储设备。另外,本发明实施例中以把热数据迁到高性能层为例进行说明,热数据变冷从高性能层迁移到普通性能层也可以采用相同的方法来处理。当存储***中增加其他性能层时,数据在不同性能层之间迁移时可以采用相同的方法来处理。处理器103用于执行下述的迁移数据的方法,缓存105用于存储需要的信息。
本发明实施例提供的在存储***中迁移数据的方法流程如附图2所示,由存储***中的处理器来完成。本方法实施例主要描述的是将数据从普通性能层迁移到高性能层的实现方式,详细描述如下文所述。如上所述,将存储***中的普通性能层称之为第一存储设备,存储***中的高性能层称为第二存储设备。另外,本发明实施例中的IO请求以访问存储介质的IO请求为监测和分析对象。
步骤201:获取第二存储设备单位时间内的读写次数。
处理器获取第二存储设备单位时间内的读写次数,单位时间可以根据业务类型由用户自己决定,在本发明实施例中不做限定。当单位时间为1秒,得到的为第二存储设备的每秒的读写次数(Input/Output per second,IOPS)。
在本发明实施例中,同一性能层存储设备中每个磁盘的类型相同。本发明实施例提供一种第二存储设备单位时间内的读写次数的获取方法。例如,第二存储设备单位时间内的读写次数=(单盘单位时间内的读写次数*盘的数量)/RAID换算系数。其中,盘的数量为第二存储设备中盘的数量。对于随机写IO,存储设备采用RAID方式要计算校验数据,所以需要产生额外的IO,RAID换算系数与读写IO的比例以及写惩罚系数有关,写惩罚系数是指盘的写IO放大系数,与采用的RAID的级别相关,写惩罚系数的取值与RAID级别的对应关系可以参考表一。具体来说,RAID换算系数=读请求比例+写请求比例*写惩罚系数。
RAID级别 写惩罚系数
0 1
1 2
5 4
6 6
10 2
表一:RAID级别对应的写惩罚系数
单盘单位时间内的读写次数与第二存储设备的负载特征和响应时长相关,可以预先采集数据并统计获得,如表二所示。此处的第二存储设备的负载特征为访问第二存储设备的IO请求的负载特征。这样在需要获取第二存储设备单位时间内的读写次数时,可以直接根据访问第二存储设备的IO请求的负载特征和响应时长的值查找到第二存储设备中单盘的IOPS,再通过上述方法计算得到第二存储设备时间内的读写次数。
表二:第二存储设备中单盘单位时间内的读写次数查找表
可选的,单盘单位时间内的读写次数也可以根据访问第二存储设备的IO请求的负载特征和响应时长统计获得,无需预先获得所述表二的数值。
步骤203:根据所述第二存储设备单位时间内的访问次数,获取所述第二存储设备的强度比。
所述第二存储设备的强度比为所述第二存储设备单位时间内的访问次数占所述存储***单位时间内的访问次数的比例。
在本发明实施例中,存储***中包括第一存储设备和第二存储设备两种性能层的存储设备,第二存储设备的强度比=第二存储设备单位时间内的访问次数/(第二存储设备单位时间内的访问次数+第一存储设备单位时间内的访问次数),即第二存储设备的强度比为所述第二存储设备单位时间内的读写次数占第一存储设备单位时间内的读写次数与第二存储设备单位时间内的读写次数之和的比重。第二存储设备单位时间内的访问次数在步骤201中已经进行了描述,在此不再另行说明。
第一存储设备单位时间内的访问次数的获取方法与所述第二存储设备单位时间内的访问次数的获取方法相同,也不再另行说明。同理,第一存储设备中单盘单位时间内的读写次数也可以预先采集数据并统计获得,如表三所示。
表三:第一存储设备中单盘单位时间内的读写次数查找表
需要说明的是,表二和表三中的内容可以合并成一个表存储,即存储***中各性能层中的单个盘单位时间内的读写次数可以在一个表格中体现,如表四所示。当存储***中还有其他不同性能层的存储设备时,其他性能层中单盘的单位时间内的读写次数可以在一个表中体现,也可以分别用不同的表格来体现,在本发明实施例中不做限定。
表四:存储***中单盘单位时间内的读写次数查找表
步骤205:查询强度比与容量比的对应表,获得与强度比对应的容量比。
强度比与容量比的对应表,是预先对业务数据进行监测并分析计算得到的。将存储***(包括第一存储设备和第二存储设备)中的业务数据拆分为多个数据块,获得这些数据块在单位时间内的读写次数,即数据块的访问强度。业务数据可以按迁粒度拆分为多个数据块,也可以按指定大小拆分为多个数据块。统计监控时间内访问这些数据块的读写次数,再计算这些数据块单位时间内的读写次数IOPS,即访问强度。将存储***中的数据块按访问强度从高到低进行排序,然后按一定的容量比值将数据块分成若干组。例如表格3所示,以容量比值2.5%为维度将数据块进行分组,即data1~dataA组成容量比为2.5%的组,即data1~data2A组成容量比为5%的组……以此类推,如表五所示。
表五:热点数据块的统计表
计算每个数据块在单位时间内的读写次数,再将每个容量比对应的数据块的单位时间内的读写次数之和与存储***中的全部数据块在单位时间内的读写次数的总和进行比较,得到与容量比对应的强度比,即强度比与容量比的对应表,如表六所示。表六中的数据为示例性说明,具体数据根据业务不同取值会不同。容量比的取值也可以按需设定。
容量比 强度比
0.0% 0.0%
2.5% 35.0%
5.0% 50.0%
7.5% 60.0%
10.0% 65.0%
12.5% 67.0%
15.0% 69.0%
20.0% 70.0%
25.0% 71.5%
30.0% 72.0%
100.0% 100.0%
表六:某典型负载的强度比与容量比对应表
如表六所示,当存储***中数据块的容量比为10%时,对应的强度比为65%,即P强度比[10%]=65%,表示占据总数据量10%的数据块的I/O访问数量占存储***中全部数据块I/O访问数量的比重为65%。反过来,当数据块的强度比为70%时,对应的容量比为20%,P热点容量比[70%]=20%,则表示I/O访问数量占存储***中全部数据块I/O访问数量70%的数据块占存储***中全部数据块的20%。从表格中的数据规律我们可以看到,10%数据块对应的强度比已经高达65%;而更多数据块对应的强度比的变化不大,说明该场景的热数据很集中,适合使用分级技术来提升性能。
为了提高数据的准确性,可选的,可以将一次业务模型的数据块访问情况做为统计基础来获得强度比与容量比对应表。
通过步骤203得到的第二存储设备的强度比后,可以通过查询所述与容量比对应表得到与第二存储设备的强度比对应的容量比。查询规则可以采用模糊匹配的规则,即查询强度比与容量比对应表,通过模糊匹配规则获取与所述强度比对应的容量比。如果需要查询的强度比在强度比与容量比对应表中无法精确匹配,则按得到的第二存储设备的强度比高一级的强度比查找对应的容量比。如果根据查询得到的容量比确定出的需要迁移的数据块满足条件,则按此容量比计算。如果根据查询得到的容量比确定出的需要迁移的数据块不满足条件,则按得到的第二存储设备的强度比低一级的强度比查找对应的容量比。具体的条件在下文进行说明,在此不再详述。
步骤207:根据所述容量比得到需要从所述第一存储设备迁移到第二存储设备的数据块的数量。
根据步骤205获得的容量比,得到所述容量比对应的数据块的数量。获取所述存储***中的每个数据块单位时间内的读写次数,并将获取到的每个数据块的单位时间内的读写次数从高到低按顺序排列;根据得到的与所述容量比对应的数据块的数量,按访问强度从高到低选取相应数量的数据块,确定需要从第一存储设备迁移到第二存储设备的数据块的数量。
若选取的相应数量的数据块中有些已经在第二存储设备中时,则确定这些数据块中在第一存储设备中的数据块的数量,并确定这需要从第一存储设备迁移到第二存储设备的数据块的数量。
下面以第二存储设备中还未迁入数据块为例进行说明,如果第二存储设备中已有数据块时,相应的将计算出来的数值减去第二存储设备中已经有的数值即可,不再一一说明。迁移数据量=P容量比[第二存储设备IOPS/(第二存储设备IOPS+第一存储设备IOPS)]*总数据量。如果计算出的需要迁移的数据块的数据量小于第二存储设备的总容量,则需要迁移的数据块的数量为计算出来的数据块的数量。如果计算出的需要迁移的数据块的数据量大于第二存储设备的总容量,则需要迁移的数据块的数量以第二存储设备的总容量为准。
步骤209:根据所述数量将对应的数据块从所述第一存储设备迁移到所述第二存储设备。根据步骤207计算得到的需要从所述第一存储设备迁移到第二存储设备的数据块的数量,按访问强度从高到低将对应数量的数据块从第一存储设备迁移到第二存储设备中。
下面以一具体的例子来进一步对本发明实施例的方法进行示例说明。
通过对典型业务数据的监测和分析,得到以下参数的数值,如表七所示:
表七:业务参数取值表
第二存储设备IOPS=3500*10/(0.7+0.3*4),第一存储设备IOPS=180*100/(0.7+0.3*4),则第二存储设备强度比=第二存储设备IOPS/(第二存储设备IOPS+第一存储设备IOPS)=66%,根据模糊匹配规则查找表六所示的强度比与容量比对应表,以强度比66%的高一级强度比67%为准,确定对应的容量比为12.5%,则迁移数据量=存储***中的数据量*12.5%=3.75TB;因为高性能层容量(6TB)>3.75TB,则最终迁移数据量为3.75TB,根据访问强度由高到低将3.75TB的数据从第一存储设备迁移到第二存储设备。占存储***访问强度66%的数据迁移到第二存储设备中,由于第二存储设备为高性能存储设备,可以及时响应用户的请求。并且迁移的数据量没有超过第二存储设备的容量,不会影响第二存储设备的性能,保证了存储***的整体性能。
本发明实施例还提供一种存储***3,可以实现如前所述的数据迁移方法,所述存储***3的结构如附图3所示。存储***3包含了第一存储设备321和第二存储设备323,第一存储设备321和第二存储设备323的性能不相同。在本发明实施例中,第一存储设备321由普通性能的存储介质如传统磁盘组成,可以存储用户数据;第二存储设备323由高性能的存储介质如SSD盘组成,可以用来存储热数据。当需要指出第一存储设备321和第二存储设备323的相同特征时,使用存储设备加以说明。本发明实施例中的存储设备仅为示例性的说明,在实际应用中,还可以增加不同性能的存储介质。存储设备中包含的存储介质的数量也可以根据需要设定,在本发明实施例中不做限定。另外,存储设备可以由相同性能的存储介质组成,也可以由性能接近的存储介质组成。本发明实施例以将第一存储设备321中的数据迁移到第二存储设备323中为例进行说明。本实施例部份仅对存储***3中各组成部件的功能做简单的描述,涉及到的方法步骤的细节特征请参阅前文方法实施例部份的描述。
存储***3还包括处理器31,处理器中包括数据采集分析模块311和数据迁移模块313。数据采集分析模块311用于对应用访问存储设备的IO请求进行分析计算,得到需要从第一存储设备321迁移到第二存储设备323的数据块的数量,并通知数据迁移模块313。数据迁移模块313用于将得到数量的数据块从第一存储设备321迁移到第二存储设备323。
具体的,数据采集分析模块311用于获取第二存储设备323单位时间内的读写次数;根据所述第二存储设备323单位时间内的读写次数获取所述第二存储设备323的强度比;查询强度比与容量比对应表,获得与所述强度比对应的容量比;根据所述容量比得到需要从所述第一存储设备321迁移到所述第二存储设备323的据块的数量;将得到的需要迁移的数据块的数量发送给数据迁移模块313。详细的处理方法在前文方法中已进行了详细的描述,在此处不再另行描述。
数据采集分析模块311获取第二存储设备323的强度比,并根据强度比与容量比对应表,得到需要迁移到第二存储设备323的数据块的数量。这样可以根据第二存储设备323的性能确定迁移的数据的量,可以确保迁入数据之后第二存储设备323的性能不受影响,保证了整个存储***的性能。
数据迁移模块313用于根据接收到的需要迁移的数据块的数量将对应的数据块从所述第一存储设备321迁移到所述第二存储设备323。
数据采集分析模块311还用于预先采集分析应用对存储***3的IO请求,得到强度比与容量比对应表。这样在得到第二存储设备323的强度比之后,可以直接查询强度比与容量比对应表,快速得到需要从第一存储设备321迁移到第二存储设备323的数据块的数量。
数据采集分析模块311用于查询强度比与容量比对应表获得与所述强度比对应的容量比具体为:数据采集分析模块311用于查询强度比与容量比对应表,通过模糊匹配规则获取与所述强度比对应的容量比。
强度比与容量比对应表中不可能将所有可能出现的数据都记录出来,因此当计算出来的强度比的具体的数值在强度比与容量比对应表中无法找到时,可以根据模糊匹配规则,以强度比与容量比对应表比计算出来的强度比高一级的强度比的值为准确定对应的容量比,提高查找效率。
数据采集分析模块311还用于获取所述存储***3中的每个数据块单位时间内的读写次数,并将获取到的每个数据块的单位时间内的读写次数从高到低按顺序排列;根据所述容量比和所述获取到的每个数据块的单位时间内的读写次数确定与所述容量比对应的数据块;按顺序确认在所述第一存储设备321中与所述容量比对应的数据块的数量。
为了确定将访问次数较多的热数据从第一存储设备321中迁移到第二存储设备323,数据采集分析模块311将获取到的存储***3中每个数据块的单位时间内的读写次数从高到低按顺序排列,这样可以根据确定的需要迁移的数据块的数量按顺序将单位时间内的读写次数较高的数据块从第一存储设备321中迁移到性能更高的第二存储设备323中,更快的响应IO请求。
数据采集分析模块311还用于获取所述第一存储设备321单位时间内的读写次数。第二存储设备323的强度比为所述第二存储设备323单位时间内的读写次数占第一存储设备321单位时间内的读写次数与第二存储设备323单位时间内的读写次数之和的比重。
所述第一存储设备321单位时间内的读写次数为所述第一存储设备321中单盘单位时间内的读写次数与所述第一存储设备321中的盘的数量的积再除以第一换算系数,所述第一换算系数与所述第一存储设备321的读请求与写请求的比例以及第一存储设备321的RAID级别有关;
所述第二存储设备323单位时间内的读写次数为所述第二存储设备323中单盘单位时间内的读写次数与所述第二存储设备323中的盘的数量的积再除以第二换算系数,所述第二换算系数与所述第二存储设备323的读请求与写请求的比例以及第二存储设备323的RAID级别有关。
通过对各个参数具体数值的设置和获取,可以准确的得到需要从第一存储设备321迁移到第二存储设备323的数据块的数量,可以在尽可能多的把热数据迁移到高性能的第二存储设备323的同时,又可以保证存储设备323的性能,提高存储***的效率和性能。
具体各个参数可能的取值以及计算方法,在前文方法实施例中已进行了详细的描述,在此处不在详细描述。
本申请实施例还提供了一种计算机存储介质,用于储存为上述存储***所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。通过执行存储的程序,可以实现存储设备间迁移数据的方法。
本申请实施例还提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行上述方法实施例的流程。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信***。
本申请是参照本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离权利要求书的范围。

Claims (12)

1.一种存储***中迁移数据的方法,所述存储***包括第一存储设备和第二存储设备,其特征在于,包括:
获取第二存储设备单位时间内的读写次数;
根据所述第二存储设备单位时间内的读写次数,获取所述第二存储设备的强度比;
查询强度比与容量比对应表,获得与所述强度比对应的容量比;
根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量;
根据所述数量将对应的数据块从所述第一存储设备迁移到所述第二存储设备。
2.根据权利要求1所述的方法,其特征在于,所述强度比比与容量比对应表是预先监测分析得到的。
3.根据权利要求1或2所述的方法,其特征在于,步骤查询强度比与容量比对应表,获取与所述强度比对应的容量比具体为:
查询强度比与容量比对应表,通过模糊匹配规则获取与所述强度比对应的容量比。
4.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
获取所述存储***中的每个数据块单位时间内的读写次数,并将获取到的每个数据块的单位时间内的读写次数从高到低按顺序排列;
根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量具体包括:
根据所述容量比和所述获取到的每个数据块的单位时间内的读写次数确定与所述容量比对应的数据块;
确认在所述第一存储设备中与所述容量比对应的数据块的数量。
5.根据权利要求1-4任一所述的方法,其特征在于,所述方法还包括:
获取所述第一存储设备单位时间内的读写次数;
所述第二存储设备的强度比为所述第二存储设备单位时间内的读写次数占第一存储设备单位时间内的读写次数与第二存储设备单位时间内的读写次数之和的比重。
6.根据权利要求5所述的方法,其特征在于,所述第一存储设备单位时间内的读写次数为所述第一存储设备中单盘单位时间内的读写次数与所述第一存储设备中的盘的数量的积再除以第一换算系数,所述第一换算系数与所述第一存储设备的读请求与写请求的比例以及第一存储设备的RAID级别有关;
所述第二存储设备单位时间内的读写次数为所述第二存储设备中单盘单位时间内的读写次数与所述第二存储设备中的盘的数量的积再除以第二换算系数,所述第二换算系数与所述第二存储设备的读请求与写请求的比例以及第二存储设备的RAID级别有关。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:所述第一存储设备中单盘单位时间内的读写次数与所述第一存储设备的负载特征以及响应时长相关;
所述第二存储设备中单盘单位时间内的读写次数与所述第二存储设备的负载特征以及响应时长相关。
8.一种实现数据迁移的存储***,其特征在于,所述存储***包括第一存储设备、第二存储设备和处理器,所述处理器用于执行权利要求1-7所述的方法。
9.一种实现数据迁移的存储***,其特征在于,所述存储***包括第一存储设备、第二存储设备和处理器,所述处理器包括数据采集分析模块和数据迁移模块;
所述数据采集分析模块用于获取第二存储设备单位时间内的读写次数;根据所述第二存储设备单位时间内的读写次数获取所述第二存储设备的强度比;查询强度比与容量比对应表,获得与所述强度比对应的容量比;根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量;将得到的需要迁移的数据块的数量发送给数据迁移模块;
数据迁移模块用于将得到数量的数据块从第一存储设备迁移到第二存储设备。
10.根据权利要求9所述的存储***,其特征在于,数据采集分析模块还用于:
预先采集分析应用对存储***的IO请求,得到强度比与容量比对应表。
11.根据权利要求9或10所述的存储***,其特征在于,数据采集分析模块用于查询强度比与容量比对应表获得与所述强度比对应的容量比具体为:数据采集分析模块用于查询强度比与容量比对应表,通过模糊匹配规则获取与所述强度比对应的容量比。
12.根据权利要求9-11任一所述的存储***,其特征在于,数据采集分析模块还用于获取所述存储***中的每个数据块单位时间内的读写次数,并将获取到的每个数据块的单位时间内的读写次数从高到低按顺序排列;
数据采集分析模块根据所述容量比得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量具体为:数据采集分析模块根据所述容量比按顺序得到需要从所述第一存储设备迁移到所述第二存储设备的数据块的数量。
CN201611199849.1A 2016-12-22 2016-12-22 数据的迁移方法、装置和*** Active CN107122126B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201611199849.1A CN107122126B (zh) 2016-12-22 2016-12-22 数据的迁移方法、装置和***
PCT/CN2017/096784 WO2018113317A1 (zh) 2016-12-22 2017-08-10 数据的迁移方法、装置和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611199849.1A CN107122126B (zh) 2016-12-22 2016-12-22 数据的迁移方法、装置和***

Publications (2)

Publication Number Publication Date
CN107122126A true CN107122126A (zh) 2017-09-01
CN107122126B CN107122126B (zh) 2020-09-08

Family

ID=59717905

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611199849.1A Active CN107122126B (zh) 2016-12-22 2016-12-22 数据的迁移方法、装置和***

Country Status (2)

Country Link
CN (1) CN107122126B (zh)
WO (1) WO2018113317A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107894873A (zh) * 2017-11-07 2018-04-10 长沙曙通信息科技有限公司 一种存储虚拟化***数据处理实现方法
CN110018797A (zh) * 2019-04-11 2019-07-16 苏州浪潮智能科技有限公司 一种数据迁移方法、装置、设备及可读存储介质
CN110413209A (zh) * 2018-04-28 2019-11-05 伊姆西Ip控股有限责任公司 管理存储***的方法和设备
CN110825908A (zh) * 2019-11-04 2020-02-21 安超云软件有限公司 一种对象的迁移方法、装置、电子设备及存储介质
CN111078160A (zh) * 2020-03-23 2020-04-28 上海飞旗网络技术股份有限公司 基于调用比例及响应时长的数据迁移存储方法及装置
CN113741810A (zh) * 2021-07-30 2021-12-03 苏州浪潮智能科技有限公司 一种数据迁移方法及装置
CN114327253A (zh) * 2021-10-18 2022-04-12 杭州逗酷软件科技有限公司 数据迁移方法、装置、电子设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124281B (zh) * 2019-11-29 2023-11-03 浪潮(北京)电子信息产业有限公司 全闪存储***的数据存储方法、装置、设备及存储介质
CN112015347A (zh) * 2020-08-28 2020-12-01 北京浪潮数据技术有限公司 一种数据迁移方法、装置及相关设备

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101369451A (zh) * 2007-08-14 2009-02-18 三星电子株式会社 固态存储器、包含其的计算机***和操作其的方法
CN102033717A (zh) * 2010-12-07 2011-04-27 清华大学 基于磁盘阵列的数据存储方法及***
CN102317901A (zh) * 2011-07-25 2012-01-11 华为技术有限公司 对象调整方法、迁移控制设备、节点设备及存储***
CN102541460A (zh) * 2010-12-20 2012-07-04 ***通信集团公司 一种多磁盘场景下的磁盘管理方法和设备
CN103091707A (zh) * 2012-12-31 2013-05-08 中国石油集团川庆钻探工程有限公司地球物理勘探公司 地震数据分级存储装置及方法
CN103106044A (zh) * 2012-12-13 2013-05-15 深圳先进技术研究院 分级存储节能方法
CN103106152A (zh) * 2012-12-13 2013-05-15 深圳先进技术研究院 基于层次存储介质的数据调度方法
CN103616944A (zh) * 2013-10-18 2014-03-05 杭州电子科技大学 云存储***中基于预判性绿色数据分类策略的降耗方法
CN103688248A (zh) * 2013-06-29 2014-03-26 华为技术有限公司 一种存储阵列的管理方法、装置和控制器
US20140208010A1 (en) * 2010-04-19 2014-07-24 International Business Machines Corporation Sub-lun input/output profiling for ssd devices
CN104102454A (zh) * 2013-04-07 2014-10-15 杭州信核数据科技有限公司 一种自动实现分层存储的方法和管理分层存储的***
CN104268099A (zh) * 2014-08-29 2015-01-07 浪潮(北京)电子信息产业有限公司 一种管理数据读写的方法及装置
CN104536904A (zh) * 2014-12-29 2015-04-22 杭州华为数字技术有限公司 一种数据管理的方法、设备与***
WO2015145532A1 (ja) * 2014-03-24 2015-10-01 株式会社日立製作所 ストレージシステム及びデータ処理方法
CN105653524A (zh) * 2014-11-10 2016-06-08 阿里巴巴集团控股有限公司 一种数据存储方法、装置和***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572684B (zh) * 2013-10-17 2018-12-28 深圳市腾讯计算机***有限公司 数据存储***的容量调整方法、装置及数据存储***
CN104598495A (zh) * 2013-10-31 2015-05-06 南京中兴新软件有限责任公司 基于分布式文件***的分级存储方法及***

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101369451A (zh) * 2007-08-14 2009-02-18 三星电子株式会社 固态存储器、包含其的计算机***和操作其的方法
US20140208010A1 (en) * 2010-04-19 2014-07-24 International Business Machines Corporation Sub-lun input/output profiling for ssd devices
CN102033717A (zh) * 2010-12-07 2011-04-27 清华大学 基于磁盘阵列的数据存储方法及***
CN102541460A (zh) * 2010-12-20 2012-07-04 ***通信集团公司 一种多磁盘场景下的磁盘管理方法和设备
CN102317901A (zh) * 2011-07-25 2012-01-11 华为技术有限公司 对象调整方法、迁移控制设备、节点设备及存储***
CN103106044A (zh) * 2012-12-13 2013-05-15 深圳先进技术研究院 分级存储节能方法
CN103106152A (zh) * 2012-12-13 2013-05-15 深圳先进技术研究院 基于层次存储介质的数据调度方法
CN103091707A (zh) * 2012-12-31 2013-05-08 中国石油集团川庆钻探工程有限公司地球物理勘探公司 地震数据分级存储装置及方法
CN104102454A (zh) * 2013-04-07 2014-10-15 杭州信核数据科技有限公司 一种自动实现分层存储的方法和管理分层存储的***
CN103688248A (zh) * 2013-06-29 2014-03-26 华为技术有限公司 一种存储阵列的管理方法、装置和控制器
CN103616944A (zh) * 2013-10-18 2014-03-05 杭州电子科技大学 云存储***中基于预判性绿色数据分类策略的降耗方法
WO2015145532A1 (ja) * 2014-03-24 2015-10-01 株式会社日立製作所 ストレージシステム及びデータ処理方法
CN104268099A (zh) * 2014-08-29 2015-01-07 浪潮(北京)电子信息产业有限公司 一种管理数据读写的方法及装置
CN105653524A (zh) * 2014-11-10 2016-06-08 阿里巴巴集团控股有限公司 一种数据存储方法、装置和***
CN104536904A (zh) * 2014-12-29 2015-04-22 杭州华为数字技术有限公司 一种数据管理的方法、设备与***

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107894873A (zh) * 2017-11-07 2018-04-10 长沙曙通信息科技有限公司 一种存储虚拟化***数据处理实现方法
CN110413209A (zh) * 2018-04-28 2019-11-05 伊姆西Ip控股有限责任公司 管理存储***的方法和设备
CN110018797A (zh) * 2019-04-11 2019-07-16 苏州浪潮智能科技有限公司 一种数据迁移方法、装置、设备及可读存储介质
CN110018797B (zh) * 2019-04-11 2020-03-06 苏州浪潮智能科技有限公司 一种数据迁移方法、装置、设备及可读存储介质
CN110825908A (zh) * 2019-11-04 2020-02-21 安超云软件有限公司 一种对象的迁移方法、装置、电子设备及存储介质
CN111078160A (zh) * 2020-03-23 2020-04-28 上海飞旗网络技术股份有限公司 基于调用比例及响应时长的数据迁移存储方法及装置
CN113741810A (zh) * 2021-07-30 2021-12-03 苏州浪潮智能科技有限公司 一种数据迁移方法及装置
CN113741810B (zh) * 2021-07-30 2023-08-11 苏州浪潮智能科技有限公司 一种数据迁移方法及装置
CN114327253A (zh) * 2021-10-18 2022-04-12 杭州逗酷软件科技有限公司 数据迁移方法、装置、电子设备及存储介质
CN114327253B (zh) * 2021-10-18 2024-05-28 杭州逗酷软件科技有限公司 数据迁移方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
WO2018113317A1 (zh) 2018-06-28
CN107122126B (zh) 2020-09-08

Similar Documents

Publication Publication Date Title
CN107122126A (zh) 数据的迁移方法、装置和***
CN105653591B (zh) 一种工业实时数据分级存储及迁移方法
CN111367469B (zh) 一种分层存储数据迁移方法和***
US8682850B2 (en) Method of enhancing de-duplication impact by preferential selection of master copy to be retained
CN102857560B (zh) 一种面向多业务应用的云存储数据分布方法
CN106469018B (zh) 分布式存储***的负载监控方法及设备
CN104699424B (zh) 一种基于页面热度的异构内存管理方法
CN107092701A (zh) 一种多维数据模型的数据处理方法及装置
CN108089814A (zh) 一种数据存储方法及装置
CN106406759A (zh) 一种数据存储方法及装置
CN103150245B (zh) 确定数据实体的访问特性的方法和存储控制器
CN107133228A (zh) 一种数据重分布的方法及装置
CN110096489A (zh) 一种数据查询方法、***、装置及电子设备
CN104268099A (zh) 一种管理数据读写的方法及装置
CN106534308A (zh) 一种分布式存储***中解决数据块访问热点的方法及装置
CN107291539A (zh) 基于资源重要程度的集群程序调度方法
CN109710184A (zh) 瓦记录磁盘感知的分层式混合存储方法及***
CN110795363A (zh) 一种存储介质的热页预测方法和页面调度方法
CN104021223B (zh) 一种集群数据库测点的访问方法及装置
CN109634746A (zh) 一种web集群缓存的利用***及优化方法
CN106371762A (zh) 一种存储数据优化方法及***
US20090006501A1 (en) Zone Control Weights
CN103827837B (zh) 访问固态硬盘空间的方法、装置及***
CN110209350A (zh) 一种混合存储架构hpc***中应用i/o请求的动态调度方法
US6859859B2 (en) Method and system for efficiently calculating and storing expected access time information for DASD

Legal Events

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