一种面向电网运行的全息时标量测数据萃取转换方法

xiaoxiao2020-7-22  14

一种面向电网运行的全息时标量测数据萃取转换方法
【专利摘要】本发明公开了一种面向电网运行的全息时标量测数据萃取转换方法,属于数据库【技术领域】。本发明先进行全息时标量测数据的抽取,再进行全息时标量测数据的转换,最后进行全息时标量测数据的加载,将全息时标量测数据和存储于关系型数据库中的电网模型以及其他各类业务数据的集成。本发明能够在全息时标量测数据处理领域进行数据萃取转换,实现有效抽取、清洗和转化,大大降低后续应用开展的成本和复杂度,还能够降低数据总体规模,提升数据质量,有效提取、利用现有系统的功能模块,在不影响现有系统功能与安全稳定性的前提下实现高效的上层应用,充分挖掘现有系统的价值,在更高的层次上实现电网运行处理的自动化、智能化,保障电网的安全稳定运行。
【专利说明】一种面向电网运行的全息时标量测数据萃取转换方法

【技术领域】
[0001]本发明属于数据库【技术领域】,更准确地说本发明涉及一种面向电网运行的全息时标量测数据萃取转换方法。

【背景技术】
[0002]随着电网建设规模的不断扩大,智能电网、智能变电站等研究应用的不断深入,调度自动化系统面对的采集点越来越多。与以往地区调度自动化系统显著不同的是,大型地区电网调度自动化系统面临的数据采集规模急剧上升,个别地区将达到上百万采集点的规模,数据存储规模将从目前的GB级转向TB级。此外,随着调度自动化水平的不断提高,各业务系统对调度自动化系统提出了更高的要求,以往低频率按照分钟级的历史数据存储已经很难满足电网精细化管理的要求,而全息保存电网运行所有细节已成为大势所趋,原有的周期性历史数据保存方式已不能满足要求,应按照变化的实际时间序列连续进行存储,以满足更多的应用需求,这也将导致数据存储规模数十倍的增长。同时,历史数据的存储组织策略以及查询检索策略也将变得相当复杂。传统的关系数据库无论在响应速度、存储规模、查询效率和变化存储机制上都将很难满足应用的需求。近几年来,动态信息数据库(又称时间序列数据库)在电网中的集成应用使得高精度采样并全息记录电网运行过程中带有时标的数据成为可能。
[0003]然而,全息时标量测数据存在总体规模庞大、质量参差不齐、数据本身缺乏对模型的描述等诸多问题。因此,亟需一种数据萃取方法及工具,能够对海量全息时标量测数据进行抽取和清洗,降低数据总体规模,提升数据质量,同时和存储于关系型数据库中的电网模型以及其他各类业务数据进行集成,形成面向各类应用的数据集市,为后续包括数据挖掘、辅助决策、多业务集成、可视化展示在内的多个高级应用奠定基础。


【发明内容】

