实时数据库介绍

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实时数据库介绍

拖太久了,最终我还是要将这篇文章写出来,希望能够对同仁们有所帮助。

在此文章中,我计划主要介绍如下主题:

谈到实时数据库,有些同仁还颇感神秘,我写此文结合我05年开始做的MES RTDBE实时数据库工程师培训教材来开展,逐渐解开面纱,给大家展示一个真实的实时数据库世界。注:图其实都很清晰,如看不清,纯属CEC博客功能问题,用鼠标点一下图,看大图。

先了解概念,再深入原理。

说道实时数据库,当时诞生于美国,随着流程工业和航天工业的发展,大量的测量数据需要集成和存储,采用关系数据库难以满足速度和容量的要求,而且接口访问复杂,不适合科研和监控的需要,因此80年代中期,开始诞生了以工业监控为目的的实时数据库。

今天大家看到的一些实时数据库,如PI、Uniformance、Infoplus、InSql等工业监控类实时数据库均先后诞生于此阶段。而当时还有另外一个分支,即所谓硬实时数据库,它的采集速度和响应速度均是毫秒级的,而大家知道,今天大量应用实时数据库,主动采集速度均是秒级的,响应速度也不严格,在Windows平台下,小于40ms的响应均不准确,但当时却有这类产品,目前多用于军事和科研了。到了上世纪90年代,实时数据库在流程工业全世界范围内大行其道,源于以太网的逐步普及;主要应用于工业监控、控制和公用工程。国内的实时数据库发展较为缓慢,这和技术封锁和政治风气都有关系,到了2000年之后,国内的实时数据库逐渐展露头角,如ESP-iSYS、Agilor等与国外的PI、InfoPlus均属于大型分布式网络实时数据库。规模相对较小的,如PHD、ConRTDB、Super Info,在国内开始应用。由于应用场景的不同,好多企业开始还只是解决现场监控的问题,分不清RTDB与SCADA的概念,结果InSql获得了一个发展的机会。

那么,什么是实时数据库呢,过去国人老将其与SCADA搞混,倒也给SCADA 一个发展的机会。实际上实时数据库是“对实时性要求高的时标型信息的数据库管理系统”,注意,这里特别提醒,是管理系统,而非单独一个数据库。实时数据库虽是系统软件,但更多是一个应用平台软件,原因是实时数据库还没有一个像SQL一样的标准,而且其功能太过综合,各厂商推出的产品功能各有侧重。但以上的膜片中至少总结了实时数据库的主要功能。

目前实时数据库已经应用到众多领域,它的应用范围还在不断扩展,业界的同仁在不断创造出实时数据库的应用模式。只要有时标型数据,实时数据库就可以在一定程度上发挥威力。

说到这里,渐渐要讲原理了。与一般认识不同,时标型数据并非仅仅指时间戳、值和质量码,还有一个很重要的属性,那就是及时性,及时性有两重含义,采样间隔和数据的新鲜度。时标型数据的价值随新鲜度降低而递减。1秒钟内的数据可以用来流程工业中的控制,5秒钟之内可以用来监视,半小时内的数据可以用来分析和优化,一天内的数据可以用来日报表,如果是半年前的数据,则只能做对比和追溯了。而得到数据的新鲜程度往往取决于采样频率,这就是为什么如此重视实时数据库的采样快速性。同时采样的频率还进一步决定了实时数据库保存信息的丰富程度。请看下一张膜片:

大家都知道采样定理,根据拉普拉斯变换,任何信号都可以被分解为频率不同、幅值不同的正弦波叠加,而如果要让采到的数据中包含一个频率的信息,则采样频率至少为此频率的2倍。所以大家不要过分关心实时数据库宣称的无损压缩,

更重要的是要明白,信息的最大损失就在于采样。更简单的例子,当你以10秒钟的周期去采样,可能装置运行过程中出现了异常的超调,在5秒内又恢复了,而你的实时数据库中却根本不存在这些信息。从另一个方面讲,实时数据库中存储的数据永远是滤波后数据,实时数据库就像一个低通滤波器。

接下去,要讲到实时数据库的核心技术原理了,理解了这些原理,在设定实时数据库运行参数的时候,才能得到更好的效果。也就会明白,一个RTDBA(RTD B Administrator)的存在价值。

看看这些标题,就知道,我下面会讲很多关键的东西,之前很多Q友在群里面抱怨我不提供完整的实时数据库原理知识材料,抱歉,太忙了。不是吝惜什么或技术保密,今天,只要你努力,都可以做出一个实时数据库的核来,但从一个内

核到产品的质变,是需要公司正规研发投入的,因此,原理实在不需要保密,讲个明白,大家能更好地使用实时数据库。

首先看看,任何复杂的大型实时数据库,其基本体系架构,也不外乎如图所示,通过现场适配层适配现场的各种接口,做工控的都知道,这是一个复杂的工作。然后通过实时核心,完成数据的采集、实时计算、报警计算、其它处理,实时数据被不断泵入磁盘历时存储,形成可追溯的历时信息,同时通过向应用层提供各种适配接口,支持各种开发语言和各种应用需求的访问。认识好这个基础架构,下面看核心原理,就思路清晰了。

总的来说,目前工业通讯、传输的协议种类繁多,主要有两方面原因:1、历史遗留;2、人为垄断;二者的合力就是上边这张膜片的内容,搭建看看,难啊,很多时候,为了不付出厂商提出的巨额接口或接口板卡费用,广大的业界同仁采

取编程口、打印口等极端方式,以获得可以接受的性价比。在协议载体上,主要是串行和以太两种,当然在串行通讯中又有很多专用总线分支,例如Profibus 等。未来在载体上是相当的清晰,请大家看我的另一篇文章《工业以太网技术有望统一现场总线》,以太网通讯技术已经势如破竹,所以,前途光明,但另一个困扰更大,就是封闭的协议,目前大部分厂商都宣称自己开放了,但开放的是上层,而非底层。虽然,至少可以做到采用OPC访问实时数据库,但要想简单地将For InSql的接口用于Agilor,则很难,这就是底层没有协议的问题。前两天在接收《今日自动化》采访的时候,我也提出,如果底层协议不统一,实时数据库的市场将继续存在混乱和低速发展。

谈到接口,小型实时数据库(许多是号称自己是实时数据库的组态软件)均采用了以上的架构,即将核心和接口做在一起,用户使用起来较为简单,但如果出现任何一个不稳定的接口或局部异常,那整个实时数据库就崩溃了。另外对于大型应用,这种结构也较难扩展。对于大型分布式实时数据库,基本按照如下的配置:

相关文档
最新文档