ORACLE数据库系统可靠性研究 ——基于应用的数据库系统健壮性测量

ORACLE数据库系统可靠性研究 ——基于应用的数据库系统健壮性测量

论文摘要

随着全球信息技术的快速发展,基于数据库系统的各种应用软件系统,已经在社会各行业中有着更为广泛和深入的应用。这些应用软件系统,尤其是那些对可靠性要求较高的应用领域的关键系统,一旦发生系统崩溃,将会带来巨大的麻烦和重大的损失。软件的健壮性是衡量软件质量的一个至关重要的指标,而典型的健壮性问题就是软件在异常输入以及异常情况等特定条件下的行为特征,如网络故障,操作系统底层API调用失败,资源(内存,磁盘)短缺等,这也是软件行业一直以来所面对的可靠性问题之一。目前,数据库应用软件系统,规模越做越大,功能越来越强,并且一般都必然建立在各种商用或开源的数据库系统之上,随之而来的健壮性缺陷导致的问题也越来越复杂,损失相应地也可能越来越大。因此,准确地测量数据库系统的健壮性,将有助于评估和改善现有应用软件系统的健壮性,或为新的应用软件系统选择更为合适的数据库平台。在软件健壮性研究领域,虽然目前已经有了很多卓有成效的探索和研究工作,但针对数据库库系统的健壮性研究却基本空白,软件从业人员很难根据健壮性指标在各种不同的数据库系统之间做出选择。本文从一个实际运行的数据库应用系统入手,通过改造其日志系统,收集和统计其日常运行生成的日志信息,构建出一个操作剖面。这个操作剖面反映了一个典型的数据库应用系统在一个统计周期内所调用的SQL操作的种类及各种SQL操作的出现频率。结合我们自己编写的SQL操作测试程序,我们可以将这个操作剖面映射到操作系统API和各种API的出现频率。再通过Ballista测试工具测试出操作系统中各API的健壮性指标,我们就可以推导出这个应用系统的健壮性指标,当我们在不同的数据库平台运行相同的测试时,我们也就能测量出各个数据库系统的整体健壮性指标。基于这个方法,本文给出了一个度量数据库系统健壮性的数学模型。为了进行我们的测试,我们在VMWare软件创建的RedHat Enterprise Linux 5 Update 2(内核版本2.6.18-8.el5)虚拟机上,安装了多种数据库系统,搭建了一个实际的测试平台。在这个测试平台上,我们设法编译并运行了Ballista测试套件,获得操作系统API的健壮性指标;同时,我们还编写了针对各数据库系统的SQL操作程序,分别测量了Oracle 10g、IBM Informix Dynamic Server 9和MySQL 5.1.7三种主流数据库系统的各项有关的实验数据,并应用我们建立的数学模型,计算得到了各种数据库系统的量化的健壮性指标。本文的测试结论可以为用户评估或改善现有的数据库应用系统的健壮性提供有益的帮助,也可以为用户新开发系统的数据库产品选型提供参考。

