论文部分内容阅读
为了解决海量数据的分析需求,围绕Hive进行大数据仓库建设并在之上使用HiveQL进行统计分析是业界常用的解决方案。企业通常使用开源数据同步工具Kettle、Sqoop等将业务数据库产生的历史数据、实时增量数据以及历史文件数据同步到Hive仓库中。经过前期的调研与研究,发现开源数据同步工具存在以下问题:a)在历史数据同步任务中开源数据同步工具虽然提供了强大的功能,但操作复杂,使用门槛高;b)实时数据同步任务对线上业务数据库进行I/O操作,影响线上业务数据库性能,延迟高;c)文件数据一般存储在单台物理机器上,可能发生磁盘损坏导致文件丢失的情况,开源数据同步工具创建的文件数据同步任务无法保证客户端文件数据的安全性,同时没有提供方便的了解文件的元数据视图;d)开源数据同步工具孤立、很难和大数据统计分析业务整合到一起。本文针对以上问题构建了一个异构数据同步系统。主要研究内容包括以下四个部分:1)针对在历史数据同步任务中操作复杂,使用门槛高等问题,研究实现了一种基于Spark的历史数据同步子系统;2)针对在实时数据同步任务中存在的对线上业务数据库进行I/O操作,影响线上业务数据库性能,延迟高等问题,研究实现了一种基于Storm的实时数据同步子系统;3)针对文件数据同步任务无法保证客户端文件数据的安全性,同时没有提供方便的了解文件的元数据视图等问题,研究实现了一种基于分布式存储系统HDFS的文件数据同步子系统;4)针对开源数据同步工具孤立、很难和大数据统计分析业务整合等问题,研究实现了一种基于Quartz定时任务的可视化大屏子系统。论文的成果是设计开发了主要包含上述四个子系统的异构数据同步系统,解决了开源数据同步工具的不足,实现了将历史数据、实时增量数据以及历史文件数据同步到Hive仓库中,并实现了对Hive仓库中的数据进行自定义的可视化统计分析,对建设大数据平台数据同步系统有一定的借鉴作用。