实时数据库的数据结构
国内外关于实时数据库的文献很少讨论实时数据库的数据结构或实时数据库的数据库结构问题,而本人则认为这恰恰是实时数据库最根本最核心的技术问题。实时数据库是存放实时数据的,而实时数据是从生产现场来的,它们有自己的数据结构。实时数据库的数据结构必须适应生产现场的实时数据的结构。随便拿来一个实时数据库就往中国企业上套用,笔者认为是行不通的,而且前车之辙也不少见。
1.中国石化企业生产数据的特点
中国石化企业的生产组织是一个多层次的结构,以中国石油为例:
中国石油──石化公司──石化工厂──石化车间(装置)──生产数据(位号)
一般一套装置一套DCS,DCS以下才有生产数据,以数据位号表示一个生产数据。这样从中国石油总公司到生产数据就有5级;如果只考虑石化公司这一级,生产数据有4级的结构。中国石化企业在定义装置数据位号时一般是不会考虑其它装置的位号的,例如某温度TI1101,几乎所有的装置都可能有这样的数据位号。所以要查询数据“TI1101”必须给出石化公司──石化工厂──石化车间(装置)──TI1101这样四个坐标,不管是实时数据还是历史数据都应该是如此。
很遗憾,有的进口实时数据库没有这样的结构。
2.NSIS实时数据库的树状层次结构
为了适应中国石化企业生产数据的特点,NSIS实时数据库从90年代设计阶段就一直采用了符合中国国情的多层次的结构,或者说是一个多维的树状结构。NSIS实时数据库逻辑上是四维或五维坐标的结构,它自然地适应了中国石化企业的生产数据结构;NSIS实时数据库在物理上是基于“石化工厂”这一级的,即“石化公司”下属的每个“石化工厂”有一套独立完整的实时数据库和实时信息系统,称为“厂级系统”。多个分布在石化公司的企业网上的“厂级实时数据库”加上“公司级实时数据库”而构成逻辑上的完整的分布式“石化公司”级实时信息系统。这样的结构是符合中国石化企业生产数据的特点的,并且在抚顺石油化工公司成功运行。
按照这一模式,我们完全可以构建整个中国石油总公司以至全中国的实时数据库。
3.实时数据库的树状层次结构的优点
① 真实地反映中国石化企业生产数据;
② 所有数据可以保留原有位号,不必重新定义;
③ 便于生产数据的分组更新和检索;
④ 构建多级实时信息系统;
⑤ 更新和检索速度级快,与OPC成组读取数据相结合,效率极高。
4.某些国外实时数据库数据结构的“死穴”
某些进口的所谓实时数据库不过是原来的DCS软件或仿真软件稍作修改而成,它们往往带有DCS的烙印,也无所谓数据结构,所有的数据只有一个坐标:位号。所以套用这样的所谓实时数据库来存储中国石化企业的数据就会带来极大的麻烦。以位号TI1101为例,蒸馏装置重新编为ZL_TI1101,催化装置重新编为CH_TI1101,实在是可笑之极!在数据组态例如图形组态时往往要从几千甚至几万个位号中选取一个。这样不分层次的所谓实数据库在更新和检索时效率极低,尤其在数据多时,其系统响应周期甚至长达一分钟之久!
没有层次结构是这些所谓实时数据库的“死穴”!就这样的破软件也能卖到数百万元一套,真是欺负我中国无人!
这些所谓实数据库还有其它致命的弱点,我准备另文介绍。
黄嘉珀
2007-11-25 20:00