配用电多源异构数据的混合存储方法和系统与流程

文档序号:12271518阅读:371来源:国知局
配用电多源异构数据的混合存储方法和系统与流程

本发明涉及电力技术领域,特别是涉及一种配用电多源异构数据的混合存储方法和系统。



背景技术:

随着智能电网建设和物联网的应用,非结构化数据、海量时序数据呈现出快速增长的趋势。然而,传统的关系数据库的存储与计算形式已经难以满足如电力电表PB(petabyte,一存储单位)量级的数据储存、实时查询与高性能计算需求。

Hadoop架构是目前大数据领域最主流的存储计算方案,它大大优化了分析环境,并能提供准确快速的报表和跨领域的业务驱动因素和关键指标的动态发现等特性。Hadoop架构在电力大数据应用中也被广泛采用,如田纳西河流域管理局(TVA)的智能电网项目,日本Kyushu电力公司海量电力用户消费数据分析等。

Hadoop体系架构虽然存在诸多普遍认可的优势,但同时也存在分布式文件系统不能直接在现有普通操作系统上挂载,不易与现在系统进行交互的缺陷。所以Hadoop系统并不能完全取代电力系统现有成熟的小量级关系数据库在数据读取计算上的便捷性优势,如电力设备台帐信息、电网拓扑结构、电力客户信息数据、账单数据等。如何在实现对海量的配用电多源数据存储的同时,保证在读取计算上的便捷性成为了一个亟待解决的技术问题。



技术实现要素:

本发明的目的在于提供一种配用电多源异构数据的混合存储方法和系统,可以在实现对海量的配用电多源数据存储的同时,保证在读取计算上的便捷性。

本发明的目的通过如下技术方案实现:

一种配用电多源异构数据的混合存储方法,包括:

根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型;

根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式;

根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据;

根据所述目标配用电数据源中的配用电数据的数据存储方式存储已抽取的配用电数据;

对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,将所述清洗转换结果存储在Oracle数据库中。

一种配用电多源异构数据的混合存储系统,包括:

类型判定单元,用于根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型;

方式判定单元,用于根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式;

抽取单元,用于根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据;

存储单元,用于根据所述目标配用电数据源中的配用电数据的数据存储方式存储已抽取的配用电数据;

处理单元,用于对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,将所述清洗转换结果存储在Oracle数据库中。

根据上述本发明的方案,其是根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型,根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式,根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据,根据所述目标配用电数据源中的配用电数据的数据存储方式存储已抽取的配用电数据,对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,将所述清洗转换结果存储在Oracle数据库中;本发明方案中,由于基于目标配用电数据源判定数据类型,并基于该数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式,再根据该数据抽取方式和数据存储方式进行所述目标配用电数据源中的配用电数据的抽取和存储,这样,各种配用电数据源中的都可以采用对应的数据抽取方式和数据存储方式进行数据抽取和存储,可以实现对海量的配用电多源异构数据的分布式存储,同时,还由于对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,并将所述清洗转换结果存储在Oracle数据库中,这样,在经过数据清洗转换可以明显减少各种配用电数据源的配用电数据的数据量,而Oracle数据库对相对小数据量级别的数据具有明显的读取、查询、计算的优势,因此,本发明的方案可以在实现对海量的配用电多源数据存储的同时,保证在读取计算上的便捷性。

附图说明

图1为本发明实施例一的配用电多源异构数据的混合存储方法的实现流程示意图;

图2为本发明实施例一的配用电多源异构数据的混合存储架构图;

图3为本发明实施例二的配用电多源异构数据的混合存储系统的组成结构示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。

实施例一

本发明实施例一提供一种配用电多源异构数据的混合存储方法。参见图1所示,为本发明实施例一的配用电多源异构数据的混合存储方法的实现流程示意图。如图1所示,本实施例的配用电多源异构数据的混合存储方法包括如下步骤:

步骤S101:根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型;

具体地,首先确定当前需要获取的配用电数据来自哪个配用电数据源,即确定目标配用电数据,然后根据预先建立的配用电数据源与数据类型的对应关系确定所述目标配用电数据源中的配用电数据的数据类型。

