实时数据库是数据库系统发展的一个分支,它适用于处理不断更新的快速变化的数据及具有时间限制的事务处理。实时数据库技术是实时系统和数据库技术相结合的产物,实时数据库系统的主要内容包括:
- 实时数据库模型;
- 实时事务调度:包括并发控制、冲突解决、死锁等内容;
- 容错性与错误恢复;
- 内存组织与管理;
- 访问准入控制;
- I/O与磁盘调度;
- 主内存数据库系统;
- 不精确计算问题;
- 放松的可串行化问题;
- 实时SQL;
- 实时事务的可预测性;
研究现状与发展
目前在国内比较流性的国外实时数据库产品有Wonderware公司的Industrial SQL,OSIsoft公司的PI ,AspenTech公司的 IP21 (InfoPlus 。21 )。以5000点数据库和20客户端应用为例,几个数据库价格分别是:
- PI----10万美元,每个接口6000美元,OPC接口收费;
- InfoPlus.21----11万美元,每个接口1万美元,OPC接口不收费;
- Industrial SQL Server----6.5万美元,每个IDAS1200美元,OPC Link免费。
实时数据数据库产品
PI将所有数据存于专有数据库中,对于过程数据的存储模式,每个点只有6个域可以由用户定义。PI是纯实时数据库,如果要实现企业更高级的应用还要配备关系型数据库。
PI采用了旋转门压缩专利技术和独到的二次过滤技术,使进入到PI数据库的数据经过了最有效的压缩,极大地节省了硬盘空间。据计算,每秒1万点数据存储一年,仅需要4G的空间,即一只普通硬盘也可存贮五到十年的数据。是效率最高,使用最简单,使用最广泛的实时数据库,因为其杰出的性能,PI已经多次提高了它的价格,而且PI在其文档中公开了它的各种算法,比如上面提到的旋转门压缩和二次过滤。
OSI公司没有提供PI服务器软件和客户端软件汉化版本,但是据说在开发中,可以看见DataLink的某个汉化版本。国内某些公司也在为客户做授权的汉化工作。
系统性能
每个PI服务器可容纳150万点(高端服务器),在PI的高端产品服务器中可以处理每秒钟150万点的数据。在客户端软件ProcessBook上,可以在秒级时间内从2年或3年历史中取到1000点数据。
参考OSI公司提供的数据:实时信息点的数据值1天的平均变化次数为500,每个信息点所占的存储空间为3个字节,那1万个点在线存储1年所需的存储空间是:
变化次数 × 单点存储空间 × 信息点数 × 1年的天数 = 总空间要求
500 × 3 × 10000 × 365 = 5.475GB
当然,硬盘很便宜,但是节约空间不是我们的出发点,关键是快速回放数据。
设备接口支持
OSI公司提供全球600多种DCS接口软件,同时可以支持OPC数据采集,使得PI数据库成为企业生产控制系统与管理信息系统连接的桥梁。
客户端工具
PI-ProcessBook:组织和显示过程信息,提供流程图、实时和历史趋势,包含VBA编程环境。
Pi-datalink:Excel 内嵌的宏。为最终用户提供了非常灵活的过程数据分析工具。可以提供用VBA来建各种所需的数学分析,可提供了最常规分析工具,包括:平均值、移动平均、几何平均、标准偏差、累计值等等。
PI-Batch:生产批处理程序。
PI-ML:手动录入终端(提供软件或硬件两种形式)。
PI- ACE:允许用户写方程式。在捕获相似的数据集时,可以不用费力地重复使用这些方程式。
PI ICE:适于企业级实时绩效管理的最有创新意义的web应用。
PI ActiveView:无缝地给web提供现有的PI ProcessBook显示。
PI告警视图:汇总PI 告警服务器信息,以分层次的树形结构向任意个现场客户或场外客户显示那些数据。
PI批视图:在Windows台式电脑计算机上显示PI 批数据。
PI系统管理工具:一套通过客户的PC机对PI系统实施管理的应用程序。
PI模块数据库:将PI系统中的内容分成有用的组,帮助组织实时数据,储存参数或规格,并使它们随时可以用于程序和显示中。
RLINK:生产数据(PI)与SAP R/3、JD Edwards OneWorld、MRO Software Maximo和Indus International PassPort/EMPAC等ERP或EAM(企业资产管理)系统之间的一个双向网关。
二次开发工具
PI提供API,SDK, PI ODBC & PI OLEDB二次开发工具实现从数据库读取数据或写入数据到实时数据库中。另外,PI的客户端ProceBook中内嵌了VBA,方便对ProceBook功能的扩充和客户化。
PI API (Application Programming Interface,应用程序开发接口)
PI-API是一组C语言函数,提供了对PI系统进行访问的通用编程接口,应用程序可以通过调用PI-API函数访问或操作PI系统。许多PI的客户端软件,包括PI ProcessBook、PI
DataLink、PI ProfileView等,都是通过PI-API与PI服务器通信。用户可以在UNIX,WINDOWS平台上调用。
PI SDK(Software Development Kit,软件开发包)
PI SDK是PI提供的另一个编程工具集,用以访问PI服务器以及相关子系统。它采用微软ActiveX技术,内含一个ActiveX进程内组件,一个ActiveX控件和其他一些支持代码库,如在线文档、示例代码、支持文档等。ActiveX基于COM组件技术,在Microsoft Windows平台下具有开发语言无关性特点。用户可以在开发简便的。NET中使用PI SDK访问PI服务器,
也可以在高效的C++中使用,以及在其他所有支持COM技术的开发工具中使用PI SDK。
PI ODBC & PI OLEDB
ODBC是数据库领域的一个开放的工业标准。OLEDB是微软基于COM的一个数据库访问接口标准。使用PI ODBC和PI OLEDB,用户能够像访问关系数据库一样访问PI系统。基于PI ODBC或PI OLEDB的数据接口程序和客户端应用程序,可利用标准的SQL语句访问PI数据库,包括PI Archive、PI Point Database或其他配置数据。
国内用户
OSI将其数据库定位于企业信息化集成平台,专注于实时数据软件的研发和服务,主要用于大型流程行业用户,如电力、石油、化工和冶金等。目前中国使用PI软件的企业达到一百多家,主要集中在电力、石油、化工行业,国内冶金行业用户有唐山钢铁公司厂、太原钢铁集团第2炼钢厂、石家庄钢铁公司等。