掌桥专利:专业的专利平台
掌桥专利
首页

一种基于HBase的数据存储优化方法及系统

文献发布时间:2023-06-19 11:35:49


一种基于HBase的数据存储优化方法及系统

技术领域

本申请涉及数据处理技术领域,尤其涉及一种基于HBase的数据存储优化方法及系统。

背景技术

电力数据中台中业务数据随着电网业务的发展不断积累,并形成了常态化的数据监测和数据分析业务体系,依托设备明细负荷数据及运营效率等计算指标,在业务实际操作过程中,电力系统的数据中台实现按业务数据需求从各业务系统中离线、准实时、实时地进行数据的采集、存储何交换,并以总部、省、地市三级横向协同、纵向贯通的运营管控体系,实现了经营绩效、管理效率、运营效率等监测业务的常态化运行,为发展规划、电网运行等提供相关决策支撑。

在这一过程中有大量的业务数据及非业务数据写入数据中台相关数据库中,同时采用全量接入+周期抽取的方式进行数据的抽取及存储,以满足业务系统数据接入及后续数据分析的基本要求。

目前电力数据中台中业务数据,通过全量接入+周期抽取的方式将数据抽取存储至相关数据库中。在这一过程中,由于省侧数据清洗规则及数据质量核查不规范,导致接入数据中存在数据缺失的问题,例如,业务数据表中某些字段数据大量缺失。这些等待修改补充的数据表在反馈至省侧之前会堆积在数据库中,大量占用数据库的存储空间,降低数据的查询效率,并且不能实时进行数据填补,只能等待省侧修改后进行表级别的数据更新,这显然不利于中台业务数据的快速转换。

如图1所示,存在部分数据的缺失,而由于传统数据库存储方式的关系,缺失字段仍会占据相关数据存储空间,这就造成了数据中台大量存储空间被白白占用。

此外,用于业务数据过程中,源表一般为宽表,有着大量的数据字段,而对应业务分析过程中所需要的数据字段较少,因此在表数据更新或分析过程中会涉及大量的字段数据查询及修改,同时产生较大的小表,这也会降低业务数据存储分析的效率。

发明内容

本申请的目的在于提供一种基于HBase的数据存储优化方法及系统,该方法实现了电力数据中台业务数据存储过程的优化,在保证数据安全、可靠、及一致的前提下,完成业务数据的灵活存储,减少了缺失数据对存储空间资源的占用。

为达到上述目的,本申请提供一种基于HBase的数据存储优化方法,该方法包括如下步骤:

预先构建电力数据采集风险评估模型;

根据风险评估模型判断是否允许采集电力数据,若是,则采集电力数据,否则,禁止采集电力数据;

将采集的电力数据作为待存储数据上传至HBase开源数据库;

根据需求数据的特点,对待存储数据进行分析,获取其中需求字段数据和缺失字段数据,并反馈缺失字段数据;

将需求字段数据按照列式存储方式存储至中台;

依据缺失字段数据,通过列动态扩展的方式对中台存储的数据进行补充;

其中,根据风险评估模型判断是否允许采集电力数据的方法包括:

采集系统运行特征数据和电力数据采集装置运行特征数据,并输入风险评估模型;

风险评估模型根据系统运行特征数据和电力数据采集装置运行特征数据,计算采集数据异常风险评估值;

在采集数据异常风险评估值低于预设阈值时,采集电力数据,否则,禁止采集电力数据。

如上的,其中,电力数据上传过程中,依据预先设定的核查规则,进行数据质量分析核查,以获取上传数据中对应字段的空值数据量。

如上的,其中,待存储数据具有多个属性分量,属性分量包括:行键、时间戳、列簇和列限定符。

如上的,其中,将需求字段数据按照列式存储方式存储至中台的方法包括:设定各需求业务字段对应的列,依据各需求业务字段对应的列,将需求字段数据按照列式存储方式存储至中台。

