一种数据迁移的方法、装置及系统制造方法及图纸

技术编号:13431694 阅读:71 留言:0更新日期:2016-07-30 04:24
本发明专利技术实施例提供了一种数据迁移的方法、装置及系统,涉及计算机应用技术领域,用以降低现有技术中负载均衡时导致的数据块错误迁移和反复迁移的问题。该方法包括:在采样周期内,获取所述各个控制器存储空间中数据块的被访问次数;根据所述各个控制器存储空间中数据块的被访问次数计算当前采样周期内所述各个控制器的热度,所述控制器的热度等于:在采样周期内,对所述控制器存储空间中数据块的被访问次数进行加权运算得到的加权运算值;确定所述各个控制器的热度是否大于第一阈值;发送第一迁移指令给第一控制器,发送第二迁移指令给第二控制器。本发明专利技术可用于数据迁移。

Method, device and system for data migration

The embodiment of the invention provides a method and a data transfer device and system, relates to the technical field of computer application, in order to reduce the load balancing problems caused when the data block error transfer and repeated migration in the prior art. The method includes: in the sampling period, the gain of each controller storage space in a data block is the number of visits; according to the storage space of each controller in the data block is the number of visits to calculate the sampling period of the controller of each heat, the heat is equal to the controller at the sampling period, the the controller in the storage space of data blocks is the number of visits weighted arithmetic operations by the weighted value; determining whether the heat of each controller is greater than the first threshold; sending the first transfer instruction to the first controller to send commands to the controller second transfer second. The invention can be used for data migration.

【技术实现步骤摘要】

