论文部分内容阅读
随着各个行业数据量爆炸式的增长,信息技术已进入大数据时代。由于大数据分析应用问题种类繁多,大数据计算模式呈现出多样化的特点,包括数据转换、查询分析、机器学习、图计算等。同时,现实世界中一个复杂的行业大数据分析应用具有综合性计算的特点,需要同时混合使用多种计算模式。然而,没有任何一个大数据计算平台能够很好地支持所有的计算模式,每个大数据计算平台具有各自的适用场景以及适用计算模式。因此,为了满足综合性大数据分析应用的需求,往往需要在同一个分析应用中混合使用多个不同的大数据计算平台,从而实现跨平台的数据分析。近年来,跨平台的数据分析得到了越来越多的关注,与此同时,实现高效的跨平台数据迁移也成为了亟待解决的问题。一方面,为了实现跨平台数据迁移的高效性,数据迁移系统需要支持统一数据交换格式和流式数据迁移。另一方面,为了能够高效地支持大数据分布式并行计算,数据迁移系统也应当采用分布式架构设计,并支持分布式并行计算场景下的负载均衡和数据容错。然而,现有的数据迁移工作还不能完全满足这些要求。针对上述应用需求和问题背景,本文研究设计了面向大数据分析的跨平台分布式的流式数据迁移系统Crossroad,能够同时满足上述的数据迁移要求。本文的主要研究工作和贡献点如下:(1)在分析数据交换格式对跨平台数据迁移性能影响的基础上,研究使用高效的统一数据交换格式,降低跨平台迁移时的数据格式转换开销。(2)研究提出一种基于文件队列的流式数据迁移方法,该方法可以以流水线的方式同时实现数据导出和导入,不仅提高了数据迁移效率,同时也解决了数据容错的问题。(3)研究解决分布式场景下实现流式数据迁移面临的基本问题,包括实现数据流高效转发的路由机制、支持负载均衡的数据shuffle机制以及文件队列中Batch的动态调整机制。(4)在上述关键技术研究基础上,设计实现跨平台流式数据迁移原型系统Crossroad。Crossroad使用主从式的分布式架构以支撑分布式场景下的数据迁移。实验结果表明,Crossroad能够有效降低跨平台数据迁移的时间开销,显著提高大数据混合分析计算的效率。