主动数据库在装备仓库管理系统中的应用
来源:岁月联盟
时间:2010-08-30
1 装备仓库管理现状
用仓库是军事物流顺利开展的基础,是军队物资保障的重要环节之一。装备仓库负责存储、保管、发放各种装备、器材和零部件等,在军队装备建设中起着重要作用。大部分装备仓库存储的物资种类繁杂、数量庞大,仓库的管理不仅仅是收与发,还包括保管、保养等许多工作,管理工作也很繁琐。传统的人工管理耗时、耗力且容易出错。机的普及和数据库技术的应用使得装备仓库的管理日趋简便。 传统的关系数据库系统数据的创建、检索、修改以及删除操作只有在用户或应用程序显式地提交命令后才被执行,要求仓库管理人员要具有一定的数据库管理和维护的知识。而军队人员流动性大,熟练的管理人员往往因各种原因而离开工作岗位,给装备仓库的管理工作造成很大的不便,而且管理人员所学的专业也各不相同,熟悉管理的人员可能不熟悉数据库系统,造成数据系统的使用和维护困难。因此需要一种操作简便,具有一定自我维护功能的数据库系统。2 主动数据库系统的定义及特点
传统数据库管理系统是被动的,数据的创建、检索、修改和删除只根据用户的命令进行。现实应用中存在着各种各样的主动性需求,例如主动地提出警告、主动检索、主动实现某些动态修改等一些应用,它们要求数据库不仅存储数据,还要存储控制知识或者规则以及过程。系统要能自动地监视数据库的状态及其变迁,当相关事件发生且条件满足时自动而实时地执行相应的动作。这种能够主动监视数据库状态,并能在满足特定条件时执行预先定义的动作的数据库系统称为主动数据库。 主动数据库的特点是数据库具有各种主动服务功能,并以一种统一且方便的机制来实现各种主动需求。在主动数据库中,基于状态定义的条件、相应响应的活动和时间性都作为数据库的一部分被定义,系统的“监视器”随时监视和自动评价有关的状态;一旦评价为真(即条件成立),即触发相应的活动。而这些都无需用户或应用程序干预。3 主动数据库在装备仓库物资管理中的应用
主动数据库要求把主动性功能用统一的方法与原有数据库集成在同一数据库系统中。它除了强调“主动服务”之外,更强调用“统一机制”来实现,这种“统一机制”就是规则机制。3.1 规则库
主动数据库常采用事件驱动的ECA规则模型,即事件- 条件 - 动作(Event - Condition - Action)规则。事件驱动的“事件 - 条件 - 动作”的一般形式为:WHEN < 事件表达式>IF <条 件 1>THEN<动 作 1 >END IF ECA规则由事件、条件、动作三部分组成。其中事件、条件、动作的描述如下: (1)事件 ( Event)一引发规则执行的原因。 (2)条件( Condition)一规则被执行后要检查的内容。 (3)动作 (Action)一规则被触发且条件为“真”时要执行的动作。 上述事件驱动的“事件一条件一动作”规则的语义是:当ECA规则规定的事件发生时,计算机就主动触发执行IF一THEN规则,即当条件满足时执行相应的动作,约束项规定执行规则动作的约束条件,并且接着逐个检查下一个IF -THEN规则,直到执行完为止。 下面以装备仓库中一些对主动数据库的需求和应用的例子说明规则库的定义: 装备仓库存储的物资不但包括成品装备,还包括各种装备的零部件、维修器材等,其中很多装备和器材都有存储期限,超过存储期限被将列为待报废物品,如橡胶制品、塑料制品等,如不及时对其进行处理,将造成极大浪费;为延长物资的存储时间和保持其良好的状态,应定期对其进行保养,如车辆季节性开启、封存、试运转,在装备器材种类数量繁多,管理人员无法兼顾时,如不及时提示管理人员进行保养,会造成一定的损失;为保证一些常用装备和器材的及时供应,其库存数据不应低于一定限度,低于一定数量时应及时采购。 将上述需求定义成“事件—条件—动作”规则如表1所示。 本文提出的规则的外部表现形式为图表的形式,而在装备数据库系统中,需先将规则的图表转化成统一的表格形式,将每一条规则都视为一条记录存入装备数据库中对应的规则表中。表1 规定制定示例
| 规则号 | 规则名称 | 事 件 | 条 件 | 动 作 |
| 1 | 装备器材存储时限限定 | 查询已储存时间 | 储存时间接近、达到或超出最长储存时限 | 询问用户是否将同批装备器材列为待报废,并发出提示信息 |
| 2 | 装备器材保养时限限定 | 查询最近一次保养时间 | 最近一次保养时间与当前时间间隔达到或超出定期保养时限 | 提示管理人员该装备器材已到保养期限 |
| 3 | 装备器材库存底限限定 | 库存装备器材数量减少 | 装备器材数量低于库存数量底限 | 提示管理员当前库存数量低于库存数量底限 |
| … | … | … | … | … |
3.2 规则执行流程
以上列出装备仓库管理中应用主动数据库的几个简单规则,下面给出如图1所示的主动数据库系统的规则执行流程图。
图1 规则执行流程图事件检测:确定规则所关心的事件是否发生,事件检测可以在用户进行操作时进行,可以通过触发器,设定事件发生的条件,自动执行。 事件分析:分析与发生的事件有关的规则,确定规则是否被触发。 动作执行:执行被触发规则中的动作部分。如规则(1)中,如用户同意将过期装备器材列为待报废,动作执行将对数据库进行修改。 结果显示:是动作执行的后续部分,显示出动作执行的结果,如上述三个规则中向用户发生提示信息。