验证面向对象数据库管理系统组件的策略
1. 背景引入
在数据库验证领域,不同机构开展了诸多故障注入实验。比如,科英布拉大学的团队针对不同版本的 Oracle DBMS 进行了一系列故障注入实验,大多运用 XceptionNT 工具,该工具基于硬件异常触发,在异常处理层面开展工作。巴西南里奥格兰德联邦大学也利用自主开发的工具开展了数据库验证研究,像使用 FiDE 工具验证 DBMS Interbase,模拟硬件故障;还使用 FiDE 和 ComFIRM 工具验证 DBMS Progress 的容错机制,分别模拟硬件故障和通信故障。
而我们的工作与上述有所不同。一方面,我们采用面向对象数据库管理系统(ODBMS),而非关系型数据库管理系统;另一方面,运行时引入的错误旨在模拟软件故障,且在高级层面进行故障注入,影响 Java 应用程序的属性和方法(参数及返回值)。
2. 目标系统
2.1 目标组件
Ozone 是用 Java 编写的对象管理器,能在事务环境中实现 Java 持久对象。它是遵循 LGPL 许可的开源项目,持久对象按照编程语言的语法进行编程。
Ozone 基于客户端/服务器架构,客户端通过“套接字”和类似 RMI 的协议连接数据库。为避免对象复制,Ozone 采用唯一实例架构,实际实例存于服务器端,客户端通过“代理”对象控制对象,代理对象可视为持久引用。每个类会添加外部接口,由 Ozone Pos 处理器(OPP)将其与原始类关联并生成新源文件。
Ozone 既可以独立使用(与客户端应用位于同一机器),也能用于分布式架构(位于服务器端)。目前的实验采用本地配置。
超级会员免费看
订阅专栏 解锁全文
7678

被折叠的 条评论
为什么被折叠?



