数据库联机事务处理测评系统中联机测试子系统的实现和InnoDB查询处理分析

数据库联机事务处理测评系统中联机测试子系统的实现和InnoDB查询处理分析

论文摘要

本文分成两部分,第一部分介绍一个数据库联机事务处理测评系统中联机测试子系统的程序实现。第二部分介绍开源数据库MySQL 5.0.0 alpha 版的InnoDB 引擎的查询处理的工作原理。这两部分工作的目的都是为了满足开发国产数据库的需要。联机事务处理测评系统对于国产通用型数据库产品的设计、开发、升级改进、回归测试、应用推广等过程都是必备工具。该系统设计实现主要基于国际通用的计算机系统性能测评的TPC 系列标准中的TPC-C标准,主要技术来源于开源测试工具dbt2。联机事务处理测评系统由ACID 测试,数据处理,联机测试,测试结果分析四个子系统组成。使用联机测试子系统对主流商用数据库Oracle Enterprise 9i 和国产数据库RedBase 7.5 进行的性能测评结果表明RedBase 的性能接近于Oracle。分析开源数据库MySQL的InnoDB引擎是为了积累数据库的基础实现技术,为开发国产数据库提供必要的技术支持。InnoDB 引擎是MySQL的执行引擎之一,它完全支持事务处理,支持四种事务隔离级别,实现了行锁,外键。InnoDB 查询处理由查询编译,查询优化,执行引擎三个模块组成。在近半年的研究时间中,作者使用专门的源码阅读工具Source Insight 分析了InnoDB 查询处理的全部源码,并在Windows 环境下使用VC6 对具体的示例进行了跟踪调试。目前已经基本弄清了InnoDB 的工作原理和工作方式,并形成了大量的分析技术文档,为今后数据库的研究工作提供了必要的积累。

论文目录

  • 第一部分 数据库联机事务处理测评系统中联机测试子系统的实现
  • 第1章 引言
  • 1.1 背景介绍
  • 1.1.1 TPC 组织简介
  • 1.1.2 TPC-C 简介
  • 1.2 测试现状
  • 1.3 本部分所做工作
  • 第2章 联机事务处理性能测试原理介绍
  • 2.1 商业模型和模拟程序环境
  • 2.2 数据库结构关系
  • 2.3 五种事务及其简要特点
  • 2.3.1 新订单(New-Order)
  • 2.3.2 支付操作(Payment)
  • 2.3.3 订单状态查询(Order-Status)
  • 2.3.4 发货(Delivery)
  • 2.3.5 库存状态查询(Stock-Level)
  • 2.4 五种事务满足的时间与比例及隔离级别要求
  • 2.4.1 五种事务要满足的时间要求
  • 2.4.2 隔离级别要求
  • 2.5 TPC-C 的测试数据量
  • 2.6 ACID 测试
  • 2.7 测试网络环境和测试系统框架图
  • 2.7.1 网络环境
  • 2.7.2 测试系统框架图
  • 2.8 测试流程
  • 第3章 联机事务处理测评系统的程序实现
  • 3.1 需求分析
  • 3.2 ACID 测试子系统
  • 3.3 数据处理子系统
  • 3.4 联机测试子系统
  • 3.4.1 主程序模块实现
  • 3.4.2 ODBC 连接池模块实现
  • 3.4.3 终端虚拟用户模块实现
  • 3.4.4 事务队列模块实现
  • 3.4.5 日志模块实现
  • 3.5 测试结果分析子系统实现
  • 第4章 联机事务处理性能测评过程
  • 4.1 创建数据库
  • 4.2 生成测试数据并导入到数据库
  • 4.3 创建执行事务的存储过程
  • 4.4 运行联机测试子系统进行测试
  • 4.5 使用结果分析子系统进行测试结果分析
  • 4.6 反复逼近测试
  • 第5章 测评结果
  • 5.1 ORACLE ENTERPRISE 91 测评结果
  • 5.1.1 测试结果报告
  • 5.1.2 每分钟执行的新订单事务统计
  • 5.1.3 新订单事务响应时间
  • 5.2 REDBASE 7.5 测评结果
  • 5.2.1 测试结果报告
  • 5.2.2 每分钟执行的新订单事务统计
  • 5.2.3 新订单事务响应时间
  • 5.3 测评结果分析
  • 第6章 结束语
  • 第二部分 INNODB 查询处理分析
  • 第1章 引言
  • 1.1 背景介绍
  • 1.2 研究现状
  • 1.3 本部分工作
  • 第2章 INNODB 查询处理简介
  • 第3章 INNODB 查询处理组成
  • 3.1 查询编译模块
  • 3.1.1 Lex 简介
  • 3.1.2 Yacc 简介
  • 3.1.3 InnoDB 的查询编译模块实现方式
  • 3.2 查询优化模块
  • 3.3 执行引擎模块
  • 3.3.1 评估子模块
  • 3.3.2 查询线程执行子模块
  • 第4章 INNODB 查询处理的主要数据结构
  • 4.1 符号节点
  • 4.2 全局符号表
  • 4.3 FORK 节点
  • 4.4 查询线程节点
  • 第5章 一个查询处理的示例
  • 5.1 示例说明
  • 5.2 示例执行过程
  • 5.3 示例要执行的SQL 语句
  • 5.4 词法语法分析
  • 5.4.1 创建第一个表的分析过程
  • 5.4.2 创建第四个索引的分析过程
  • 5.4.3 创建提交语句
  • 5.4.4 存储过程的创建
  • 5.5 查询图的执行
  • 5.5.1 创建第一个表的执行过程
  • 5.5.2 创建第四个索引的执行过程
  • 5.5.3 示例的其它部分执行
  • 5.5.4 语句链表的执行
  • 第6章 结束语
  • 参考文献
  • 摘要
  • ABSTRACT
  • 致谢
  • 导师及作者简介
  • 相关论文文献

    • [1].InnoDB重做日志深入分析[J]. 萍乡学院学报 2015(06)
    • [2].InnoDB表空间和缓存交互方式[J]. 网络安全和信息化 2017(02)
    • [3].MySQL的体系结构及InnoDB表引擎的配置[J]. 福建电脑 2009(07)
    • [4].修复损坏的InnoDB表空间[J]. 网络安全和信息化 2017(02)
    • [5].MySQL中InnoDB存储引擎在NUMA系统上的优化[J]. 科技传播 2011(01)
    • [6].城市照明管理公共服务云平台数据库设计与优化[J]. 软件导刊 2015(10)
    • [7].一种基于MySQL Innodb数据引擎的增备方法[J]. 计算机安全 2013(05)

    标签:;  ;  ;  

    数据库联机事务处理测评系统中联机测试子系统的实现和InnoDB查询处理分析
    下载Doc文档

    猜你喜欢