[0004]本发明的目的是:弥补现有技术的不足,提供一种面向电网运行的全息时标量测数据萃取转换方法,保证数据能够按照预期的方式正确地进行抽取、转换和加载到动态信息数据库中,同时和存储于关系型数据库中的电网模型以及其他各类业务数据进行集成。
[0005]具体地说,本发明是采用以下的技术方案来实现的,包括下列步骤:
1)全息时标量测数据的抽取:从多数据源中读取源数据中的元数据、接入数据和抽取数据;
2)全息时标量测数据的转换:依照数据库约束和业务逻辑,通过数据清洗、数据转换将步骤I)中抽取的数据协调为统一格式,以满足动态信息数据库的数据模型和数据质量的需要;
3)全息时标量测数据的加载:将转换完的全息时标量测数据按照目标数据模型定义的数据结构加载到动态信息数据库中,对不同业务系统的数据采用不同的加载周期,同时采用多线程并行处理方式加载数据以提高程序运行效率; 4)将加载到动态信息数据库中的全息时标量测数据和存储于关系型数据库中的电网模型以及其他各类业务数据的集成,形成数据仓库,应用服务器通过获取数据仓库中的数据为上层应用提供数据支撑。
[0006]上述技术方案的进一步特征在于,所述步骤I)具体包括以下过程:
1-1)读取每一个数据源资源层中的全息时标量测数据元模型;
1-2)通过远端抽取元模型对数据进行抽取处理,所述远端抽取元模型由抽取核心、日志模块和抽取配置元数据构成,抽取核心读取抽取配置元数据的参数设置,根据相应设置从远端数据源表中抽取目标数据,抽取方式分为全量抽取和增量抽取两种,抽取配置元数据由需要抽取的表名、字段、类型、数据库连接信息、抽取数据时间信息组成,日志模型用来纪录抽取处理的日志;
所述全量抽取是指根据抽取的字段和抽取的规则将数据源端的指定数据字段的全部数据都抽取出来;所述增量抽取是指全量抽取完成后在后续的抽取过程只抽取自上次抽取源表中新增或被修改的数据;
1-3)通过传输元模型将抽取的数据从远端传输到中心端;
1-4)将传输到中心端的数据缓存到异构临时存储区。
[0007]上述技术方案的进一步特征在于,所述增量抽取基于调度业务系统的时间戳实现,通过比较指定抽取时间与抽取源表的时间戳字段的值来决定抽取哪些数据。
[0008]上述技术方案的进一步特征在于,所述步骤2)中的数据转换包括不一致数据转换、参照转换、字符串处理、直接映射、日期转换、日期运算、空值判断、聚集运算和/或既定取值。
[0009]上述技术方案的进一步特征在于,所述步骤3)中,在全息时标量测数据的加载时对新产生的实时数据变化进行实时捕获,并根据量测数据质量码进行正常设备采集数据、越限数据的定位与捕捉,滤除人工置位产生的数据变化。
[0010]上述技术方案的进一步特征在于,所述数据仓库中的实时数据与历史数据分开存储,并对实时数据和历史数据进行统一建模,对外提供统一的访问视图。
[0011]本发明的有益效果如下:本发明能够在全息时标量测数据处理领域进行数据萃取转换,达到99%的有效抽取、清洗和转化,大大降低后续应用开展的成本和复杂度。同时,本发明利用动态信息数据库存储的全息时标量测数据,可以降低数据总体规模,提升数据质量,寻求调度自动化系统中精细化统计分析应用的突破点,有效提取、利用现有系统的功能模块,在不影响现有系统功能与安全稳定性的前提下实现高效的上层应用,充分挖掘现有系统的价值,在更高的层次上实现电网运行处理的自动化、智能化,保障电网的安全稳定运行。

【专利附图】

【附图说明】
[0012]图1是本发明的全息时标量测数据萃取转换整体框架示意图。
[0013]图2是本发明的全息时标量测数据萃取抽取元模型示意图。
[0014]图3是本发明的数据仓库体系结构。