如上的,其中,需求字段数据按照列式存储方式存储至中台的业务数据表中,所述业务数据表具有行和列,每一行代表一个数据对象,每一行都包括一个行键,以及一个或多个列。

如上的,其中,采集系统运行特征数据的方法为:采集一段时间内的电力系统运行特征数据,电力系统运行特征数据包括:电压、电流、频率偏差值、振荡和调度负荷。

如上的,其中,电力数据采集装置运行特征数据包括:工作电流、工作电压和工作频率。

如上的,其中,根据系统运行特征数据和电力数据采集装置运行特征数据,计算采集数据异常风险评估值包括如下子步骤:

根据电力系统运行特征数据,计算电力系统异常值;

根据电力数据采集装置运行特征数据,计算电力数据采集装置异常值;

根据电力系统异常值和电力数据采集装置的异常值,计算采集数据异常风险评估值。

如上的,其中,采集数据异常风险评估值的计算公式如下:

其中,F

本申请还提供一种基于HBase的数据存储优化系统,该系统包括:

异常特征数据采集装置,用于采集系统运行特征数据和电力数据采集装置运行特征数据;

数据处理器,用于根据系统运行特征数据和电力数据采集装置运行特征数据,计算采集数据异常风险评估值;

电力数据采集装置,用于在采集数据异常风险评估值低于预设阈值时,采集电力数据,否则,禁止采集电力数据;

数据传输模块,用于将采集的电力数据作为待存储数据上传至HBase开源数据库;

获取模块,用于根据需求数据的特点,对待存储数据进行分析,获取其中需求字段数据和缺失字段数据,并反馈缺失字段数据;

数据存储模块,用于将需求字段数据按照列式存储方式存储至中台;

数据补充模块,用于依据缺失字段数据,通过列动态扩展的方式对中台存储的数据进行补充。

本申请实现的有益效果如下:

(1)本申请实现了电力数据中台业务数据存储过程的优化,在保证数据安全、可靠、及一致的前提下,完成业务数据的灵活存储,减少了缺失数据对存储空间资源的占用。

(2)本申请通过引入HBase(开源数据库)相关组件,将业务数据的行式存储改为列式存储,通过设置列族及动态扩展列的方式存储数据,对于业务数据表中大量缺失的数据字段,通过列簇式存储的特性实现缺失字段数据存储空间上的压缩,减少对存储空间的占用。此外,可以提高数据查询的效率。

(3)本申请对电力系统的异常情况和电力数据采集装置的异常风险进行评估,进而判断是否能采集电力数据,保证电力系统和电力数据采集装置在正常的情况下采集数据,提高采集数据的可靠性和准确度。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域技术人员来讲,还可以根据这些附图获得其他的附图。

图1为传统数据库存储方式的示意图。

图2为本申请实施例的中台的实际物理存储结构示意图。

图3为本申请实施例的一种基于HBase的数据存储优化方法流程图。

图4为本申请实施例的根据系统运行特征数据和电力数据采集装置运行特征数据,计算采集数据异常风险评估值的方法流程图。

图5为本申请实施例的一种基于HBase的数据存储优化系统结构示意图。

图6为本申请实施例的一种基于HBase的数据存储优化方法流程图。

附图标记:10-异常特征数据采集装置;20-数据处理器;30-电力数据采集装置;40-数据传输模块;50-获取模块;60-数据存储模块;70-数据补充模块;100-数据存储优化系统。

具体实施方式

下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

实施例一

如图3和6所示,本申请提供一种基于HBase的数据存储优化方法,该方法包括如下步骤:

步骤S1,预先构建电力数据采集风险评估模型。

其中,预先构建电力数据采集风险评估模型的方法为:

构建采集数据异常风险评估值计算模块,用于计算电力系统异常值、采集数据异常风险评估值和电力数据采集装置异常值。

构建判断模块,用于判断在采集数据异常风险评估值是否低于预设阈值。