论文目录

  • 摘要
  • ABSTRACT
  • 1 绪论
  • 1.1 论文的背景和意义
  • 1.2 国内外研究现状
  • 1.2.1 基于硬件层的故障注入
  • 1.2.2 基于系统层的故障注入
  • 1.2.3 基于应用层的故障注入
  • 1.2.4 各种健壮性测试工具的比较
  • 1.3 论文主要工作和意义
  • 1.4 论文章节安排
  • 2 背景知识
  • 2.1 软件可靠性
  • 2.1.1 可靠性定义
  • 2.1.2 可靠性模型
  • 2.2 软件健壮性
  • 2.2.1 软件健壮性定义
  • 2.2.2 可靠性与健壮性的关系
  • 2.3 数据库系统
  • 2.3.1 数据库发展现状
  • 2.3.2 关系型数据库
  • 2.3.3 结构化查询语言
  • 2.4 Linux 相关知识
  • 2.4.1 Linux 进程
  • 2.4.2 Linux 系统调用
  • 2.4.3 Linux 的strace 工具
  • 2.5 本章小结
  • 3 BALLISTA 健壮性测试
  • 3.1 方法综述
  • 3.2 高可扩展性
  • 3.3 关于测试值
  • 3.4 测试结果分析
  • 3.5 本章小结
  • 4 操作剖面
  • 4.1 操作剖面的概念
  • 4.2 如何构建操作剖面
  • 4.2.1 分析客户剖面
  • 4.2.2 建立用户剖面
  • 4.2.3 定义系统模式剖面
  • 4.2.4 确定功能剖面
  • 4.2.5 构建操作剖面
  • 4.3 构建数据库应用的操作剖面
  • 4.3.1 数据库应用类型
  • 4.3.2 基准测试
  • 4.3.3 简化模型
  • 4.4 本章小结
  • 5 数据库健壮性模型设计
  • 5.1 测试方法框架
  • 5.2 健壮性模型
  • 5.2.1 API 健壮性
  • 5.2.2 SQL 操作健壮性
  • 5.2.3 数据库系统健壮性
  • 5.3 测量 SQL 操作的健壮性
  • 5.4 获取 SQL 操作的 API 序列
  • 5.5 本章小结
  • 6 实验及结果
  • 6.1 搭建测试平台
  • 6.1.1 操作系统选型
  • 6.1.2 Oracle 109
  • 6.1.3 Informix Dynamic Server 9
  • 6.1.4 MySQL 5.1.7
  • 6.1.5 VMware 虚拟机
  • 6.2 测试步骤
  • 6.2.1 操作系统API 健壮性测试
  • 6.2.2 构建操作剖面
  • 6.2.3 获取SQL 操作的API 序列
  • 6.3 实验结果
  • 6.4 本章小结
  • 7 总结和改进
  • 7.1 Ballista 测试工具
  • 7.2 基于应用的操作剖面
  • 7.3 建立自己的基准测试案例集
  • 7.4 本章小结
  • 参考文献
  • 致谢
  • 攻读学位期间发表的学术论文目录
  • 附件
  • 相关论文文献

    • [1].Oracle集群数据库压力测试与分析[J]. 佳木斯大学学报(自然科学版) 2020(01)
    • [2].基于Oracle数据库的航磁异常自动渲染技术[J]. 物探与化探 2020(01)
    • [3].Oracle智能化内存管理特性与配置方法[J]. 现代计算机 2020(12)
    • [4].Oracle分布式数据库与应用实践微探[J]. 电子技术与软件工程 2016(24)
    • [5].ORACLE字符集迁移及乱码问题的解析[J]. 赤子(上中旬) 2016(22)
    • [6].一种基于Oracle的街景分布式数据库实现方法[J]. 现代测绘 2017(05)
    • [7].基于服务器端的钻井工程计算的研究与运用——Oracle钻井数据库[J]. 科技创新与应用 2017(26)
    • [8].虚拟技术在Oracle数据库备份中的应用[J]. 信息化建设 2015(12)
    • [9].探讨Oracle数据库管理之控制文件[J]. 电子测试 2016(10)
    • [10].Oracle数据库系统及应用课程教学改革探索[J]. 湖南理工学院学报(自然科学版) 2016(03)
    • [11].Oracle数据库优化方法分析[J]. 硅谷 2014(24)
    • [12].Oracle分布式数据库系统及网络安全策略探究[J]. 数码世界 2020(04)
    • [13].基于Oracle数据库大数据的检索优化分析与设计[J]. 数码世界 2017(04)
    • [14].基于oracle日志挖掘的增量同步方案的设计[J]. 数码世界 2017(06)
    • [15].Oracle推出可自动响应安全威胁新产品[J]. 智能制造 2020(10)
    • [16].oracle事务控制机制研究[J]. 信息系统工程 2017(02)
    • [17].Oracle身份验证的攻击与防范[J]. 信息安全与技术 2015(11)
    • [18].Oracle数据库全文检索性能研究[J]. 现代计算机(专业版) 2016(27)
    • [19].基于Oracle的数据仓库的实现[J]. 福建电脑 2015(03)
    • [20].Oracle中两种数据同步技术的性能测试与评价[J]. 中国数字医学 2011(02)
    • [21].基于Oracle分布式数据库的查询算法改进研究[J]. 自动化与仪器仪表 2015(11)
    • [22].基于工作过程研究项目化教学在Oracle数据库教学中的应用[J]. 新课程研究 2020(06)
    • [23].Oracle在学生管理系统中的应用[J]. 信息通信 2014(05)
    • [24].ORACLE事务处理机制探析[J]. 电脑知识与技术 2013(15)
    • [25].林业信息化建设中oracle的应用[J]. 林业勘查设计 2012(01)
    • [26].基于快照的Oracle数据同步研究[J]. 办公自动化 2011(04)
    • [27].Oracle专题——外连接过滤[J]. 数字技术与应用 2011(08)
    • [28].基于Oracle的教务系统优化实践探索[J]. 中国教育信息化 2011(15)
    • [29].Oracle商务智能在现代企业信息中的应用[J]. 中国商贸 2010(02)
    • [30].大型关系数据库Oracle教学模式的改进[J]. 计算机教育 2010(06)

    标签:;  ;  ;  ;  ;  

    ORACLE数据库系统可靠性研究 ——基于应用的数据库系统健壮性测量
    下载Doc文档

    猜你喜欢