一种基于实时历史数据库的数据清洗方法技术

技术编号:7614047 阅读:383 留言:0更新日期:2012-07-26 23:09
一种基于实时历史数据库的数据清洗方法,适用于一切使用实时历史数据库存储数据的领域,本申请以电厂信息化为应用背景,以过程数据为基础,以优良时间段为目标,设计并实现了一种实用性较强的数据清洗方法。该方法涉及到实时历史数据库测点的创建、过程数据的采集、实时库数据的查询、数据特性分析,最后提出了一种以阈值和倍率为参数的横向清洗算法,将不同采集周期过程数据进行了描述,最终得到了过程控制数据采集的坏时间段和优良时间段,清洗算法清晰,理论依据严谨,软件执行效率较高。该清洗方法已经在数据挖掘等系统中得到了应用。

【技术实现步骤摘要】

本申请涉及数据库,信息
,具体涉及一种数据清洗方法,可直接应用于采用实时历史数据库存储数据的行业,如电力、石油化工、冶金等领域。
技术介绍
随着信息技术在电力企业的普及,数据仓库在这个领域得到了进一步的应用。我们知道,数据仓库是面向主题的,那么,我们能不能通过面向被广泛应用于电厂的大量的实时历史数据,建立应用决策分析的数据仓库呢?显然是可以的。然而,实时历史数据库中数据质量的好坏是数据仓库应用成功与否的关键因素, 许多数据仓库项目的失败就是因为对导入数据仓库的各种数据质量缺乏足够的重视。因此建立数据仓库的过程中,需要有效的技术手段和工具来提高导入数据仓库的数据质量。数据挖掘(Data Mining)就是从大量数据中发现潜在规律、提取有用知识的方法和技术。目前,数据挖掘技术已经趋于成熟,并在银行、电信、保险、交通、零售(如超级市场)等商业领域有了很多成功的应用,我们可以通过应用数据挖掘技术,建立指导电厂实时运行的数据仓库,随着时间的推移,数据仓库的数据不断丰富和准确,为决策分析提供了强有力的事实依据。数据清洗处在数据挖掘过程的第一个环节,是对“脏数据”过滤的主要步骤之一, 显然清洗算法准确性和彻底性则显得尤为重要。通常情况下,数据清洗大致都由三个阶段组成⑴数据分析、定义错误类型;⑵ 搜索、识别错误记录;(3)修正错误。第一阶段,尽管已有一些数据分析工具,但仍以人工分析为主。第二阶段,有两种基本的思路用于识别错误一种是发掘数据中存在的模式,然后利用这些模式清理数据;另一种是基于数据的,根据预定义的清理规则,查找不匹配的记录。后者用得更多。第三阶段,某些特定领域能够根据发现的错误模式,编制程序或借助于外部标准源文件、数据字典一定程度上修正错误。目前,数据清洗技术在电厂信息化领域的应用还很少,有针对性的对过程控制系统的测点数据,采用数据清洗技术还没有,为此如何通过一种准确、严谨的清洗方法,对过程“脏数据”进行高效的过滤,成为了建立电厂信息化数据仓库的首要思考的问题。
技术实现思路
为解决现有技术中存在以上问题,本专利技术公开了。首先对本专利技术所使用的技术术语作以下解释和说明实时历史数据库也被称为实时库或者实时数据库,与关系型数据库相对应。实时历史数据库是实现工业海量数据采集的有效手段,可用于工厂过程的自动采集、存储和监视,可在线存储每个工艺过程点的多年数据,可以提供清晰、精确的操作情况画面,用户既可浏览工厂当前的生产情况,也可回顾过去的生产情况。测点在实时历史数据库中,用来记录器件信息的元数据被称为测点或者标签点, 可以理解为一个数据结构,包括采集时间,数值,状态,类型等属性。测点数据器件的运行数据被不断地采集并存储在实时历史数据库的测点中,测点数据结构中的数据被称为测点数据。过程控制设备这里指的是智能的自动化控制设备,如DCS等。器件指过程控制设备中的传感器。时间戳器件的运行数据被不断的采集并存储在实时历史数据库中的测点中,采集的时间,被称为测点的时间戳。数据清洗在建立数据仓库时,针对不同的数据对象,定义不同的优劣标准,通过技术手段将这些“劣”数据去除的过程被称为数据清洗。清洗时间范围用户可以针对任意一段时间内的测点进行数据清洗,这个时间段叫做清洗时间范围。时间阈值Vi :测点i的采样周期。清洗倍率Ni :指测点i数据阈值的一个倍数。本专利技术具体采用以下技术方案。,其特征在于,所述方法包括以下步骤(I)针对过程控制设备的各个器件,在实时历史数据库中,建立与各个器件对应的测点,并通过配置测点的属性建立起测点和各个器件的对应关系;(2)对过程控制设备的数据进行采集,采集到的数据被送到实时历史数据库中;(3)通过现有的实时历史数据库接口程序,采集实时历史数据库中测点数据的原始数据信息,查看各测点数据的时间戳信息;(4)通过各测点数据的时间戳信息获得测点数据之间的采样时间间隔,针对不同的测点设置各测点相应的时间阈值Vi和清洗倍率Ni,如果某测点相邻数据的采集时间间隔大于该测点相对应的时间阈值Vi和清洗倍率Ni的乘积,则判断该时间间隔为坏间隔记录,将该测点在清洗时间范围内的所有坏间隔记作坏时间段集合Mi,得到所有测点各自的坏时间段集合后,对所有测点的坏时间段集合取并集,得到集合A将所述集合A内采集的测点数据清洗;(5)采用集合原理,对所述集合A进行补集操作,得到优良时间段集合B。本专利技术具有以下有益效果经过采用上述方案,我们得到了针对各测点的优良时间段,这些时间段精度很高, 可以达到秒级;另外算法对各测点的头、尾等进行了考虑,理论依据非常充分。附图说明图I为本专利技术数据清洗方法流程图;图2清洗结果示意图。具体实施例方式下面结合说明书附图对本专利技术的技术方案做进一步详细说明。如附图I所示为本专利技术数据清洗方法流程图。本专利技术公开的具体包括以下步骤步骤一实时历史数据库建点。这个过程主要针对过程控制数据建立副本,针对实时库的不同应用,可以为实时库建立容易理解的测点点名,比如,厂用电率可以设测点名 70pr_cydl,并通过测点的属性配置,建立与过程控制设备厂用电率器件的对应关系,这样器件的数值变化情况就被记录在测点70pr_cydl中了,如果实时库被用在SIS等系统时,用户可直接访问70pr_cydl测点得到厂用电率的数据;步骤二 过程数据采集。采用opc技术,编写有针对性的接口程序对过程数据进行采集,并和实时库中的测点名建立对应关系,这样过程数据的变化便可以反映在实时历史数据库中了。步骤三测点数据采集。针对不同的实时历史数据库,编写相应的数据采集接口程序,这个接口程序可以是动态链接库程序,方便了程序员的使用。当从实时历史数据库中得到测点的原始数据后,专业人员可通过查看测点数据的时间戳等属性,了解到该测点对应的过程控制器件运行情况。对于一些测点采样间隔浮动在较小的范围内,稍微大一些就意味着测点出现了故障;而有的测点浮动会很大,却依然是正常的范围,为此用户在决定测点是否参与清洗之前需要对测点的这些性质有所了解。步骤四针对上述各测点的特性,设置各测点的阈值和倍率。因为不同电厂的过程控制器件采样周期会有所不同,实际上是遵循一定的策略,这在器件设计之初已经固定好的,如果我们能够通过某种手段的到这种策略,那么可以直接设置阈值和倍率,否则只有通过实验的方法获取。这里提供一种获取采样周期的试验方法,即一段实验时间和实验时间内的测点个数来估算采样周期,通过反复的实验,可以得到一个相对精确的采样周期,我们利用这个采样周期来充当阈值,当然用户也可以手都设置一个在采样周期附近的整数阈值。当我们得到了各测点的阈值和倍率后,开始执行横向的清洗算法。阈值实际上表示的是测点合理的采样周期,设测点N的阈值为Vi,倍率为Ni,如果任意测点N两个相邻原始点数据之间的间隔大于Vi*Ni,那么这段间隔被认为是坏的时间段,这样一来,测点N在清洗时间范围内,可能存在多个坏的时间段,这些时间段被定义为测点N的坏时间段集合 Mp依次对每一个测点依照自身的阈值和倍率采用上述方法进行搜索,将会得到各测点的坏时间段集合,将各集合取并集,得到集合A,这个集合中的任意一个时间段中,至少存在一个测点在这个时间段内存在故障,这些存在故障的时间段正是我们清洗过程需要找出并剔除的。步骤五本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:黄孝彬张晓刚景超
申请(专利权)人:北京华电天仁电力控制技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术