论文部分内容阅读
随着数据库管理系统(Database Management System,简称DBMS)的负载越来越多样化和复杂化,对数据库管理系统性能的要求也越来越高。DBMS作为应用的后台支撑系统,其性能决定着应用的性能,对其性能的管理是一项重要的任务。DBMS的性能管理通常需要一个性能模型来指导,因此建立DBMS的性能模型就成为DBMS性能管理的一项核心任务缓冲池的配置对DBMS的性能有着巨大的影响,建立DBMS的性能模型离不开对缓冲池的描述。缓冲池是内存中的一块存储区域,用于临时读入和更改数据页,应用的数据操作都在缓冲池中进行。缓冲池存在的理由是从内存访问数据要比从磁盘访问数据快得多,减少磁盘读写次数可以提高DBMS的性能。本论文采用的性能建模技术是分层排队网络模型。分层排队网络模型是典型的分析型建模方法,是排队网络模型的扩展,排队网络模型只能对系统的硬件资源建模,分层排队网络模型可以同时对软件资源和硬件资源建模。分层排队网络模型通过分析具有嵌套调用请求的软、硬件资源之间的关系,发现系统的性能瓶颈。DBMS执行查询时涉及到查询进程、缓冲池管理器、内存、硬盘等软硬件资源,它们之间形成调用关系和层次关系,更适合用分层排队网络模型来描述。基于以上事实,本文在分析DBMS执行查询流程的基础上提出基于缓冲池描述的DBMS分层排队网络模型,该模型由七个任务组成一个四层的分层排队网络模型,其中有三个软件任务(查询进程、逻辑读、物理读)和四个硬件资源(THINK、CPU、内存、硬盘)。运用分层方法将该性能模型划分为软件争用模型和硬件争用模型,描述模型输入和输出参数,搭建实验环境。本实验以DB2数据库为目标数据库,TPC-H基准测试的1G数据量和其经典查询分别作为数据源和负载,在不同的缓冲池规格大小下,进行实验,运用DB2数据库白带的快照监控器和系统性能测试工具,测试数据,获取模型输入参数值,运用分层方法算法以及平均值线性算法求解该模型的输出参数值,获得模型的预测响应时间。为了证明该模型的有效性,将获得的预测响应时间与该模型所对应的排队网络模型预测响应时间和实际的响应时间进行对比,实验结果证明,该基于缓冲池描述的DBMS分层排队网络模型的预测响应时间比所对应的DBMS排队网络模型预测的响应时间更接近实际的响应时间,从而,说明了该模型的合理性与有效性。