本专利技术涉及计算机应用
,尤其涉及一种数据迁移的方法、装置及系统
技术介绍
存储区域网络(StorageAreaNetwork,简称SAN)是一种使用高速网络或子网络将存储设备和服务器连接起来的网络。SAN使存储设备与网络分离开来,成为计算机网络的对等体。一般来说,一个SAN由负责网络连接的通信结构、负责组织连接的管理层、存储部件以及计算机系统组成,SAN设备的典型架构可以参考图1。其中,主机、控制器以及集中式高速缓存(简称集中式CAHCE)是一一对应的,且集中式CACHE中划分了不止一块区域,每个区域称为一个逻辑单元号(LogicUnitNumber,简称Lun),在创建Lun时,已经分配好了各个Lun归属的控制器。示例的,假设图1中主机1、嵌入式处理器1和集中式CACHE1一一对应,则若主机1要访问集中式CACHE1中的某一数据块,主机1先通过接口芯片1,如光纤信道/小型计算机系统接口(FiberChannel/InternetSmallComputerSystemInterface,简称FC/iSCSI)芯片将访问请求发送给嵌入式处理器1,嵌入式处理器1接收该请求并将其中的数据部分发送给集中式CACHE,将其中的控制指令部分发送给控制器1,通知控制器1对集中式CACHE中的数据进行操作。但在上述数据块访问的过程中,由于主机和控制器是一一对应的,所以可能会出现某个控制器负载过大的而其他控制器负载较低的情况。此时,若不采取措施进行负载均衡,可能会导致系统的性能受到影响。为了解决这一问题,现有技术通过控制器的CPU占用率来对数据块进行迁移以实现负载均衡,进而提高系统的性能。但是,由于控制器的CPU占用率仅能反映某一时刻正在运行的进程占用的CPU资源的多少。因此,对于那些控制器CPU占用率大但不经常使用的进程来说,虽然其控制器CPU占用率较高,但实际上在这种情况下并没有必要对控制器中的数据块进行迁移,此时若仅根据控制器的CPU占用率来判定是否进行数据块迁移的话,很容易造成错误迁移;而对于突发进程来说,控制器的CPU占用率会频繁发生变动,进而导致数据块出现反复迁移。
技术实现思路
本专利技术的实施例提供一种数据迁移的方法、装置及系统,用以降低现有技术中负载均衡时导致的数据块错误迁移和反复迁移的问题。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,本专利技术提供了一种数据迁移的方法,所述方法应用于存储区域网络SAN系统中的迁移控制装置,所述存储区域网络SAN系统包括主机、迁移控制装置和至少两个控制器,所述每个控制器包括存储空间,所述迁移控制装置分别与所述主机、所述至少两个控制器连接,所述方法包括:在采样周期内,获取所述各个控制器存储空间中数据块的被访问次数;根据所述各个控制器存储空间中数据块的被访问次数计算当前采样周期内所述各个控制器的热度,所述控制器的热度等于:在采样周期内,对所述控制器存储空间中数据块的被访问次数进行加权运算得到的加权运算值;确定所述各个控制器的热度是否大于第一阈值;发送第一迁移指令给第一控制器,其中:所述第一迁移指令中携带的迁出数据块标识是第一数据块的标识,所述第一数据块存储于所述第一控制器存储空间中,所述第一迁移指令携带的迁入控制器标识是第二控制器的标识,第一控制器的热度大于所述第一阈值,第二控制器的热度不大于第一阈值;发送第二迁移指令给所述第二控制器,其中:所述第二迁移指令中携带的迁出数据块标识是第二数据块的标识,所述第二数据块存储于所述第二控制器存储空间中,所述第二迁移指令携带的迁入控制器标识是所述第一控制器的标识;其中,所述第一数据块的热度大于所述第二数据块的热度。结合第一方面,在第一种可能的实现方式中,所述根据所述各个控制器存储空间中数据块的被访问次数计算当前采样周期内所述各个控制器的热度具体包括:根据所述各个控制器存储空间中数据块的被访问次数和第一公式,计算所述当前采样周期内各个控制器的热度,所述第一公式为:UM=Σj=1rUMj;]]>其中,UM表示当前采样周期内第M个控制器的热度,r表示第M个控制器存储空间中数据块的总个数,UMj表示当前采样周期内第M个控制器存储空间中第j个数据块的被访问次数。结合第一方面,在第二种可能的实现方式中,所述根据所述各个控制器存储空间中数据块的被访问次数计算所述当前采样周期内各个控制器的热度具体包括:根据所述各个控制器存储空间中数据块的被访问次数和第二公式,计算所述当前采样周期内各个控制器的热度,所述第二公式为:OM=Σj=1r(UMj×P0);]]>其中,OM表示当前采样周期内第M个控制器的热度,r表示第M个控制器存储空间中数据块的总个数,UMj表示当前采样周期内第M个控制器存储空间中第j个数据块的被访问次数,P0表示单位数据块的大小。结合第一方面,在第三种可能的实现方式中,所述根据所述各个控制器存储空间中数据块的被访问次数计算所述当前采样周期内各个控制器的热度具体包括:根据所述各个控制器存储空间中数据块的被访问次数和第三公式,计算所述当前采样周期内各个控制器的热度,所述第三公式包括:NM=Σj=1rΣi=k-nk[UMij×(12)iT],(k≥n)Σj=1rΣi=1k[UMij×(12)iT],(k<n);]]>其中,NM表示当前采样周期内第M个控制器的热度,r表示第M个控制器存储空间中数据块的总个数,UMij表示第i个采样周期内第M个控制器存储空间中第j个数据块的被访问次数,k表示当前采样周期,n表示预先设定的连续采样次数,T表示预先设定的数据块热度的半衰期,所述热度的半衰期表示所述数据块的被访问次数减半时所经历的时间。结合第一方面至第一方面的第三种可能的实现方式中任意一种实现方式,在第四种可能的实现方式中,所述获取采样周期内所述各个控制器存储空间中数据块的被访问次数之前,所述方法还包括:接收所述各个控制器发送的各自的第一路由信息,所述第一路由信息包括发出第一路由信息的控制器的:控制器标识以及所述控制器存储空间中的数据块标识;接收所述各个主机发送的各自的第二路由信息,所述第二路由信息包括发出第二路由信息的主机的:主机标识以及本文档来自技高网
...