步骤S2,根据风险评估模型判断是否允许采集电力数据,若是,则采集电力数据,否则,禁止采集电力数据;

其中,根据风险评估模型判断是否允许采集电力数据的方法包括:

步骤S210,采集系统运行特征数据和电力数据采集装置运行特征数据,并输入风险评估模型。

具体的,采集电力系统运行特征数据和电力数据采集装置运行特征数据。

具体的,采集一段时间内的电力系统运行特征数据,电力系统运行特征数据包括:电压、电流、频率偏差值、振荡、调度负荷等。

电力数据采集装置运行特征数据包括:工作电流、工作电压、工作频率等。

步骤S220,风险评估模型根据系统运行特征数据和电力数据采集装置运行特征数据,计算采集数据异常风险评估值。

如图4所示,步骤S220包括如下子步骤:

步骤S221,根据电力系统运行特征数据,计算电力系统异常值。

具体的,电力系统异常值的计算公式如下:

其中,H

步骤S222,根据电力数据采集装置运行特征数据,计算电力数据采集装置异常值。

具体的,电力数据采集装置异常值的计算公式如下:

其中,H

步骤S223,根据电力系统异常值和电力数据采集装置的异常值,计算采集数据异常风险评估值。

具体的,采集数据异常风险评估值的计算公式如下:

其中,F

导致采集电力数据异常的原因有很多,例如:电力系统异常和采集装置异常,其中电力系统异常包括:无电压/电流、电流不平稳、电流不平衡等情况;采集数据装置异常则会导致误报数据较多。因此,需要对电力系统的异常情况和电力数据采集装置的异常风险进行评估,进而判断是否能采集电力数据,保证电力系统和电力数据采集装置在正常的情况下采集数据,提高采集数据的可靠性和准确度。

步骤S230,在采集数据异常风险评估值低于预设阈值时,采集电力数据,否则,禁止采集电力数据。

步骤S3,将采集的电力数据作为待存储数据上传至HBase开源数据库。

具体的,在采集数据异常风险评估值低于预设阈值时采集电力数据,将采集的电力数据(例如:省侧电力数据)上传至开源数据库。电力数据上传过程中,依据预先设定的核查规则,进行数据质量分析核查,以获取上传数据中对应字段的空值数据量。

作为本发明的具体实施例将采集的省侧电力数据上传至开源数据库。

HBase(HBase是一个分布式的、面向列的开源数据库)是建立在HDFS(分布式文件系统)之上,提供高可靠性、高性能、列存储、可伸缩、实时读写NoSQL(非关系型的数据库)的数据库系统,在设计上采用了面向列簇的存储和权限控制,通过列簇进行独立检索,由于其设计特定,空(null)列并不占用存储空间,表可以设计的非常稀疏。HBase 的能够在它的数据库上实时运行,而不是运行MapReduce(一种编程模型,用于大规模数据集的并行运算)任务。

HBase 被分区为表格,表格又被进一步分割为列簇。列簇必须使用schema(数据库对象的集合,所谓的数据库对象也就是常说的表,索引,视图,存储过程等) 定义,列簇将某一类型列集合起来(列不要求schema定义)。例如 “message”列簇可能包含:“to”,“from”,“date”,“subject”和“body”。而每一个Key-Value对在HBase中被定义为一个Cell,每一个Key由RowKey、列簇、列和时间戳组成。在HBase 中,行是Key-Value映射的集合,这个映射通过RowKey来唯一标识。由于HBase利用Hadoop的基础设施,可以利用通用的设备进行水平的扩展。

基于HBase的存储方式,业务数据被存储在表中,每张业务数据表具有行和列,是一个多维的映射结构。在表里面,每一行代表着一个数据对象。每一行都是由一个行键(RowKey)和一个或者多个列组成的,行键是行的唯一标识,因此可以通过单个行键获取单行数据;通过一个行键的区间来访问给定区间的多行数据及全表扫描的方式获取数据。