【具体实施方式】
[0015]下面参照附图并结合实例对本发明作进一步详细描述。
[0016]如图1所示,本发明的全息时标量测数据萃取转换整体框架分为三个层次,由下往上分别为资源层、分析层、管理层。每一层由若干块组成,每一块代表一个兀模型。
[0017]其中,资源层描述各种不同类型数据资源的元数据的模型,元数据是指对数据的抽象信息,在这里主要是指全息时标量测数据。分析层定义资源层中模型的进一步描述和各种规则,是数据萃取框架模型中最关键的部分,包括了抽取、转换和加载元模型。抽取和加载元模型包括了数据源中的元数据、抽取和加载规则定义,转换元模型主要完成数据集成和聚集工作。数据集成是指对多个数据源进行重构集成,清洗和转换,转换为满足目标数据源模型的定义。其中包括解决数据源的异构问题,分为四个层次:系统、语法、结构和语义。如数据从数据源到数据仓库要进行时间格式数据转换,数据源中的纪录中属性的语义通常是不同的,如需要解决空值、重复值、不同的计量单位问题。聚集是指对数据进行汇总和综合,即加大数据粒度。管理层定义分析层元数据调度和执行方面的元数据模型,包括作业调度管理、运行监控、恢复管理、异常管理、日志管理等模型。
[0018]全息时标量测数据从异构数据源通过数据萃取过程最终加载到动态信息数据库中的过程如下:
(1)首先异构数据源中的数据通过资源层中的全息时标量测数据元模型这个数据接口,由分析层中的抽取元模型对这些数据进行抽取,这个元模型定义了抽取规则,即哪些数据要抽取以及怎样抽取。
[0019](2)对于抽取完成的数据经过转换元模型的转换处理,其中转换元模型定义了源数据和目标数据存储中的转换元数据。这些转换元数据包含了转换规则元数据,由调度领域的业务规则和动态信息数据库的数据存储格式决定。
[0020]( 3 )经过转换元模型后的数据,通过保存了加载规则的加载元模型进行数据加载处理工作。
[0021](4)最后通过资源层中的元数据定义加载到动态信息数据库中。
[0022]下面对上述过程进行具体说明:
1、全息时标量测数据的抽取:从多数据源中读取源数据中的元数据、接入数据和抽取数据。
[0023]如图2所示,本发明的全息时标量测数据萃取抽取元模型包括4个部分,分别为远端抽取-传输-缓冲-合并,即使用远端抽取-传输-缓冲-合并的抽取技术来解决多个异地数据源进行数据抽取的问题,在各个前端分别进行远端抽取,然后将成功抽取的文件传输到中心端的数据缓冲区,再将这些数据进行合并,这样有效地解决了在异地不同的数据源抽取数据的一致性和完整性问题。因为在传输之前先对抽取文件过程的状态进行检查,这就保证了数据抽取过程的正确,同时检查传输运行状态,如果不成功传输元模型将自动重传,并纪录运行日志。
[0024]全息时标量测数据抽取的详细步骤如下:
(O读取每一个数据源资源层中的全息时标量测数据元模型;
(2)经过远端抽取元模型对数据进行抽取处理,远端抽取元模型由抽取核心、日志模块和抽取配置元数据构成。抽取核心读取抽取配置元数据的参数设置,根据相应设置从远端数据源表中抽取目标数据,抽取核心的抽取方式分为全量和增量抽取。在集成端进行数据的初始化时,第一次是全量抽取,由业务人员定义抽取策略,选定抽取的字段和抽取的规则后,设计人员执行程序,将数据源端的指定数据字段的全部数据都抽取出来,放入数据临时存储区。可以选择需要的字段,并为源数据库的字段名定义新的字段名,数据值不变,也可以由源表数据的旧字段经过数学运算,得出新的数据值装载到目标数据库中。全量抽取完成后,后续的抽取过程只需要抽取自上次抽取源表中新增或被修改的数据,即增量抽取。日常事务都是增量抽取。要实现增量抽取,需要准确地捕获数据库中源表数据的变化,本发明采用时间戳方式,基于调度业务系统的时间戳实现。通过比较指定抽取时间与抽取源表的时间戳字段的值来决定抽取哪些数据,即每次抽取之前首先判断动态信息数据库中记录的最新时间戳,然后根据这个时间戳去业务系统取大于这个时间戳的所有记录。这种方式需要在源表上增加一个时间戳字段,系统中更新或修改源表数据的时候,同时修改时间戳字段的值。插入数据的时间戳由系统时间指定。有些数据库时间戳支持自动更新,即表的其它字段的数据发生改变时,时间戳字段的值会被自动更新为记录改变的时刻。在这种情况下,进行数据萃取时只需在源表加上时间戳字段即可。对于不支持时间戳自动更新的数据库,则需要业务系统在更新业务数据时,通过编程的方式手工更新时间戳字段。抽取核心依赖于抽取配置元数据,抽取配置元数据由需要抽取的表名、字段、类型、数据库连接信息、抽取数据时间等信息组成。日志模型用来纪录抽取处理的日志;
(3)通过传输元模型将抽取的数据从远端传输到中心端;
(4)将传输到中心端的数据缓存到异构临时存储区,这是因为通常是有多个数据源需要抽取,抽取的进程通常是异步的,故需要有一个数据缓冲来同步这个过程,同时也为了数据恢复,这样不会因为一端数据抽取失败而造成所有前端的数据重新抽取。最后将这些各个数据源中抽取的数据进行合并,形成一个统一的抽取文件。
[0025]2、全息时标量测数据的转换:依照数据库约束和业务逻辑,通过数据清洗、数据转换(合并、转换和聚合等)将数据协调为统一格式,以满足动态信息数据库的数据模型和数据质量的需要。
[0026]由于数据来源于许多不同的系统,因此可能出现数据冗余甚至冲突的情况。数据清洗的任务实际上就是过滤不符合要求的数据,将过滤的结果交给业务主管部门,由业务单位确认应该过滤掉或是修正之后再进行抽取。这样既可以在一定程度上提高抽取到的数据的质量,也可以明显降低后续数据萃取步骤的负担,很大程度上提高了数据萃取的效率。不符合要求的数据主要有:数据格式错误,如缺失数据、数据值超出范围或者数据格式非法等;数据不完整,主要是指应有信息的缺失;数据不一致或者有重复数据。
[0027]由于数据源之间往往存在着不一致的问题,因此数据转换必须做到数据名称及格式的统一,同时对源数据库中可能不存在的数据需要创建新的数据逻辑视图并进行相应的转换,需要作如下处理:
(1)不一致数据转换:这个过程是一个整合的过程,将不同业务系统的相同类型的数据统一,比如同一个厂家在一个系统的编码是AOOl而在另一个系统中编码是B001,在抽取之后需统一转换成一个编码;
(2)参照转换:在转换中通常要用数据源的一个或多个字段作为Key,去一个关联数组中搜索特定值,而且应该只能得到唯一值。这个关联数组使用Hash算法实现,在整个数据萃取过程开始之前,它就装入内存,对性能提高的帮助非常大; (3 )字符串处理:从数据源某个字符串字段中经常可以获取特定信息,对字符串的操作有类型转换、字符串截取等,同时加上异常处理;
(4)直接映射:数据源字段和目标字段长度或精度相同,无需做任何处理;
(5)日期转换:由于动态信息数据库中的日期类型格式是统一的,采用“YYYY-MM-DDhh: mm: ss ”来表示日期。而在不同的数据源中,会采用不同的日期格式,所以对数据源字段的日期格式需要相应的转换;
(6)日期运算:基于日期,通常会计算日差、月差、时长等。一般数据库提供的日期运算函数都是基于日期型的,而在动态信息数据库中需要有一套自己的日期运算函数集
(7)空值判断:对于数据源字段中的NULL值,在动态信息数据库进行分析处理时会出问题,因此必须对空值进行判断,并转换成特定的值;
(8)聚集运算:业务系统一般存储非常明细的数据,而数据仓库中数据是用来分析的,不需要非常明细的数据,需将业务系统数据按照数据仓库粒度进行聚合。对于动态信息数据库事实表中的一些度量字段,通常需要通过数据源一个或多个字段运用聚集函数得来的,比如sum、avg、min、max、count,因此需要做相应的转换;
(9)既定取值:这条规则对于目标字段取一个固定的或是依赖系统的值,而不依赖于数据源字段。
[0028]3、全息时标量测数据的加载:将转换完的全息时标量测数据按照目标数据模型定义的数据结构加载到动态信息数据库中。对不同业务系统的数据采用不同的加载周期,同时采用多线程并行处理方式加载数据,提高程序运行效率。
[0029]在传统数据仓库系统中,由源系统按预先约定的加载时间和数据格式,定期把需要抽取的数据放到预先约定的接口中,然后由数据萃取工具把这部分数据加载到数据仓库。但是,对全息时标量测数据而言,一旦由源系统产生就必须立即加载到数据仓库中,以便支持实时战术分析的需要。因此,数据萃取工具还需要对新产生的实时数据变化(插入、更新等)进行实时捕获,对数据变化进行有选择性的定位和捕捉,根据量测数据质量码进行正常设备采集数据、越限数据的定位与捕捉,滤除人工置位产生的数据变化,满足零延迟的要求,最小化对源系统的入侵程度,降低源系统的负载,确保源系统性能不下降、不当机。
[0030]捕捉到的每个全息时标量测数据变化都是以消息的形式进行分发,同一事务中包含多个数据变化,也就包含了多条消息,这些消息在网络中进行独立传输。数据萃取工具采用高效的数据分发机制,使每个捕捉到的数据变化放入消息队列后,由消息队列完成数据的分发,保证消息传输的一致性和完整性,同时有效地维护数据的事务依赖性和时间依赖性。
[0031]接收到的消息中是未经处理的数据,如果对这些数据进行复杂地清洗和转换操作,将无法满足外部查询对数据实时性的要求;反之,所包含的脏数据会严重影响数据的质量。需要在保证数据质量的前提下实现实时、高效的数据加载,对数据的清洗和转换过程所包含的内部子环节进行合理有效的组织,从而提高数据处理的速率和并发度。同时根据用户对数据质量的不同需求,对即时加载的数据进行区别对待,合理分配系统资源,提高数据加载性能。
[0032]4、将全息时标量测数据和存储于关系型数据库中的电网模型以及其他各类业务数据的集成,即将加载到动态信息数据库中的数据与存储于关系型数据库中的电网模型以及其他各类业务数据进行集成,形成数据仓库。形成的数据仓库体系结构如图3所示。应用服务器通过获取数据仓库中的数据,为实时告警、及时分析、定制报表等上层应用提供数据支撑。
[0033]为了最大程度地减小查询冲突给系统带来的负面影响,保证数据仓库正常高效地运行,实时数据与历史数据通常分开存储。为了最小化对查询工具的影响,不需要查询工具了解获取不同类型数据的方法,而是一旦提出查询请求,就可以得到“无缝集成”后的数据。
[0034]为了提供实时数据和历史数据的有效的组织与管理策略,使之高效地工作在一种混合的工作负载环境中,数据仓库对实时数据和历史数据进行统一建模,对外提供统一的访问视图,解决对实时数据查询所产生的“查询冲突”和“查询不一致性”问题,保证查询处理过程的无阻塞性和查询结果的一致性,将实时数据和历史数据的及时信息合并,对提交的查询操作提供“透明”的一体化服务,同时,加强对负载的管理,使得集成后的数据仓库高效的运行。
[0035]数据仓库能够自动分析查询语句,从而确定数据需求,并从不同部分提取所需的数据,合并后供查询工具使用。同时,也能够自动分析所需数据中实时部分和历史部分的比例,从而更好地选择数据的迁移策略,减少数据传输,改善服务性能。
[0036]虽然本发明已以较佳实施例公开如上,但实施例并不是用来限定本发明的。在不脱离本发明之精神和范围内,所做的任何等效变化或润饰,同样属于本发明之保护范围。因此本发明的保护范围应当以本申请的权利要求所界定的内容为标准。
【权利要求】
1.一种面向电网运行的全息时标量测数据萃取转换方法,其特征在于,包括如下步骤: 1)全息时标量测数据的抽取:从多数据源中读取源数据中的元数据、接入数据和抽取数据; 2)全息时标量测数据的转换:依照数据库约束和业务逻辑,通过数据清洗、数据转换将步骤I)中抽取的数据协调为统一格式,以满足动态信息数据库的数据模型和数据质量的需要; 3)全息时标量测数据的加载:将转换完的全息时标量测数据按照目标数据模型定义的数据结构加载到动态信息数据库中,对不同业务系统的数据采用不同的加载周期,同时采用多线程并行处理方式加载数据以提高程序运行效率; 4)将加载到动态信息数据库中的全息时标量测数据和存储于关系型数据库中的电网模型以及其他各类业务数据的集成,形成数据仓库,应用服务器通过获取数据仓库中的数据为上层应用提供数据支撑。
2.根据权利要求1所述的面向电网运行的全息时标量测数据萃取转换方法,其特征在于,所述步骤I)具体包括以下过程: 1-1)读取每一个数据源资源层中的全息时标量测数据元模型; 1-2)经过远端抽取元模型对数据进行抽取处理,所述远端抽取元模型由抽取核心、日志模块和抽取配置元数据构成,抽取核心读取抽取配置元数据的参数设置,根据相应设置从远端数据源表中抽取目标数据,抽取方式分为全量抽取和增量抽取两种,抽取配置元数据由需要抽取的表名、字段、类型、数据库连接信息、抽取数据时间信息组成,日志模型用来纪录抽取处理的日志; 所述全量抽取是指根据抽取的字段和抽取的规则将数据源端的指定数据字段的全部数据都抽取出来;所述增量抽取是指全量抽取完成后在后续的抽取过程只抽取自上次抽取源表中新增或被修改的数据; 1-3)通过传输元模型将抽取的数据从远端传输到中心端; 1-4)将传输到中心端的数据缓存到异构临时存储区。
3.根据权利要求2所述的面向电网运行的全息时标量测数据萃取转换方法,其特征在于,所述增量抽取基于调度业务系统的时间戳实现,通过比较指定抽取时间与抽取源表的时间戳字段的值来决定抽取哪些数据。
4.根据权利要求1所述的面向电网运行的全息时标量测数据萃取转换方法,其特征在于,所述步骤2)中的数据转换包括不一致数据转换、参照转换、字符串处理、直接映射、日期转换、日期运算、空值判断、聚集运算和/或既定取值。
5.根据权利要求1所述的面向电网运行的全息时标量测数据萃取转换方法,其特征在于,所述步骤3)中,在全息时标量测数据的加载时对新产生的实时数据变化进行实时捕获,并根据量测数据质量码进行正常设备采集数据、越限数据的定位与捕捉,滤除人工置位产生的数据变化。
6.根据权利要求1所述的面向电网运行的全息时标量测数据萃取转换方法,其特征在于,所述数据仓库中的实时数据与历史数据分开存储,并对实时数据和历史数据进行统一建模,对外提供统一的访问视图。
【文档编号】G06F17/30GK104318481SQ201410181171
【公开日】2015年1月28日 申请日期:2014年5月4日 优先权日:2014年5月4日
【发明者】杨璃, 陈亚, 汤朝波, 李蓓贝, 胡翔 申请人:国家电网公司, 国网湖北省电力公司, 江苏瑞中数据股份有限公司

最新回复(0)