【技术保护点】
一种数据迁移的方法,其特征在于,所述方法应用于存储区域网络SAN系统中的迁移控制装置,所述存储区域网络SAN系统包括主机、迁移控制装置和至少两个控制器,所述每个控制器包括存储空间,所述迁移控制装置分别与所述主机、所述至少两个控制器连接,所述方法包括:在采样周期内,获取所述各个控制器存储空间中数据块的被访问次数;根据所述各个控制器存储空间中数据块的被访问次数计算当前采样周期内所述各个控制器的热度,所述控制器的热度等于:在采样周期内,对所述控制器存储空间中数据块的被访问次数进行加权运算得到的加权运算值;确定所述各个控制器的热度是否大于第一阈值;发送第一迁移指令给第一控制器,其中:所述第一迁移指令中携带的迁出数据块标识是第一数据块的标识,所述第一数据块存储于所述第一控制器存储空间中,所述第一迁移指令携带的迁入控制器标识是第二控制器的标识,所述第一控制器的热度大于所述第一阈值,所述第二控制器的热度不大于所述第一阈值;发送第二迁移指令给所述第二控制器,其中:所述第二迁移指令中携带的迁出数据块标识是第二数据块的标识,所述第二数据块存储于所述第二控制器存储空间中,所述第二迁移指令携带的迁入控制器标识是所述第一控制器的标识;其中,所述第一数据块的热度大于所述第二数据块的热度。...

