【技术实现步骤摘要】
一种基于乐观容错方法的迭代器
本专利技术涉及大数据环境下的分布式迭代计算
,尤其涉及一种基于乐观容错方法的迭代器。
技术介绍
随着互联网技术的快速发展,对海量数据的迭代处理与分析具有巨大的应用价值。伴随分布式系统的计算节点的不断增加,故障率也随之提升。迭代器的设计和容错方法的设计是制约计算效率的主要瓶颈之一,是不可忽略的关键技术。在现有技术中,迭代器在处理批量任务时,如果某台节点发生故障或者某个任务失败时,系统会根据文件可以重复访问的特性,重新启动该迭代任务。在处理流计算任务时,基于分布式快照和部分可重发的数据源实现了容错,当任务出现失败时,系统将整个Job恢复到最近一次快照的状态,并从数据源重发快照之后的数据。如果故障经常发生,这种悲观的方法很有效。然而,现实的用例表明,许多计算不会运行这么长时间或者在很多节点上运行失败变得司空见惯。在频率较低的情况下,检查点可能不必要地增加计算的延迟。因此,现有的迭代器在任务量较小或任务发生故障概率较低的情况下,检查点会带来较大的额外开销,影响了真正的迭代计算效率。此外,现有的迭代器中仅采用了悲观的容错策略,没有给出综合考虑迭代任务量大小以及任务故障率的容错方案。
技术实现思路
针对上述现有技术的不足,提供一种基于乐观容错方法的迭代器。为解决上述技术问题,本专利技术所采取的技术方案是:一种基于乐观容错方法的迭代器,包括:增量迭代器和批量迭代器;所述增量迭代器由迭代算子DeltaIterateOperator实现,所述批量迭代器由迭代算子I ...
【技术保护点】
1.一种基于乐观容错方法的迭代器,其特征在于包括:增量迭代器和批量迭代器;所述增量迭代器由迭代算子Delta Iterate Operator实现,所述批量迭代器由迭代算子Iterate Operator实现;/n所述迭代算子Delta Iterate Operator和迭代算子Iterate Operator共同包括:初始迭代输入Iterate Input、迭代函数Step Function、迭代结果Iteration Result、迭代终止条件Termination、乐观的补偿函数Compensate Function;所述迭代算子Delta IterateOperator还包括迭代输出Next Workset/Update SolutionSet,所述迭代算子IterateOperator还包括迭代输出Next Partial Solution;/n所述迭代输出Next Workset/Update SolutionSet用于存储每一轮迭代时更新的权利要求2所述的工作集WorkSet和解集SolutionSet,作为下一轮迭代的输入;所述迭代输出Next Partial Solu ...
【技术特征摘要】
1.一种基于乐观容错方法的迭代器,其特征在于包括:增量迭代器和批量迭代器;所述增量迭代器由迭代算子DeltaIterateOperator实现,所述批量迭代器由迭代算子IterateOperator实现;
所述迭代算子DeltaIterateOperator和迭代算子IterateOperator共同包括:初始迭代输入IterateInput、迭代函数StepFunction、迭代结果IterationResult、迭代终止条件Termination、乐观的补偿函数CompensateFunction;所述迭代算子DeltaIterateOperator还包括迭代输出NextWorkset/UpdateSolutionSet,所述迭代算子IterateOperator还包括迭代输出NextPartialSolution;
所述迭代输出NextWorkset/UpdateSolutionSet用于存储每一轮迭代时更新的权利要求2所述的工作集WorkSet和解集SolutionSet,作为下一轮迭代的输入;所述迭代输出NextPartialSolution用于在每一轮迭代时更新的权利要求2所述的工作集WorkSet,作为下一轮迭代的输入。
2.根据权利要求1所述的一种基于乐观容错方法的迭代器,其特征在于所述初始迭代输入IterateInput包括:工作集WorkSet和解集SolutionSet,迭代输入的数据来自于数据源DataSource或者来自于上一级算子PreviousOperator的输出。
3.根据权利要求1所述的一种基于乐观容错方法的迭代器,其特征在于所述迭代函数StepFunction包括Map、FlatMap、Reduce、Join、Distinct、Aggregate、Union和Filter算子,根据迭代任务和场景选择其中一种算子作为步函数,用于在迭代过程中更新输入的数据集。
4.根据权利要求1所述的一种基于乐观容错方法的迭代器,其特征在于所述迭代结果IterationResult用于存储迭代终止时的输出,写入到DataSink中。
5.根据权利要求1所述的一种基于乐观容错方法的迭代器,其特征在于所述迭代终止条件Termination包括三种形式:
(1)默认终止条件:空工作集收敛标准EmptyWorkSetConvergenceCriterion;
(2)设置最大迭代次数,在没有其他迭代终止条件时,将在达到设置的最大迭代次数时结束迭代操作;
(3)自定义收敛条件AggregatorConvergence,可以根据需要实现自定义收敛;
所述迭代算子DeltaIterateOperator选择迭代终止条件Termination(1)、(2)、(3)中的任意一种作为终止条件;
所述迭代算子IterateOperator选择迭代终止条件Termination(2)、(3)中的任意一种作...
【专利技术属性】
技术研发人员:郭文鹏,赵宇海,王国仁,季航旭,李博扬,
申请(专利权)人:东北大学,北京理工大学,
类型:发明
国别省市:辽宁;21
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。