用于迁移活动文件系统的方法、设备和系统技术方案

技术编号:36595610 阅读:13 留言:0更新日期:2023-02-04 18:06
一种在处理对元数据进行操作的命令时将元数据从具有有根树结构的提供者文件系统D迁移到受让者文件系统B的计算机实现的方法可以包括,当没有接收到对元数据进行操作的命令时,通过将提供者文件系统D的节点的元数据顺序复制到受让者文件系统B来在受让者文件系统B处复制提供者文件系统D。当只有一些参数存在于受让者文件系统B中时,该命令可以入队,至少直到该命令的所有参数都存在于受让者文件系统B中。当其所有参数都存在于受让者文件系统B中时,入队的命令可以出队并被调度执行。入队的命令可以出队并被调度执行。入队的命令可以出队并被调度执行。

【技术实现步骤摘要】
【国外来华专利技术】用于迁移活动文件系统的方法、设备和系统

技术介绍

[0001]如今,所谓的大数据在云中找到了天然的归宿。在云中,领先的公司正在充分利用廉价、可扩展的存储以及强大的云分析平台带来的灵活性。然而,尽管将大数据迁移到云有令人信服的优势,但也存在潜在的业务风险。
[0002]将大数据迁移至云的一种方法是手动完成。手动迁移是拷贝大数据的一种定制的战术方法。当管理员手动迁移数据时,他们会创建、管理、安排和维护自定义或开源脚本来迁移大型数据集。当数据传输设备添加到大数据到云的迁移计划中时,需要额外的自定义脚本来上传数据。这种手动大数据云迁移方法的业务风险包括数据不一致、业务中断和高IT资源要求。数据不一致的风险
[0003]大型数据集迁移至云需要时间。以每秒1千兆位(Gbps)的速度迁移1拍字节(PB)的数据大约需要100天。即使有数据传输设备,供应商的加载时间也需要数周。虽然使数据在云中可用,但仍然需要更改和接收。在漫长的迁移时间内更改数据会增加将大规模数据集准确引入云的风险。然而,由于手动迁移依赖于侧重于复制数据的自定义或开源脚本,迁移团队可能无法验证迁移的准确性。事实上,大规模手动对账并不能保证数据结果完全一致。此外,这种方法不支持迁移过程中可能发生的新更新。通常,大规模数据迁移的手动方法不支持迁移期间修改或创建的数据更改。业务中断的风险
[0004]由于规模和适用性优势,组织已将越来越多的任务关键型工作负载部署到Hadoop。企业关键型工作负载带来了对可用性、一致性、安全性和可审核性的期望。就复杂性而言,移动不变的数据集很简单,而移动具有这些预期的动态变化的数据集则非常具有挑战性。在大数据迁移期间,手动迁移通常需要对本地应用程序操作进行有意义的中断。选择在数月内将数据集引入云的增量迁移策略的管理员面临着处理破坏性更新的问题,并面临无法满足其企业服务级别协议(SLA)的风险。高IT资源需求和成本增加的风险
[0005]公司为构建数据中心以托管其Hadoop数据和工作负载而进行的重大资本投资刚刚超过了通常的两到四年折旧期,因此这些成本可以注销。从资本硬件折旧转移到云运营支出变得非常简单。公司还在支持内部数据基础架构的人员、流程和应用程序方面进行了大量投资。将手动迁移添加到这些沉没成本中会给IT预算带来风险。尝试无中断、无停机大数据迁移的活动开销非常大。在数据迁移项目开始时,创建、测试、管理、安排和维护自定义迁移脚本所需的资源范围可能没有被完全理解,甚至无法量化。由于手动迁移的自定义性质,此类迁移计划容易出现代价高昂的延迟。
附图说明
[0006]图1A是提供者(donor)D和受让者(beneficiary)B的有根树结构的图示。
[0007]图1B是根据一个实施例,显示从由前缘和后缘界定的一组节点中拉出的内容的滑
动窗口的图示。
[0008]图1C是根据一个实施方案,说明内容从提供者文件系统D迁移到受让者文件系统B时,栅栏柱(fencepost)F的示意图。
[0009]图2所示为本计算机实施的方法和系统的一个实施例的各方面。
[0010]图3为说明本计算机实施的方法和系统的其他方面的框图。
[0011]图4为显示未迁移区域和迁移区域之间的重复重命名会阻碍迁移的方式的示意图。
[0012]图5显示了将受让者文件系统B的未迁移部分重命名为其已迁移部分的命令的各个方面。
[0013]图6是根据一个实施例,在处理对元数据进行操作的命令时,将元数据从具有有根树结构的提供者文件系统D迁移到受让者文件系统B的计算机实施方法的流程图。
[0014]图7显示了根据一个实施例,可用于将元数据从具有有根树结构的提供者文件系统D迁移至受让者文件系统B,同时处理对元数据进行操作的命令的本方法的实施方面的物理硬件。
具体实施方式
[0015]考虑将大量数据从文件系统(称为提供者),例如Hadoop文件系统(HDFS),复制到目的地,例如云存储(受让者)。一旦迁移了数据,只需放弃原存储即可“切换”到目标,或者使用主动