【技术特征摘要】
1.一种数据迁移的方法,其特征在于,所述方法应用于存储区域
网络SAN系统中的迁移控制装置,所述存储区域网络SAN系统包括主机、
迁移控制装置和至少两个控制器,所述每个控制器包括存储空间,所述
迁移控制装置分别与所述主机、所述至少两个控制器连接,所述方法包
括:
在采样周期内,获取所述各个控制器存储空间中数据块的被访问次
数;
根据所述各个控制器存储空间中数据块的被访问次数计算当前采
样周期内所述各个控制器的热度,所述控制器的热度等于:在采样周期
内,对所述控制器存储空间中数据块的被访问次数进行加权运算得到的
加权运算值;
确定所述各个控制器的热度是否大于第一阈值;
发送第一迁移指令给第一控制器,其中:所述第一迁移指令中携带
的迁出数据块标识是第一数据块的标识,所述第一数据块存储于所述第
一控制器存储空间中,所述第一迁移指令携带的迁入控制器标识是第二
控制器的标识,所述第一控制器的热度大于所述第一阈值,所述第二控
制器的热度不大于所述第一阈值;
发送第二迁移指令给所述第二控制器,其中:所述第二迁移指令中
携带的迁出数据块标识是第二数据块的标识,所述第二数据块存储于所
述第二控制器存储空间中,所述第二迁移指令携带的迁入控制器标识是
所述第一控制器的标识;
其中,所述第一数据块的热度大于所述第二数据块的热度。
2.根据权利要求1所述的方法,其特征在于,所述根据所述各个
控制器存储空间中数据块的被访问次数计算当前采样周期内所述各个
控制器的热度具体包括:
根据所述各个控制器存储空间中数据块的被访问次数和第一公式,
计算所述当前采样周期内各个控制器的热度,所述第一公式为:
UM=Σj=1rUMj;]]>其中,UM表示当前采样周期内第M个控制器的热度,r表示第M个
控制器存储空间中数据块的总个数,UMj表示当前采样周期内第M个控
制器存储空间中第j个数据块的被访问次数。
3.根据权利要求1所述的方法,其特征在于,所述根据所述各个
控制器存储空间中数据块的被访问次数计算所述当前采样周期内各个
控制器的热度具体包括:
根据所述各个控制器存储空间中数据块的被访问次数和第二公式,
计算所述当前采样周期内各个控制器的热度,所述第二公式为:
OM=Σj=1r(UMj×P0);]]>其中,OM表示当前采样周期内第M个控制器的热度,r表示第M个
控制器存储空间中数据块的总个数,UMj表示当前采样周期内第M个控
制器存储空间中第j个数据块的被访问次数,P0表示单位数据块的大小。
4.根据权利要求1所述的方法,其特征在于,所述根据所述各个
控制器存储空间中数据块的被访问次数计算所述当前采样周期内各个
控制器的热度具体包括:
根据所述各个控制器存储空间中数据块的被访问次数和第三公式,
计算所述当前采样周期内各个控制器的热度,所述第三公式包括:
NM=Σj=1rΣi=k-nk[UMij×(12)iT],(k≥n)Σj=1rΣi=1k[UMij×(12)iT],(k<n);]]>其中,NM表示当前采样周期内第M个控制器的热度,r表示第M个
控制器存储空间中数据块的总个数,UMij表示第i个采样周期内第M个控
制器存储空间中第j个数据块的被访问次数,k表示当前采样周期,n表
示预先设定的连续采样次数,T表示预先设定的数据块热度的半衰期,
所述热度的半衰期表示所述数据块的被访问次数减半时所经历的时间。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述获
取采样周期内所述各个控制器存储空间中数据块的被访问次数之前,所
述方法还包括:
接收所述各个控制器发送的各自的第一路由信息,所述第一路由信
息包括发出第一路由信息的控制器的:控制器标识以及所述控制器存储
空间中的数据块标识;
接收所述各个主机发送的各自的第二路由信息,所述第二路由信息
包括发出第二路由信息的主机的:主机标识以及所述主机中的逻辑块标
识;
根据所述第一路由信息和所述第二路由信息,建立第三路由信息,
所述第三路由信息包括主机标识、主机中的逻辑块标识、所述控制器标
识以及所述控制器存储空间中的数据块标识之间的对应关系。
6.根据权利要求5所述的方法,其特征在于,所述获取采样周期
内所述各个控制器存储空间中数据块的被访问次数具体包括:
接收各个主机在采样周期内发送的访问请求,所述访问请求中包括
所述各个主机标识和所述主机中的逻辑块标识;
根据所述访问请求,确定所述第三路由信息中是否包含所述各个所
述主机标识和所述主机中的逻辑块标识;
根据所述访问请求中包含的所述各个主机标识和所述主机中的逻
辑块标识以及所述第三路由信息,记录所述采样周期内所述各个控制器
存储空间中数据块的被访问次数。
7.根据权利要求6所述的方法,其特征在于,所述发送第一迁移
指令给第一控制器,发送第二迁移指令给第二控制器之后,所述方法还
包括:
将访问所述第一控制器存储空间中第一数据块的访问请求和访问
所述第二控制器存储空间中第二数据块的访问请求放入重发队列中;
接收所述第一控制器和所述第二控制器发送的迁移应答指令;
根据所述迁移应答指令,更新所述第三路由信息,得到第四路由信
息;
根据所述第四路由信息对访问所述第一数据块的访问请求和访问
所述第二数据块的访问请求进行路由。
8.根据权利要求1所述的方法,其特征在于,在所述根据所述各

\t个控制器存储空间中数据块的被访问次数计算所述各个控制器的热度
之后,所述方法还包括:
确定所述各个控制器的热度是否均大于第二阈值;
确定所述各个控制器的热度是否大于第一阈值具体包括:若所述控
制器的热度不全大于所述第二阈值,则确定所述各个控制器的热度是否
大于第一阈值。
9.根据权利要求1所述的方法,其特征在于,所述第一阈值为
其中,表示所有控制器的热度的平均值,α表示热度偏离百
分比。
10.一种迁移控制装置,其特征在于,所述装置应用于存储区域网
络SAN系统,所述存储区域网络SAN系统包括主机、至少两个控制器和
迁移控制装置,所述迁移控制装置分别与所述主机、所述至少两个控制
器连接,所述装...

【专利技术属性】
技术研发人员:徐晓忻张羽雷舒莹
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1