作为本发明的具体实施例,待存储数据具有多个属性分量,属性分量包括:行键、时间戳、列簇和列限定符。

其中,属性分量中的行键、列族和列限定符一起标识一个单元,存储在单元里的数据称为单元数据,以二进制字节来存储。列由列族和列限定符联合标识。表中所有的列都需要组织在列族里面。列族一旦确定后,就不能轻易修改,因为它会影响到 HBase真实的物理存储结构,但是列族中的列限定符及其对应的值可以动态增删。

步骤S4,根据需求数据的特点,对待存储数据进行分析,获取其中需求字段数据和缺失字段数据,并反馈缺失字段数据。

具体的,根据需求数据的属性分量特点,对采集的电力数据进行分析,获取其中需求字段数据和缺失字段数据,并反馈缺失字段数据,获取缺失字段数据的方法如下:比较采集数据字段与业务需求字段的属性分量的一致性,若不一致,则存在缺失字段数据;若一致,则为需求字段数据。

步骤S5,将需求字段数据按照列式存储方式存储至中台。

具体的,设定各需求业务字段对应的列,依据设定各需求业务字段对应的列,将需求字段数据按照列式存储方式存储至中台。

如图2所示,为中台的实际物理存储结构示意图,图2存储方式中并不存在空值的现象,这是由于列存储的特性,即保存列的连续性。这说明,通过这种存储方式,可以避免当上传的业务数据表中具有大量空值数据或非当前业务需求数据时,可以避免大量无关数据占用存储空间的问题。当数据进行更新或者补充时,通过更新RowKey对应列族的数据即可完成表数据更新,降低了全表数据更新的代价。

步骤S6,依据缺失字段数据,通过列动态扩展的方式对中台存储的数据进行补充。

基于HBase,根据缺失字段数据,对中台数据的列族中的列限定符及其对应的值进行动态增补。

实施例二

如图5所示,一种基于HBase的数据存储优化系统100,该系统包括:

异常特征数据采集装置10,用于采集系统运行特征数据和电力数据采集装置运行特征数据;

数据处理器20,用于根据系统运行特征数据和电力数据采集装置运行特征数据,计算采集数据异常风险评估值;

电力数据采集装置30,用于在采集数据异常风险评估值低于预设阈值时,采集电力数据,否则,禁止采集电力数据;

数据传输模块40,用于将采集的电力数据作为待存储数据上传至HBase开源数据库;

获取模块50,用于根据需求数据的特点,对待存储数据进行分析,获取其中需求字段数据和缺失字段数据,并反馈缺失字段数据;

数据存储模块60,用于将需求字段数据按照列式存储方式存储至中台;

数据补充模块70,用于依据缺失字段数据,通过列动态扩展的方式对中台存储的数据进行补充。

本申请实现的有益效果如下:

(1)本申请实现了电力数据中台业务数据存储过程的优化,在保证数据安全、可靠、及一致的前提下,完成业务数据的灵活存储,减少了缺失数据对存储空间资源的占用。

(2)本申请通过引入HBase(开源数据库)相关组件,将业务数据的行式存储改为列式存储,通过设置列族及动态扩展列的方式存储数据,对于业务数据表中大量缺失的数据字段,通过列簇式存储的特性实现缺失字段数据存储空间上的压缩,减少对存储空间的占用。此外,可以提高数据查询的效率。

(3)本申请对电力系统的异常情况和电力数据采集装置的异常风险进行评估,进而判断是否能采集电力数据,保证电力系统和电力数据采集装置在正常的情况下采集数据,提高采集数据的可靠性和准确度。

上所述仅为本发明的实施方式而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理的内所做的任何修改、等同替换、改进等,均应包括在本发明的权利要求范围之内。

相关技术
  • 一种基于HBase的数据存储优化方法及系统
  • 一种基于HBase的智能电网采集监测数据存储系统及存储方法
技术分类

06120112986851