基于多机房副本放置策略的机房数据迁移方法与装置制造方法及图纸

技术编号:37334794 阅读:7 留言:0更新日期:2023-04-21 23:13
本申请提供了一种基于多机房副本放置策略的机房数据迁移方法与装置,所述方法包括:将旧机房的元数据节点的副本放置策略修改为多机房副本放置策略,并将所述多机房副本放置策略中写入机房设置为所述旧机房;在新机房新增数据节点,汇报至所述旧机房的元数据节点,并将所述多机房副本放置策略中写入机房设置为所述旧机房和所述新机房;基于AzMover迁移方法,将迁移文件的各文件块的副本迁移到所述新机房的数据节点;将所述旧机房的数据节点下线,并将所述旧机房的元数据节点迁移到所述新机房,完成机房数据迁移。本申请采用多机房副本放置策略和AzMover迁移方法,避免了过多的跨机房流量,实现了对带宽流量的精准控制。实现了对带宽流量的精准控制。实现了对带宽流量的精准控制。

【技术实现步骤摘要】
基于多机房副本放置策略的机房数据迁移方法与装置


[0001]本申请涉及计算机
,尤其涉及一种基于多机房副本放置策略的机房数据迁移方法与装置。

技术介绍

[0002]随着云原生时代的到来,多云多机房已成为各大互联网、科技公司的主流架构。云厂商提供的基础云服务,能够让被服务方免去大量基础运维,从而专心研发业务,快速发展。但是多云架构也带来了很多问题,如云厂商服务质量不过关、合同到期续费涨价等。面对此类问题,比较常见的解决方案就是更换合作的云厂商,但这对业务公司而言,就需要迁移所有的数据和服务到新云厂商提供的机房。
[0003]目前,对于主流的分布式存储组件HDFS(Hadoop Distributed File System, Hadoop分布式文件系统),通常采用Distcp工具进行数据迁移,基于Distcp工具进行数据迁移主要包括:采用Distcp工具拷贝旧机房的存量数据至新机房,在存量数据拷贝完成后停止旧机房的服务,再拷贝增量数据、迁移所有服务。但基于Distcp迁移数据存在以下缺点:数据一致性难以保证,已迁移数据需要长期定时去验证,防止用户更新或删除;拷贝数据时难以控制跨机房流量,容易打满专线带宽;集群割接时需要停服进行割接,且割接时,拷贝增量数据以及迁移基于HDFS的所有上层服务将会花费较长时间,使得停服时间较长,风险不可控,易导致割接失败。

技术实现思路

[0004]本申请提供一种基于多机房副本放置策略的机房数据迁移方法与装置,以用于解决现有技术中存在的数据一致性无法保证、跨机房流量无法控制、停服风险不可控等问题。
[0005]第一方面,本申请提供一种基于多机房副本放置策略的机房数据迁移方法,所述方法包括:将旧机房的元数据节点的副本放置策略修改为多机房副本放置策略,并将所述多机房副本放置策略中写入机房设置为所述旧机房;在新机房新增数据节点,汇报至所述旧机房的元数据节点,并将所述多机房副本放置策略中写入机房设置为所述旧机房和所述新机房;其中,所述新机房中新增数据节点的数量为所述旧机房中数据节点的数量;基于AzMover迁移方法,将迁移文件的各文件块的副本迁移到所述新机房的数据节点;将所述旧机房的数据节点下线,并将所述旧机房的元数据节点迁移到所述新机房,完成机房数据迁移。
[0006]根据本申请提供的一种基于多机房副本放置策略的机房数据迁移方法,所述基于AzMover迁移方法,将迁移文件的各文件块的副本迁移到所述新机房的数据节点,包括:针对所述迁移文件的各文件块,确定各文件块副本所在的数据节点集合,并确定复制源节点
和待删除副本的节点,所述待删除副本的节点为所述数据节点集合中剩余存储空间最小的数据节点;基于负载均衡和存储均衡的原则,从所述新机房的数据节点中确定目标节点;将所述迁移文件的各文件块的副本,从所述复制源节点拷贝至所述目标节点,并删除所述待删除副本的节点中的对应副本。
[0007]根据本申请提供的一种基于多机房副本放置策略的机房数据迁移方法,所述基于负载均衡和存储均衡的原则,从所述新机房的数据节点中确定目标节点,包括:针对低并发迁移文件块的HDFS单集群,从所述新机房的数据节点中随机选取两个数据节点作为候选节点,将所述候选节点中的剩余存储空间更多的节点确定为目标节点;针对数据节点存储均匀的HDFS单集群,每隔一段时间将所述新机房的数据节点按剩余存储空间降序排列,并选取位置靠前的第一数量数据节点作为目标节点,且所述目标节点的并发设为相同值;针对数据节点数符合大集群规模的HDFS单集群,将所述新机房的数据节点按剩余存储空间降序排列,并选取位置靠前的第二数量数据节点作为候选节点集,再从所述候选节点集随机选取第三数量数据节点作为目标节点,且所述目标节点的并发设为相同值。
[0008]根据本申请提供的一种基于多机房副本放置策略的机房数据迁移方法,所述复制源节点设有流量配置项,所述流量配置项用于控制副本拷贝的流量。
[0009]根据本申请提供的一种基于多机房副本放置策略的机房数据迁移方法,确定复制源节点,包括:若所述新机房不存在待迁移的文件块的副本,则将所述数据节点集合中负载最低的数据节点作为复制源节点;若所述新机房存在待迁移的文件块的副本,则将所述新机房中存在待迁移的文件块的副本的数据节点作为复制源节点。
[0010]根据本申请提供的一种基于多机房副本放置策略的机房数据迁移方法,所述将旧机房的元数据节点的副本放置策略修改为多机房副本放置策略之前,所述方法还包括:定义网络拓扑类,并基于所述网络拓扑类构建HDFS的网络拓扑;其中,所述HDFS的网络拓扑用于使所述旧机房的元数据节点感知所述多机房副本放置策略。
[0011]根据本申请提供的一种基于多机房副本放置策略的机房数据迁移方法,所述多机房副本放置策略用于根据待部署文件的多机房副本放置策略选择目标机房的数据节点写入副本、根据待部署文件的多机房副本放置策略删除目标机房的数据节点的副本、控制副本写入时的跨专线次数。
[0012]第二方面,本申请还提供一种基于多机房副本放置策略的机房数据迁移装置,所述装置包括:第一设置模块,用于将旧机房的元数据节点的副本放置策略修改为多机房副本放置策略,并将所述多机房副本放置策略中写入机房设置为所述旧机房;第二设置模块,用于在新机房新增数据节点,汇报至所述旧机房的元数据节点,并将所述多机房副本放置策略中写入机房设置为所述旧机房和所述新机房;其中,所述新机房中新增数据节点的数量为所述旧机房中数据节点的数量;副本迁移模块,用于基于AzMover迁移方法,将迁移文件的各文件块的副本迁移到所述新机房的数据节点;服务迁移模块,用于将所述旧机房的数据节点下线,并将所述旧机房的元数据节点迁移到所述新机房,完成机房数据迁移。
[0013]第三方面,本申请实施例还提供了一种电子设备,所述电子设备包括存储器和处
理器,所述存储器存储有计算机程序,所述处理器运行所述计算机程序时,执行上述的基于多机房副本放置策略的机房数据迁移方法中的任一实现方式中的步骤。
[0014]第四方面,本申请实施例还提供了一种可读存储介质,所述可读取存储介质中存储有计算机程序,所述计算机程序在处理器上运行时,执行上述的基于多机房副本放置策略的机房数据迁移方法中的任一实现方式中的步骤。
[0015]综上所述,基于多机房副本放置策略的机房数据迁移方法与装置,通过构建HDFS的网络拓扑,并修改副本放置策略为多机房副本放置策略,使HDFS能快速感知到副本所放置的机房;通过将增量数据同时写入新机房和旧机房,进一步避免产生跨机房流量;通过采用AzMover迁移方法先跨机房拷贝各文件块的单副本,再同机房拷贝各文件块的其余副本,避免产生过多的跨机房流量,实现了在不停服的情况下完成机房数据迁移;同时,基于负载均衡和存储均衡确定复制源节点、待删除副本的节点、目标节点,确保了HDFS的负载均衡和存储均衡;对复制源节点的流量配置项进行调整,实现了对带宽流量的精准控制,既可以避免带宽打满,又提高了迁移效率。...

