论文部分内容阅读
随着互联网技术的快速发展,信息化程度的提高,很多企业数据库的数据量已经从TB级达到PB级。将这些静态的海量数据利用起来,从中挖掘出有用的知识能够很大的程度上增强企业的竞争力。 本文的研究以《学科评估信息系统》统计分析模块的需求和应用为基础。当对统计分析进行建模时,多个用户需要反复并发访问Oracle数据库。而学科评估系统数据量越来越大,Oracle由于内存、IO、CPU等资源有限,当处理大数据量的并发请求时响应时间较长,极大的影响了统计分析的效率。 针对以上问题,提出了基于Hadoop/Hive架构的分布式存储和并行计算思想方法。通过对统计分析模块各应用模式进行分析调研,总结出整体汇总、最值、排序、模糊查询、表连接、分组对比六种应用模式;将Hive与传统关系型数据库进行对比并对Hive的数据倾斜、性能调优等关键问题进行研究;在各应用模式下,利用Sqoop将所涉及到的Oracle中的数据表导入到Hive中,编写并执行相应的SQL语句以及HiveQL脚本,统计、对比分析Oracle与Hive的性能,分析Hive在统计分析方面的优势和劣势;最后研究了Hadoop不同节点数以及不同Map Task数对Hive性能的影响。 实验结果表明,在各应用模式下,当数据量或者并发量较小时,Oracle性能要优于Hive;除了排序,当数据量、并发量逐渐增大时,Hive与Oracle的性能差距逐渐缩小,进而优于Oracle。最后,将基于Hadoop/Hive架构的分布式存储与并行计算方案进行实际部署,达到了提高统计分析效率的目的,进一步验证了Hive应用于评估系统统计分析的可行性。