主动复制解决方案使两个副本保持同步,从而维护这两个副本。用于这种主动

主动复制的工具可以使用分布式一致协议来构建,例如来自本受让者WANdisco公司的Paxos Fusion。
[0016]如前所述,即使通过快速通信通道传输大型数据集(例如,1pb或更多),也需要很长时间。因此,完全可以想象,迁移大量数据的行为可能会花费令人望而却步的时间,超过数据所有者可以避免修改数据的时间。例如,这种迁移可能需要几天或几个月的时间,具体取决于数据量和可用带宽,并且该数据的所有者可能无法选择在此期间不修改数据。因此,关键的业务需求是在迁移过程中允许客户端操作在提供者文件系统上执行的能力。这里,在迁移过程中允许客户端操作的迁移被称为无中断迁移。这种无中断迁移本质上是长期运行的,这意味着迁移可能需要几天、几周或几个月才能完成。考虑到这种无中断迁移的长期运行特性,另一个业务需求是,任何这种长期运行的操作都必须足够健壮,以承受诸如节点和链路故障之类的故障。
[0017]目前,执行拍字节级迁移的方法是首先将数据传输到存储传输设备,例如亚马逊WEB服务导入/导出雪球(AWS Import/Export Snowball),将其物理运送到云供应商,然后等待数据上传到云存储,这一过程可能需要一周以上的时间。值得注意的是,数据在上传之前是不可访问的。但是,如果不是迁移到云存储,加载到存储设备中的数据在此期间肯定会发生变化。这些变化(增量)可以通过拍摄快照并通过网络发送来捕获。重复这个过程,直到两个站点有相同的内容。当校正内容所需的最后增量足够小时,可能有必要锁定文件系统并阻止客户端,并且认为这种阻止对客户的中断不显著。请注意,根据供应商的不同,存储设备的数据传输速率有上限。如果传输速率成为限制因素,预计系统管理员将对文件系统进行分区,并并行使用多个设备。也不能保证这种方法需要多长时间才能使两边的数据完
全相同。这种类型的迁移必然会有一些手动步骤。除非有严格的一致性检查,否则这种方法容易导致数据丢失/损坏。
[0018]因此,我们需要强大的方法和系统来消除手动大数据迁移的风险或高成本。还需要用于跨所有主要商业Hadoop发行版向云进行大规模自动数据迁移的方法和系统,只需对源存储进行一次扫描,即使数据在不断变化。这样的解决方案应该不需要脚本、不需要代码维护、不需要传输设备、不需要调度、不需要审查。
[0019]因此,一个实施例实现了从持续运行的内部系统到云的大规模数据迁移的自动化。当提供者系统(数据从其迁移)中的任何地方发生变化时,用于实时迁移的本方法和系统确保受让者系统(数据被迁移到的地方)在完成时具有一致的数据。此外,本专利技术的计算机实现的方法和系统操作来通过跨所有主要商业(例如,Hadoop)发行版和云存储和分析服务的对源存储的单次扫描的一次点击复制来最小化IT资源。所描述的实时迁移计算机实现的方法和系统包括大本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种在处理对元数据进行操作的命令的同时,将元数据从具有有根树结构的提供者文件系统D迁移到受让者文件系统B的计算机实现的方法,包括:当没有接收到对元数据进行操作的命令时,通过将提供者文件系统D的节点的元数据顺序复制到受让者文件系统B,在受让者文件系统B处复制提供者文件系统D的有根树结构;和接收对元数据进行操作的命令;当所接收的命令的所有参数都存在于提供者文件系统D和受让者文件系统B中时,在提供者文件系统D和受让者文件系统B中执行所接收的命令;仅当所接收的命令的参数都不存在于受让者文件系统B中时,在提供者文件系统D处执行所接收的命令;当所接收的命令中只有一些参数存在于受让者文件系统B中时,将所接收的命令排入队列,至少直到所接收的命令的所有参数都存在于受让者文件系统B中;和当其所有参数都存在于受让者文件系统B中时,将接收到的命令出队并调度执行。2.根据权利要求1所述的计算机实现的方法,进一步将任何剩余的命令从队列中出列,并且当提供者文件系统D的有根树结构已经被复制到受让者文件系统B时,调度出列的命令用于执行。3.根据权利要求1所述的计算机实现的方法,其中,所述队列是最小堆。4.根据权利要求1所述的计算机实现的方法,其中复制提供者文件系统D的有根树结构包括以深度优先扫描(DFS)方式遍历和复制有根树结构。5.根据权利要求1所述的计算机实现的方法,其中,当对元数据进行操作的命令包括对作为有根树结构的复制的前缘的原型的节点的删除操作时,所述计算机实现的方法还包括将待删除的节点之后的下一个节点识别为顺序复制要恢复的节点,在提供者文件系统D和受让者文件系统B上执行删除操作,并在所识别的下一个节点恢复顺序复制。6.根据权利要求1所述的计算机实现的方法,其中,当对元数据进行操作的命令包括已经从提供者文件系统D复制到受让者文件系统B的元数据的重命名操作时,所述计算机实现的方法还包括执行重命名操作,就好像其是尚未从提供者文件系统D复制到受让者文件系统B的元数据的重命名操作一样。7.根据权利要求1所述的计算机实现的方法,其中,当对元数据进行操作的命令包括尚未从提供者文件系统D复制到受让者文件系统B的元数据的重命名操作时,所述计算机实现的方法还包括在提供者文件系统D执行重命名操作,并在受让者文件系统B删除受重命名操作影响的任何节点。8.根据权利要求1所述的计算机实现的方法,还包括将与元数据相关联的数据块从提供者文件系统D独立复制到受让者文件系统B。9.根据权利要求1所述的计算机实现的方法,进一步包括:使用扫描器进程以逐步方式遍历有根树结构,所述扫描器进程获取提供者文件系统D的未迁移部分的下一节点的元数据,并将所获取的元数据提供给受让者文件系统B处的远程代理,所述远程代理配置为将所提供的元数据复制到受让者文件系统B。10.根据权利要求9所述的计算机实现的方法,还包括如果获取提供者文件系统D的未迁移部分的下一个节点的元数据会超过有根树结构的节点集合S的最小元素,则阻止扫描
器获取所述元数据,所述节点集合S是已经允许执行的命令的参数,在提供者文件系统D的未迁移部分上操作,并且不知道已经终止。11.根据权利要求1所述的计算机实现的方法,其中接收对所述元数据进行操作的命令包括在所述命令被执行和操作以改变存储在所述提供者文件系统D中的元数据之前,拦截来自其发送者的所述命令。12.根据权利要求1所述的计算机实现的方法,还包括在提供者文件系统D的有根树结构已经迁移到受让者文件系统B之后,将存在于队列中的任何剩余命令出队并调度以执行。13.根据权利要求1所述的计算机实现的方法,其中将元数据从提供者文件系统D迁移到受让者文件系统B,同时处理在提供者文件系统D的有根树结构的一次遍历中执行的对元数据进行操作的命令。14.根据权利要求1所述的计算机实现的方法,其中将接收到的命令入队包括暂时阻止其执行。15.根据权利要求1所述的计算机实现的方法,其特征在于,还包括接收重复的重命名命令,并通过将所述重复的重命名命令压入大小有限的堆栈以供以后执行来暂时阻止所述重复的重命名命令的执行。16.根据权利要求1所述的计算机实现的方法,其中,当将提供者文件系统D的节点的元数据复制到受让者文件系统B遇到打开文件时,所述方法还包括临时阻止从打开文件向下跨越到有根树结构的分层较低部分的有根树结构的一部分。17.根据权利要求1所述的计算机实现的方法,其中所述顺序复制包括复制滑动窗口的元数据,所述滑动窗口包含至少一个节点,并且由前缘节点和后缘节点界定,所述前缘节点是其元数据被提取用于复制的最后节点,所述后缘节点是已经发出元数据请求并且受让者文件系统B还没有确认其成功写入的最小节点。18.根据权利要求1所述的计算机实现的方法,还包括:当从受让者文件系统B接收到成功写入的确认时,并且当其元数据被获取的提供者文件系统D的最后一个节点被更新时,移动滑动窗口以从提供者文件系统D获取附加元数据。19.根据权利要求1所述的计算机实现的方法,其中滑动窗口内的提供者文件系统D的节点数量随着对元数据的请求被发布到提供者文件系统D而增长,并且随着从受让者文件系统B接收到元数据成功写入的确认而缩减。20.根据权利要求1所述的计算机实现的方法,还包括不允许作为所述有根树结构的最后一个节点的前缘节点,所述有根树结构的元数据是从超越所述有根树结构的节点集合S的最小元素中提取的,所述节点集合S是已经被允许执行的命令的参数,在所述提供者文件系统D的未迁移部分上操作,并且不知道已经终止。21.一种计算机实现的系统,包括:...

【专利技术属性】
技术研发人员:Y
申请(专利权)人:万迪斯科股份有限公司
类型:发明
国别省市:

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

1