论文研究-基于Hadoop的智能电表平台设计与实现 .pdf

所需积分/C币:19 2019-08-15 14:47:16 769KB .PDF
41
收藏 收藏
举报

基于Hadoop的智能电表平台设计与实现,乐璐,李慧,当智能电表得到广泛应用时,电网部门每天都要收集和处理大量用户用电数据。传统的单服务器架构面临着海量数据存储和计算的考验,
国科技论文在线 http:/www.paper.edu.cn reduce函数,对输入的<K2,isV2)>作对应处理,得山输出结果<K3,V3>并输出到HDFS" 2基于 Hadoop的智能电表平台 智能电表平台通过表计基础设施在用户端收集电气数据,存储到分布式存储平台,为用 公共事业单位提供电能信息查询、讣费査询等服务。图2为本半台的系统体系结构图: 客户端 eb报务器 Weh服务器 Hadoop Server Maste 有储及处理是 代理点 数传模块 采集层 智能捶座 监控设备层 图2智能电表平台体系结构 Figure. 2 Architecture of Smart Meter Platform 由图可以看出,本平台分为四个层面: 1.监控设备层:接入电气设备作为被监控对象。 2.采集层:使用JCB1-143单相二三极面板式计量插座采集电能信息,传送给智能电表 代理点,由代理点转发到 Hadoop server 3.有储及处理层:负贲把接收的原始电能效据预处理和冇储,并响应Web服务器发送 的查询请求。 4.Web服务器:负责接收用户输入,向主服务器请求结果,冉输出到浏览器页面。 2.1工作原理和处理流程 从收集到用户的电气数据到客户端响应用户查询请求,可以将智能电表平台的工作划分 为离线处理和在线处理两部分,离线处理为在线处理提供数据和服务。 平台的离线处理是指在客户端接收用户的查询请求之前需要完成的一系列工作,主要包 85括采用表计基础设施采集电能信息,对电能信息的预处理等。离线处理对实时性要求不高, 但工作量很大 平台的在线处理是指用户在客户端输入查询请求后,平台响应用户请求,反馈查询结果 所进行的系列工作,主要包括:接收用户查询条件,请求 Hadoop server Master取响应 信息,把反馈结果通过图表插件 Fusion charts以图表形式展示。在线处理对实时性要求很高, 任务量相对离线处理较少 山国科技论文在线 http:/www.paper.edu.cn 智能电表平台的主要处理流程按照功能可以划分为三大部分,其中数据采集和 Hadoop Server部分负责离线工作, Web server负责在线工作。数据采集负责电气数据的采集, Hadoop Server是整个平台的核心部分,负责电气数据的预处理和存储,为后面的在线查询做好准备, Web server主要负责智能电表平台网站的网站界面,为用户提供一个查询接口,把查询结果 95反馈到网站页面。 22数据采集 因为智能电衣需要釆集用电设备的实吋电压、电沇、功率、累积耗电量等电气信息,同 时需要提供上传的接∏,因此平台采用新型的智能衣计插壓可实现电器连接和计量功能,包 括监测用电器(负载〕的累积用电量、电流、电压、有功能率等信息,液晶显示屏数字化显 100示,停电后保留电能累计值,支持通过无线方式上传采集到的数据 平台采用数传模块IC-DT01作为代理点与数据采集点之间的通信中继点。数据采集模 块通过无线方式把收集的电能信息发送到数传模块,数传模块获得个数据采集点的电能信 息,然后以串口通信协议RS-232将汇总的电能信息上传给数据代理。数据采集点、数传模 块与代理服务器组內方式如图3: 105 图3数据采集点、数传模块与代理服务器组刚方式 Figure 3 Network Mode of Data Acquisition, Wireless Data Collector And Proxy server 数据代理点接收到数传模块上传的电气数据,往原始数据添加所属代理点信息,转发给 110 Hadoop server,交由 Hadoop Server做进一步的预处理和存储等工作。 2.3 Hadoop server 这部分是平台的核心部分,包括两部分工作:离线部分,负责存储所有电能数据,为后 续的查询服务作预处理;在线部分,根据 Web server的查询请求,负责平台数据的整合和 计算。 115 Hadoop server离线部分工作包括两部分:存储收集的电气数据和把电能数据解析成为 类倒排索引的数据形式。类倒排索引是根据智能电表平台存储的是电能数据的特点,修改文 件检索系统常用的倒排索引方法,以插座号作为索引米查找对应的电能信息。这部分工作是 整个系统的重点,对数据作预处理会大大的降低在线查询时的计算时间 Hadoop Server把数据按行以ASCI编码存储,其中每一行是一条记录。下面例子显示 120一行用电数据记录。该行数据被分成很多行以显示每个字段,在实际文件中,这些字段被整 合为一行且没有仟何分隔符。如: 4 国科技论文在线 http:/www.paper.edu.cn 000000100000201104010908070012211200020000026530000002134代表: 00000001 所在代理点编号 00000001 插座编号 125 20110401090807001 ∥数据记录时间:2011-04-0109:08:07.001 22112 电压值:221.12 00022 ∥电流值:0.22 0000002653 实时功率值:26.53 0000002134 ∥累积耗电量为21.34 130 Hadoop Server对数据预处理的其工作流程大概有以下步骤: 1.把接收到的文件采用 Hadoop默认的文件分割方式,将源文件分成若|小文件。 例如: 000000010000000120110401090807001221120002200000026530000002134 000000010000000120110401090808002220120001100000029670000011167 135 000000020000000320110401090807004221020001700000028790000027410 000000020000000320110401090808003221130003200000031440000002011 00000002000000012011040109080700322142000150000002232000000122 2.在Map阶段,对于每个小文件都采用按行切分的方法输入,从每行提取每个插座、 时问和电能信息,并以<代理点号:插座号,时问:电压电流-功率-累积耗电量>将它们作 l40为输出 <1:1,20110401090807:221.12-0.22-26.53-21.34> <1:1,20110401090808220.12-0.11-2967-11.67> <2:3,20110401090807:221.02-0.17-28.79-274.1> 2:3.20110401090808:22113-0.32-31.44-20.11> 145 <2:1,20110401090807:221.42-0.15-22.32-1221> 3.经过分区阶段,从Map输出具有相同的kcy的一对会分到同一个 Reducer,每个 rcducc函数处理相同插座的< ckcy, valuc>对,最终输出为: <1:1,20110401090808:220.12-0.11-29.67-111.67;20110401090807:221.12-0.22-26.53-21.34> <2:3,20110401090807:221.13-0.32-31.44-20.11;20110401090807:221.020.17-28.79274.1;> 150<2:1,20110401090807:221.42-0.15-22.32-1221 Hadoop server离线鄣分工作是响应 Web server请求,调用 MapReduce完成数据的整合 和计算。 2.4 Web server 智能电表平台的Web页面信息查询服务是由部署在 Web server的网站提供的。Web 155 Server主要负责提供用户接口,完成实时地接受用户的査询请求,并将査询计算结果反馈给 用户 Web server基于 Java ee,采用 Tomcat+JSP实现动态网页查询。系统结构遵循MVC模 式设计,分为三个基本部分: Model(模型)、Ⅴiew(视图)和 Controller(控制器)。这 三个部分以最少的耦合协同工作,从而提高应用的可扩展性及可维护性。 Model由 Java bean 160充当,View由JSP贞面充当, Controller由 Servlet充当。 Servlet作为前端控制器,负责接 受客户端发送的请求,在 Servlet中只包含控制逻辑和简咩的前端处理,然后调用后端 Javabean来完成实际的逻辑处坦;最后转发到相应的JSP页面处理显示逻辑。 wε b server匚作沇程是:用户在浏览器输入査询请求,网站前端对用户的输入进行过滤 国科技论文在线 http:/www.paper.edu.cn 性检査,例如查询吋间不合法等等,再向后台程序发送查询请求信息。后台接收到用户在浏 165览器的査询请求,将其父给相应的 Java Servlet容器处理。此时 Java Servlet调用部署在 Hadoop Server对应的Map和 Reduce函数完成相应的操作。 网站有以下四大功能模块: 用户管理:包括修改密码、査询系统现有用户、添加用户、删除用户以及更新用户杈限 等等用户管理功能 170 配質管理:包括杏询现有设备配置信息以及远程控制开关功能。 性能显示:这是平台核心功能之一。提供插座本年、本月、当天、本小时内,任意一天 或者任意时间段内的电能信息。 计费玏能:计算插座仼意吋间段的耗电量以及费用,实现分吋定价功能。用户可以根据 此报告合坦安排自己的用电习惯以达到更好的经济效益 1753实例 在该实例中,我们査询所有插座以组为单位在2011年上半年的总耗电量情况,并根据 不同的计费单价区分。平台读取数据文件的每一行记录,提取在该时间段的电能信息。系统 的运行过程如下: 1.用户在客户端选择所有插座,时间段选择为2011-01-01到2011-06-30 l80 2. Web server接收到客户请求,交由相应的 Servlet向 Hadoop server的 Master节点 提父任务。 Master接收到任务后,将任务分配给每一个 Hadoop Server Slave. 3. Hadoop Server Slave运行map函数,读取位于该节点的数据块(此处数据块在离线 工作时生成),把符合该时段的数据提取,构成新的键值对。再经过Shuc和 Combing过 稈后,运行 reduce函数,将 combine后的键值对,根据组编号和时间信息输屮最终的键值 185对<kev, value。 4. Hadoop Server Master把最终的键值按照 Fusion charts要求的数据格式,把数据以 xml的格式反馈给 Web server 5. Web server把数据以图表的形式展现给用户, 4实验结果 Power Consumption Cost From2011-01-0100:00:00to2011-06-3024:00:00 210 168 57,4 05.78 40 98,47 42.日2 22.56 0 N 00:00-08:0008:00-16:00■16:00-24:00■ Total cost 190 图4各组在2011年上半年各个时间段的耗电量总和及耗电费用 Figurc. 4 thc Powcr Consumption And Cost From 2011-01-01 To 201 1-06-30 of Thrcc Goups 图4显示了在用户输入查询条件为“2011年上半年各时间的耗电费用”时,Web页面 195显示的曲线图。由此可以看出,棊于 Hadoop的智能电表平台能够应对分布式冇储海量数据 国科技论文在线 http:/www.paper.edu.cn 以及具备对数据并行处理的能力。 5结束语 本文设计与实现了基于 Hadoop的智能电表平台,包括电气信息数据的采集、处理、存 储和计算。通过平台对海量的用电数据的处理,证明 Hadoop能够应对海量的薮据存储和处 200理 参考文献( References) [1]刘鹏.实战 Hadoop-J启通向有云计算的捷径[M]北京:电子工业出版社,2011 12]apachc.WclcomctoApacheHadooplol].20ll.http:/hadoop.apachc.or 205[3]朱珠.基于 Hadoop的海量数据处玛模型研究和应用[D].北京:北京郎电人学,2008 [4] CHUCK LAM. Hadoop in Action[M]. the United States of America: Manning Publications, 2010 「5 Tom white. Hadoop权威指南(2版)M周敏奇.北京:清华大学出版社,2011 「6刘腸.云训算[M北京:电子工业出版社,2011 [7]Jason Venner. Pro HadoopLM] the United States of American: Apress, 2009 210 7

...展开详情
试读 7P 论文研究-基于Hadoop的智能电表平台设计与实现 .pdf
立即下载 身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 至尊王者

关注 私信
上传资源赚钱or赚积分
最新推荐
论文研究-基于Hadoop的智能电表平台设计与实现 .pdf 19积分/C币 立即下载
1/7
论文研究-基于Hadoop的智能电表平台设计与实现 .pdf第1页
论文研究-基于Hadoop的智能电表平台设计与实现 .pdf第2页

试读结束, 可继续读1页

19积分/C币 立即下载