其中,配用电数据主要涉及三种类型,分别是结构化数据、非结构化数据和半结构化数据,而结构化数据又包括时间序列数据和关系型数据,在本实施例中,是将非结构化数据和半结构化数据归为一种类型的数据,而时间序列数据和关系型数据分别对应一种类型的数据;

每个配用电数据源中的配用电数据的数据类型是由对应的配用电数据源中的配用电数据的数据格式确定的。

步骤S102:根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式;

具体地,可以根据预先建立的数据类型与数据抽取方式的关联关系确定所述目标配用电数据源中的配用电数据的数据类型对应的数据抽取方式,根据预先建立的数据类型与数据存储方式的关联关系确定所述目标配用电数据源中的配用电数据的数据类型对应的数据存储方式。

步骤S103:根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据;

步骤S104:根据所述目标配用电数据源中的配用电数据的数据存储方式存储已抽取的配用电数据;

基于上述步骤S101-S104可以实现对各种配用电数据源中的配用电数据的抽出与存储。

步骤S105:对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,将所述清洗转换结果存储在Oracle数据库中;

具体地,可以根据应用对数据需求的不同预先定制清洗规则,对已存储的各种配用电数据源的配用电数据(在此称为原始数据)利用对应的清洗规则进行转换,得到清洗转换后的数据,即清洗转换结果,将将所述清洗转换结果存储在Oracle数据库中。

这里,所述数据清洗转换可以包括数据汇总、数据分离、数据合并、数据融合和非结构化转换中的任意一种或者任意多种的组合。数据汇总、数据分离、数据合并、数据融合和非结构化转换均可以采用任意可以实现的方式,在此不予赘述。

据此,根据上述本实施例的方案,其是根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型,根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式,根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据,根据所述目标配用电数据源中的配用电数据的数据存储方式存储已抽取的配用电数据,对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,将所述清洗转换结果存储在Oracle数据库中;本发明方案中,由于基于目标配用电数据源判定数据类型,并基于该数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式,再根据该数据抽取方式和数据存储方式进行所述目标配用电数据源中的配用电数据的抽取和存储,这样,各种配用电数据源中的都可以采用对应的数据抽取方式和数据存储方式进行数据抽取和存储,可以实现对海量的配用电多源异构数据的分布式存储,同时,还由于对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,并将所述清洗转换结果存储在Oracle数据库中,这样,在经过数据清洗转换可以明显减少各种配用电数据源的配用电数据的数据量,而Oracle数据库对相对小数据量级别的数据具有明显的读取、查询、计算的优势,因此,本实施例的方案可以在实现对海量的配用电多源数据存储的同时,保证在读取计算上的便捷性。

在其中一个实施例中,所述根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型可以包括:在所述目标配用电数据源为计量自动化系统、配网自动化系统或者调度自动化系统时,判定所述目标配用电数据源中的配用电数据为时间序列数据,也就是说,计量自动化系统、配网自动化系统和调度自动化系统中的配用电数据的数据类型为结构化数据中的时间序列数据;在所述目标配用电数据源为营销系统、生产系统、GIS(Geographic Information System,地理信息系统)系统、气象系统或者经济系统时,判定所述目标配用电数据源中的配用电数据为关系型数据,也就是说,营销系统、生产系统、GIS系统、气象系统和经济系统等系统中的配用电数据的数据类型为结构化数据中的关系型数据;在所述目标配用电数据源为95598系统(电网网上缴费系统)、移动作业表单系统、渠道平台语音系统或者合同文件系统时,判定所述目标配用电数据源中的配用电数据为结构化数据或者半结构化数据,也就是说,95598系统、移动作业表单系统、渠道平台语音系统和合同文件系统等系统中的配用电数据的数据类型为结构化数据或者半结构化数据。

这里,计量自动化系统、配网自动化系统和调度自动化系统、营销系统、生产系统、GIS系统、气象系统、经济系统、95598系统、移动作业表单系统、渠道平台语音系统和合同文件系统等系统均是电力领域的常用系统,为了节约篇幅,在此不一一赘述。