【技术保护点】

【技术特征摘要】
1.一种基于多机房副本放置策略的机房数据迁移方法,其特征在于,所述方法包括:将旧机房的元数据节点的副本放置策略修改为多机房副本放置策略,并将所述多机房副本放置策略中写入机房设置为所述旧机房;在新机房新增数据节点,汇报至所述旧机房的元数据节点,并将所述多机房副本放置策略中写入机房设置为所述旧机房和所述新机房;其中,所述新机房中新增数据节点的数量为所述旧机房中数据节点的数量;基于AzMover迁移方法,将迁移文件的各文件块的副本迁移到所述新机房的数据节点;将所述旧机房的数据节点下线,并将所述旧机房的元数据节点迁移到所述新机房,完成机房数据迁移。2.根据权利要求1所述的方法,其特征在于,所述基于AzMover迁移方法,将迁移文件的各文件块的副本迁移到所述新机房的数据节点,包括:针对所述迁移文件的各文件块,确定各文件块副本所在的数据节点集合,并确定复制源节点和待删除副本的节点,所述待删除副本的节点为所述数据节点集合中剩余存储空间最小的数据节点;基于负载均衡和存储均衡的原则,从所述新机房的数据节点中确定目标节点;将所述迁移文件的各文件块的副本,从所述复制源节点拷贝至所述目标节点,并删除所述待删除副本的节点中的对应副本。3.根据权利要求2所述的方法,其特征在于,所述基于负载均衡和存储均衡的原则,从所述新机房的数据节点中确定目标节点,包括:针对低并发迁移文件块的HDFS单集群,从所述新机房的数据节点中随机选取两个数据节点作为候选节点,将所述候选节点中的剩余存储空间更多的节点确定为目标节点;针对数据节点存储均匀的HDFS单集群,每隔一段时间将所述新机房的数据节点按剩余存储空间降序排列,并选取位置靠前的第一数量数据节点作为目标节点,且所述目标节点的并发设为相同值;针对数据节点数符合大集群规模的HDFS单集群,将所述新机房的数据节点按剩余存储空间降序排列,并选取位置靠前的第二数量数据节点作为候选节点集,再从所述候选节点集随机选取第三数量数据节点作为目标节点,且所述目标节点的并发设为相同值。4.根据权利要求2所述的方法,其特征在于,所述复制源节点设有流量配置项,所述流量配置项用于控制...

【专利技术属性】
技术研发人员:胡梦宇贾承昆张俊杰陈曦赵兵李大海
申请(专利权)人:智者四海北京技术有限公司
类型:发明
国别省市:

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

1