论文部分内容阅读
随着城市化进程的加快,建筑能耗呈急剧上升的趋势,建筑节能研究已成为我国节能减排工作的重点。近年来大数据相关技术和物联网技术的发展,为建筑节能提供了数据支撑。利用这些技术进行采集、存储、分析建筑能耗数据,可反映建筑运行状况,发现建筑用能规律,从而实现建筑能源的高效使用。智能电表的普及和用能信息采集系统的发展,建筑能耗信息数据量越来越大,使得传统的关系型数据库对建筑能耗数据进行存储、查询和处理已出现性能上的瓶颈,同时也难以满足大数据时代各种各样的新需求。本文的研究围绕基于Hadoop的建筑能耗大数据存储分析平台展开,主要工作内容如下:(1)设计了一种针对建筑能耗大数据存储分析平台的三层架构。研究了如今主流大数据平台架构,依据Lambda架构对平台进行设计。在批处理层中,HDFS提供底层数据存储服务,MapReduce与Spark提供离线计算服务。将Spark的运行模式配置为Spark on YARN模式,使用YARN对集群计算服务进行统一调度与计算资源管理,解决了 Spark Standalone模式下只支持简单且固定的资源分配策略问题。在实时处理层中,将Spark Streaming与Kafka进行了整合,可用于能耗预测、能耗报警等流式应用。在服务层中,HBase与Hive提供数据查询分析服务,并将Hive配置为支持Hive on MR与Hive on Spark的双计算引擎模式,供用户根据计算需求进行切换。(2)设计了一种基于YARN资源调度器的作业数调节方法。该方法可在集群运行状态下动态地对MR作业数进行调节,省去人工调整参数的过程。测试结果表明,在YARN分别配置为容量调度器和公平调度器的情况下使用该方法,相比默认配置,MR作业完成时间分别减少53%和14%左右。(3)提出了一种通用的RDD权重计算模型,表示对应的RDD执行检查点操作的重要程度。并设计了一种Spark自动化检查点设置方法,省去了开发人员依赖经验选择检查点时机和检查点数据的过程。测试结果表明,Spark自动化检查点设置方法能够提升Spark应用程序的恢复效率。