在其中一个实施例中,根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式的过程可以包括:在所述目标配用电数据源中的配用电数据为时间序列数据时,确定所述目标配用电数据源中的配用电数据的数据抽取方式为采用Sqoop工具抽取,确定所述目标配用电数据源中的配用电数据的数据存储方式为基于Hbase存储;在所述目标配用电数据源中的配用电数据为关系型数据时,确定所述目标配用电数据源中的配用电数据的数据抽取方式为采用Flume NG工具抽取,确定所述目标配用电数据源中的配用电数据的数据存储方式为基于Hive存储;在所述目标配用电数据源中的配用电数据为结构化数据或者半结构化数据时,确定所述目标配用电数据源中的配用电数据的数据抽取方式为采用Kettle工具抽取,确定所述目标配用电数据源中的配用电数据的数据存储方式为基于HDFS存储。

其中,Hive是存放对事务性要求比较高的数据的关系数据库,如电网模型和交易数据等;Hbase用于存放大记录型的数据,例如一般的图片和文档;Hdfs用于存放巨大的文件,如视频数据或经过打包的文件数据等。

采用本实施例方案,可以对不同的数据源使用不同的抽取工具(ETL工具,Extract-Transform-Load),实现了对抽取工具的灵活配置。大数据基础平台支持的抽取工具包括Sqoop、Flume NG、Kettle等,即支持多种数据汇集方式。

此外,根据需要也可以进行定制化的数据抽取,具体地,对常用抽取工具无法满足数据抽取要求的情况,可以采用自定义抽取方式,以实现特殊要求的数据汇集。数据汇集功能是大数据基础能力的重要体现之一,直接关系到能否充分保障应用对数据的需求,而数据抽取效率是确保数据汇集及时性的关键,通过使用上述数据抽取工具(Sqoop、Flume NG、Kettle),抽取效率将保障稳定在每秒万条级,抽取失败率低于5%。在提高抽取效率的同时,稳步提高数据质量,加强容错功能建设。

同时,采用本实施例中的方案,将配用电海量时间序列数据存储在Hbase(即上述的基于Hbase存储),结构简单,适合超高量级写入场景,符合配用电海量时间序列数据特征,同时无无缝集成hadoop的map reduce job功能。例如,每日有好几个TB的新增数据,可以用map reduce(编程模型)实现当日海量数据的高效聚合运算(简单的像:distinct count,sum,avg等等),并且把运算结果写回到hbase供查询使用。将配用电非结构化数据(如95598音频、知识库文档)等数据直接存储于Hdfs(即上述的基于Hdfs存储)。非结构化文件存储的时候需要指定存储的路径,而Hdfs本身就是一个文件系统,在使用的时候其实不用关心具体的文件是存储在哪个节点上的,也可以通过API(Application Program Interface,应用程序接口)来实现查询。将二维关系型数据存储于Hive(即上述的基于Hive存储),开发人员无需理会数据存储底层信息,对外上层直接暴露于二维表结构,和关系库操作类似,方便于SQL(Structured Query Language,结构化查询语言)直接操作,方便于开发。此外,将分布式算法计算结果数据、统计类数据信息、非结构化融合数据信息和元数据信息存储于Oracle数据库,可以便于上层构建web应用。

另外,为了确保数据的连续性和一致性,在其中一个实施例中,本发明的配用电多源异构数据的混合存储方法还可以包括:在根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据后,检测本次抽取未抽出成功的配用电数据,在下次进行从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据时,重新抽取本次抽取未抽出成功的配用电数据。

为了便于理解本发明方案,以下参照图2对本发明方案进行阐述。

如图2所示,在数据抽取和数据存储层面,计量自动化系统、配网自动化系统和调度自动化系统等系统中的配用电数据为时间序列数据,对时间序列数据采用Sqoop工具进行数据抽取,并将抽取到的数据存储在分布式存储架构中的Hbase中;营销系统、生产系统、GIS系统、气象系统和经济系统等系统中的配用电数据为关系型数据,对关系型数据采用Flume NG工具进行数据抽取,并将抽取到的数据存储在分布式存储架构中的Hive中;95598系统、移动作业表单系统、渠道平台语音系统和合同文件系统等系统中的配用电数据为结构化数据或者半结构化数据,对结构化数据和半结构化数据采用Kettle工具进行数据抽取,并将抽取到的数据存储在分布式存储结构中的Hdfs中。

