一种电网海量数据管理方法_2

文档序号:9350627阅读:来源:国知局
r>[0021]该框架利用Hadoop构建电网用户数据管理系统,在平台上采用HDFS、HBase建立海量数据存储系统,在平台上构建MapReduce并行计算框架和Storm内存并行计算框架作为海量数据计算分析系统,对电网用户的海量数据进行分析。
[0022]其中,数据管理层是对数据进行采集和集成。数据采集包括从智能电表、数据采集监控系统和各种传感器中采集的数据,这些数据不仅包括电网内部的数据,还包括大量相关的数据,这些数据由不同厂商的设备产生,模态千差万别,各单位数据口径不一,形成了海量数据流,加工整合困难。这些数据的集成是指对传统系统的产生的数据迀移至集群服务器,进彳丁尚效的管理。
[0023]平台针对数据集成这一难点采用数据转移工具对数据进行抽取整合工作,将各个独立的系统产生的数据及历史数据利用数据转移工具抽取整合到HBase中。使用java持久化工具对列存储数据库进行操作,将基于分布式计算的应用产生的在线数据写入到HBase中。
[0024]数据分析计算层用于海量数据的存储和计算分析功能。分布式计算层利用Hadoop构建而成,海量数据存储在分布式文件系统HDFS中,利用HBase对数据进行管理。
[0025]该平台利用HBase存储电力负载数据和相关数据,HBase数据库是列为存储单元的,方便对整列数据进行查询,而随后使用的预测算法在学习过程中需要多次对整列数据进行读取计算,对数据的操作需求符合HBase数据存储的特点。
[0026]利用并行计算模块MapReduce对海量数据进行并行批量计算分析,而对数据密集型的迭代计算采用基于内存的并行计算模块Storm。Storm提供了一种内存并行计算框架,框架将业务所需数据读入内存,所需数据时直接从内存中查询,这样比基于磁盘的MapReduce访问数据的速度快,减少了业务的运行时间,也减少了 1操作。
[0027]负载预测是电网规划中的关键环节,是变电站、网架规划重要计算依据,高精度的短期负载预测能够有效降低发电成本,有关键作用。本发明使用一种改进的集成学习方法,以判定树为基本学习单元,包含多个随机子空间方法训练得到的判定树,输入待分类的样本,由各个判定树产生各分类结果,最终的分类结果由各个判定树的结果进行投票决定。可以克服判定树的一些不足,而且具有良好的可扩展性和并行性,能够有效解决海量数据的快速处理问题,针对海量数据环境下的电力负载预测有较好的应用前景。
[0028]整个负载预测过程利用3个MapReduce业务类执行算法的训练过程,每一个MapReduce的输出作为其后一个的输入。训练结束后得到的决策模块保存在Hadoop的分布式集群中,其分为三部分:生成数据字典;生成判定树;形成判定树集合。生成数据字典就是对进行训练的样本数据进行描述,产生一个文件来描述样本中条件属性和决策属性,记录条件属性值的类型和决策属性的位置,以及要创建的模块是进行分类还是回归运算。这个过程由第一个MapReduce完成,每个Map过程读取实验数据的一部分,记录数据的属性类型和负载值或者类型标识。产生的描述文件以键/值的形式存储在Hadoop的文件系统HDFS中,以备随后的MapReduce使用。
[0029]生成判定树过程为整个并行算法的核心,其并行过程其中在以下几方面:1)对原数据集进行随机有放回的抽取K个与原样本数据集大小一样的样本数据TSh2,...,k。因为是有放回的抽取,所以可以并行对原数据集进行抽取,而不会对TS产生影响。一个TS对应一个判定树的训练集,每个TS都不同,并且与原数据集大小一样,这样既保证了各个判定树的不同,又不会失去原数据集的知识规模。
[0030]2)根据样本数据中属性的个数M确定每个节点随机选择的属性个数m(m〈〈M),分类模块中m为M的平方根,回归模块中m为M的1/3。计算m个属性中每个属性的信息量,选择最佳的属性进行分支;
[0031]3)递归的进行节点的建立,生成判定树。K个判定树的生成是并行产生的,一个Map生成一个判定树,实现了算法的并行。这个过程由第二个MapReduce过程完成。此MapReduce只有Map过程没有Reduce过程。
[0032]形成判定树集合也就是把每个判定树分类器组合起来。每个判定树都会产生一个结果,如果判定树集合用来分类其最终结果为投票选取,当它用来回归预测时,K个树会给出K个值,最终值为各树的平均值。此过程由第三个MapReduce完成。
[0033]整个模块是建立在Hadoop的分布式集群上,对海量数据进行分布式存储,利用MapReduce将算法并行,使算样本总集S法能够依托Hadoop集群的存储能力和计算能力对数据的挖掘和计算预测,整个过程都是并行执行的,能够有效提高预测的精度和改善负载预测系统处理海量数据的能力。
[0034]在上述HBase系统的部署架构中,将调度中心作为整个分布式实时数据库的管理者,存储元数据信息,包括各节点分工、节点状态、数据分区方式、数据块位置、任务调度、安全管理等关键信息。调度中心一般部署2台(也可由多台组成),相互间通过同步机制保持元数据的一致性,从而消除了调度中心单点故障造成系统整体功能丧失的风险,同时也为并发请求负载均衡的实现奠定了基础。数据分析计算层用于海量数据的分片存储,同时完成各类计算过程,数据分析计算层的数量仅受限于以太网带宽、机房物理条件等硬性条件。各数据分析计算层逻辑上是对等的,部署相同进程完成同样的逻辑运算,根据调度中心对数据的分区原则,只存储属于相应分区的数据,从而达到分布式存储的目的。考虑到分布式体系架构下节点失效和故障会经常发生,数据分析计算层之间采用基于事务的冗余备份机制,将同一个事务操作同步到另一台或几台数据分析计算层上(取决于可定制的复制因子),在实现数据高可靠性的同时,为数据访问的负载均衡奠定了基础。
[0035]电网用户数据管理系统采用HDFS作为底层存储的分布式文件系统,在此基础之上构建面向电网海量数据的时序控制组件来存储电网业务中的时序数据。由时序控制组件来构建时序数据模块,按照特有模块统一接收存储采集的时序数据,并对外提供统一的查询接口。
[0036]在具体存储方式上,区别于传统关系数据库的行列式的表结构,采用键-值的形式来存储数据,即面向列进行存储,以列族为基本的存储和权限控制单元。对于为空的列,在实际存储中不占用实际空间,使用稀疏表的设计方式。通过这种方式,解决了不同采样周期造成的空间浪费问题。同时在数据架构部署上放弃了传统的C/S多客户端、单服务器的模式。采用分布式的多服务器的集群模式,所有数据根据复制因子分散存储于集群中的多台计算机上来增强数据的存储安全性,提高数据的查询效率。
[0037]时序控制组件底层依赖于列存储数据库。在具体处理时序数据时,可以抽象为对HBase数据库的读、写、增加、删除、修改等基本操作。软件最上层为时序控制组件的客户端及第三方应用客户端。所有客户端通过Java的API进行具体操作。所有API通过类型解析模块可以解析分解为一个数据库操作或多个数据库操作的序列集合。这些数据库操作集合通过控制组件内部的RPC调用,最后统一使用异步的HBase操作API完成数据操作。
[0038]时序数据记录由测量对象、时间戳、测量值、标签4个字段构成。其中,标签由一个或多个键/值对构成,用来进一步描述测量对象信息,测量对象和标签组合为测量项。标签的设计使用户很容易查询到其关心的测量项的值。控制组件使用存储层来存储数据,而存储层是一个键/值结构的分布式文件存储系统。高效地在分布式的存储层中存储时序数据,并用最少的内存/磁盘空间来存储动辄上百亿的数据点,是优秀的存储结构设计时必须解决的关键问题。为此,分布式实时数据库管理层依赖的列式数据库
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1