如图2所示,在数据清洗转换层面,可以对分布式存储结构中存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果。其中,数据清洗转换包括数据汇总、数据分离、数据合并、数据融合和非结构化转换。在数据应用层面,将所述清洗转换结果存储在Oracle数据库中。

实施例二

根据上述实施例一中的配用电多源异构数据的混合存储方法,本发明实施例二提供一种配用电多源异构数据的混合存储系统。图3为本发明实施例二的配用电多源异构数据的混合存储系统的组成结构示意图。如图3所示,本实施例二的配用电多源异构数据的混合存储系统包括类型判定单元201、方式判定单元202、抽取单元203、存储单元204和处理单元205,其中:

类型判定单元201,用于根据目标配用电数据源判定所述目标配用电数据源中的配用电数据的数据类型;

方式判定单元202,用于根据所述目标配用电数据源中的配用电数据的数据类型确定所述目标配用电数据源中的配用电数据的数据抽取方式和数据存储方式;

抽取单元203,用于根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据;

存储单元204,用于根据所述目标配用电数据源中的配用电数据的数据存储方式存储已抽取的配用电数据;

处理单元205,用于对已存储的各种配用电数据源的配用电数据进行数据清洗转换获得清洗转换结果,将所述清洗转换结果存储在Oracle数据库中。

在其中一个实施例中,类型判定单元201可以在所述目标配用电数据源为计量自动化系统、配网自动化系统或者调度自动化系统时,判定所述目标配用电数据源中的配用电数据为时间序列数据,在所述目标配用电数据源为营销系统、生产系统、GIS系统、气象系统或者经济系统时,判定所述目标配用电数据源中的配用电数据为关系型数据,在所述目标配用电数据源为95598系统、移动作业表单系统、渠道平台语音系统或者合同文件系统时,判定所述目标配用电数据源中的配用电数据为结构化数据或者半结构化数据。

在其中一个实施例中,方式判定单元202可以在所述目标配用电数据源中的配用电数据为时间序列数据时,确定所述目标配用电数据源中的配用电数据的数据抽取方式为采用Sqoop工具抽取,确定所述目标配用电数据源中的配用电数据的数据存储方式为基于Hbase存储,在所述目标配用电数据源中的配用电数据为关系型数据时,确定所述目标配用电数据源中的配用电数据的数据抽取方式为采用Flume NG工具抽取,确定所述目标配用电数据源中的配用电数据的数据存储方式为基于Hive存储,所述目标配用电数据源中的配用电数据为结构化数据或者半结构化数据时,确定所述目标配用电数据源中的配用电数据的数据抽取方式为采用Kettle工具抽取,确定所述目标配用电数据源中的配用电数据的数据存储方式为基于HDFS存储。

在其中一个实施例中,所述数据清洗转换可以包括数据汇总、数据分离、数据合并、数据融合和非结构化转换中的任意一种或者任意多种的组合。

在其中一个实施例中,抽取单元203还可以用于在根据所述目标配用电数据源中的配用电数据的数据抽取方式从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据后,检测本次抽取未抽出成功的配用电数据,在下次进行从所述目标配用电数据源中抽取所述目标配用电数据源中的配用电数据时,重新抽取本次抽取未抽出成功的配用电数据。

本发明实施例提供的配用电多源异构数据的混合存储系统,需要指出的是:以上对于配用电多源异构数据的混合存储系统的描述,与上述实施例的配用电多源异构数据的混合存储方法的描述是类似的,并且具有上述实施例的配用电多源异构数据的混合存储方法的有益效果,为节约篇幅,不再赘述;因此,以上对本发明实施例提供的配用电多源异构数据的混合存储系统中未披露的技术细节,请参照上述实施例的提供的配用电多源异构数据的混合存储方法的描述。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1