(计算机应用技术专业论文)针对oracle服务器的linux内核的研究与定制.pdf_第1页
(计算机应用技术专业论文)针对oracle服务器的linux内核的研究与定制.pdf_第2页
(计算机应用技术专业论文)针对oracle服务器的linux内核的研究与定制.pdf_第3页
(计算机应用技术专业论文)针对oracle服务器的linux内核的研究与定制.pdf_第4页
(计算机应用技术专业论文)针对oracle服务器的linux内核的研究与定制.pdf_第5页
已阅读5页,还剩113页未读 继续免费阅读

(计算机应用技术专业论文)针对oracle服务器的linux内核的研究与定制.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

针对o r a c l e 服务器的l i n a x 内核的研究与定制 摘要 摘要 网络带宽和上网用户数的不断增长给网络服务器带来了很大的负 载,人们正在用各种方法提高服务器的整体性能,相对地减轻服务器的 负载。本文探索了根据单一应用的运行特性定制操作系统的方法,并在 以l i n u x 为操作系统的专用o r a c l e 服务器上具体实施,使专用o r a c l e 服 务器的整体性能有了明显提高。 本文首先介绍了l i n u x 操作系统、o r a c l e 数据库管理系统和性能评测 方面的基本概念,概述了国内外相关研究的现状。接着,归纳了操作系 统定制的研究方法,描述了实验所需评测平台的搭建步骤。然后,分析 了l i n u x 内核的进程调度器和磁盘i 0 调度器的源代码,并结合o r a c l e 数据库管理系统相关部分的运行特性,探索了对l i n u x 进程调度器和磁 盘i 0 调度器的定制方案。最后,说明了定制方案在评测平台上的评测结 果。 本文探索了根据应用的运行特性定制操作系统的研究方法,为其他 相关研究提供了可借鉴的思路。同时,由于提高了以l i n u x 为操作系统 的专用o r a c l e 服务器的性能,所以将有利于l i n u x 向服务器领域的进一 步发展和o r a c l e 数据库管理系统的广泛应用。 关键词:l i n u x 内核系统定制性能优化进程调度磁盘调度 作者:金震江 指导老师:杨季文 a b s t r a c tt h er e s e a r c ha n dt u n i n go f l i n u xk e r n e lf o ro r a c l es e r v e r t h er e s e a r c ha n dt u n i n go fl i n u xk e r n e lf o ro r a c l es e r v e r a b s t r a c t i 。h ei n c r e a s eo fn e t w o r kb a n d w i d t ha n dt h en u m b e ro fn e t w o r ku s e r s b r i n g st r e m e n d o u sl o a dt on e t w o r ks e r v e r s p e o p l ei su s i n gv a r i o u sm e t h o d s t oi m p r o v ew h o l ep e r f o r m a n c eo fs e r v e r s ,s ot h el o a do fs e r v e r si sr e l a t i v e l y r e d u c e d t h i sd i s s e r t a t i o ne x p l o r e sm e t h o d so ft u n i n go sa c c o r d i n gt ot h e r u n n i n gc h a r a c t e r i s t i c so fs i n g l ea p p l i c a t i o n ,a n di m p l e m e n t si t o no r a c l e s e r v e rb u i l to nl i n u xo s a sar e s u l t ,t h ep e r f o r m a n c eo fo r a c l es e r v e r i s i m p r o v e dd i s t i n c t l y f i r s t l y ,t h ed i s s e r t a t i o ni n t r o d u c e st h eb a s i cc o n c e p t so fl i n u xo s 、 o r a c l ed b m sa n dp e r f o r m a n c ee v a l u a t i o n t h e ni ts u m m a r i z e st h ec u r r e n t s t a t u so fc o r r e l a t i v er e s e a r c h e s s e c o n d l y , t h ed i s s e r t a t i o nc o n c l u d e st h e r e s e a r c hm e t h o d so fo st u n i n g ,a n dd e s c r i b e sb u i l d i n gs t e p so fe v a l u a t i n g p l a t f o r m t h i r d l y , t h ed i s s e r t a t i o na n a l y s e sp a r t so fs o u r c ec o d eo fl i n u x k e r n e l ,a n de x p l o r e st h et u n i n gs c h e m e so fl i n u xp r o c e s ss c h e d u l e ra n dd i s k i os c h e d u l e rb yc o m b i n i n gt h er u n n i n gc h a r a c t e r i s t i c so fo r a c l e a tl a s t ,t h e d i s s e r t a t i o np r e s e n t st h ee v a l u a t i o nr e s u l t so ft u n i n gs c h e m e s t h i sd i s s e r t a t i o ne x p l o r e sr e s e a r c hm e t h o d so ft u n i n go sa c c o r d i n gt o r u n n i n gc h a r a c t e r i s t i c so fa p p l i c a t i o n ,s oi t c a nb er e f e r r e db yc o r r e l a t i v e r e s e a r c h e s a tt h es a m et i m e ,b e c a u s eo fi m p r o v i n gt h ep e r f o r m a n c eo f o r a c l e s e r v e ro nl i n u x ,i tc a nm a k et h ef u r t h e rd e v e l o p m e n to fl i n u xi ns e r v e r d o m a i na n dm a k et h ec o m p r e h e n s i v ea p p l i c a t i o no fo r a c l ed b m s k e y w o r d s :l i n u xk e r n e l ,s y s t e mt u n i n g ,p e r f o r m a n c eo p t i m i z a t i o n ,p r o c e s s s c h e d u l e r ,i os c h e d u l e r i i w r i t t e nb yj i nz h e n j i a n g s u p e r v i s e db yy a n gj i w e n 9 5 6 6 0 0 苏州大学学位论文独创性声明及使用授权声明 学位论文独创性声明 本人郑重声明:所提交的学位论文是本人在导师的指导下,独立 进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文 不含其他个人或集体已经发表或撰写过的研究成果i 也不含为获得苏 州大学或其它教育机构的学位证书而使用过的材料。对本文的研究作 出重要贡献的个人和集体,均已在文中以明确方式标明。本人承担本 声明的法律责任。 研究生签名:冱! 篷i 至日期:益! :2 乡 学位论文使用授权声明 苏卅i 大学、中国科学技术信息研究所、国家图书馆、清华大学论 文合作部、中国社科院文献信息情报中心有权保留本人所送交学位论 文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论 文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的 保密论文外,允许论文被查阅和借阅,可以公布( 包括刊登) 论文的 全部或部分内容。论文的公布( 包括刊登) 授权苏州大学学位办办理。 研究生签名:镒丝:日期:丛:上:2 乒 导师签利咨弪日期:出矽 针对o r a c l e 服务器的l i r t u x 内核的研究与定制 1 1 背景 第1 章引言 从1 9 4 6 年计算机诞生到现在,计算机的计算能力和通信网络的带宽 一直在飞速增长。在硬件方面,著名的摩尔定律在过去的四十年一直有 效,并且可以预见,在未来的十年,摩尔定律仍将有效【1 】;在网络方面, 宽带上网已经成为上网接入的主流,千兆网络的启用也使网络流量急剧 增长。上述两方面的进步在促进因特网和其他专用网络发展的同时,也 给这些网络上所承载的各种服务提出了挑战。 1 1 1 问题的提出 随着计算机技术和网络技术的飞速发展,基于网络的应用和服务越 来越普遍。c n n i c 第1 7 次互联网络发展统计报告指出截至2 0 0 5 年1 2 月3 1 日,宽带上网网民人数为6 4 3 0 万人,比2 0 0 4 年增加了2 1 5 0 万人, 增长率为5 0 2 ,宽带上网已经成为上网接入的主流【2 j 。据2 0 0 3 年3 月 i d c 最新调查指出,互联网的流量将在五年内翻一倍。i d c 认为,宽带 的出现,如d s l 、c a b l em o d e m 和卫星接入的方式是网络流量飞速增长 的主要原因1 3 】。 网络应用和服务的关键部分之一是服务器,因为网络中的绝大部分 流量都要从服务器发出。因此,为了保证网络用户获得良好的服务质量, 必须提高服务器的性能,以适应日益增长的服务需求。 如何提高服务器的性能成为当今计算机研究的热点问题【4 】。提高服务 器性能可以从硬件和软件两方面来着手。 在硬件方面,提高服务器性能有两种主要的方法。一种是采用流行 的集群方法,使用多台服务器组成服务器群,服务器群中各个节点共同 提供服务,总的服务负载通过各种分配机制在节点间平衡。另一种是对 第1 章引言 针对o r a c l e 服务器的l i n u x 内核的研究与定制 单服务器添加硬件或采用高速硬件来提高性能。服务器在增加硬件的同 时可能需要辅以软件的升级,特别是系统软件,以便它们支持更多的硬 件。 在软件方面,提高服务器性能也有两种主要的方法。一是改进系统 软件的设计,以使系统高效地利用资源,比如l i n u x 内核中不断改进的 内存分配算法、进程调度算法等。二是应用软件的优化配置,大型应用 软件都有复杂的配置参数,针对不同的应用环境,可以通过对大型软件 进行特别配置来提高系统的性能。 上述几种方法都能提高系统性能,各有优缺点。硬件方法对性能的 提升幅度较大,收效快,但要投入额外经费添置硬件设备,开销会比较 大。软件方法不需要硬件投入,开销很小,但是性能提升幅度有限。 软件包括系统软件和应用软件,上面提到的软件方法都是孤立的调 整应用软件或优化系统软件,没有利用两者都是软件的特点把它们综合 起来考虑,因此不能充分发挥基于特定硬件的软件整体效能。充分挖掘 软件系统的整体能力是性能优化的主要手段。 1 1 2 解决方法 服务器的性能取决于硬件和软件两方面因素。在特定硬件上,如果 软件设计得足够好,那整个系统的性能会在该硬件上达到最高。但是, 现在的软件系统一般分为操作系统和应用程序,或者说是分为系统软件 ( 系统软件的概念比操作系统大,它包括操作系统) 和应用软件。它们 一般由不同的软件生产商或组织提供,比如某个o r a c l e 服务器上,l i n u x 操作系统由红帽子公司提供,o r a c l e 数据库管理系统由o r a c l e 公司提供。 主流服务器操作系统能够为服务器提供良好的支持,这种支持主要体现 在伸缩性方面,比如支持多处理器、大内存和磁盘阵列等。这些操作系 统一般是通用的,虽然它们能够较好地支持大多数服务器应用,但是并 不能最好地支持某种特定的服务器应用。在特定的应用环境中,包括操 作系统在内的软件系统并没有充分挖掘软件的整体潜力。 针对o r a c l e 服务器的l i n u x 内核的研究与定制第1 章引言 随着计算机硬件成本的下降和网络服务器负载的增大,现在很多服 务器都只提供单一的服务( 在一台服务器上只运行一种服务器应用) ,这 就使专用服务器有了自己独特的运行特性。 因此,综合以上两点,即操作系统的通用性和服务器的专用性,本 文提出了“根据上层应用定制操作系统,以提高专用服务器性能”的思 想。 1 1 3 方法的可行性 l i n u x 操作系统的出现和专用服务器的广泛使用是实现以上思想的 基础: 1 ) l i n u x 是开源的。以前操作系统的代码都属于某个公司或组织, 并不对外公开。有一个开源的操作系统是实现以上构思的前提,正是开 源l i n u x 的出现使本文有了实现以上思想的载体。 2 ) l i n u x 是通用的。l i n u x 是一个通用的操作系统,它可以较好地支 持桌面环境和服务器环境。它的通用性使得它还有改进的空间。 3 ) l i n u x 是广泛应用的。l i n u x 的逐步成熟( 能够较好支持服务器的 硬件环境) 使得它越来越多地被用于各种关键服务器中。因此对其进行 优化,提高l i n u x 操作系统上某种应用服务的性能是很有意义的。 4 ) 由于服务器的负载不断增大,现在很多服务器都只运行一种服务, 甚至有些关键服务由服务器集群来提供。专用服务器的普及促进了该思 想的提出,使得该思想有广泛的应用前景。 因此,正是现在,l i n u x 在服务器环境中的广泛运用和专用服务器的 普及,使得根据上层应用的运行特性来定制操作系统,以使专用服务器 性能提高的思想有巨大的意义。该思想不仅适用于单服务器,也适用于 服务器集群,因为服务器集群中的服务器都是专用的,而且每台服务器 性能的改进也将促使整个集群性能的改进。 第1 章引言 针对o r a c l e 服务器的l i n u x 内核的研究与定制 1 2 课题的内容及意义 1 2 1 课题内容 现在很多应用服务器都是以数据库服务器作为数据存储辅助,数据 库服务器的性能在很大程度上可以决定应用服务器提供的服务质量。在 数据库服务器方面,l i n u x 加o r a c l e 构建数据库专用服务器的应用系统已 相当普遍。据g a r t n e rg r o u p 称o r a c l e 拥有最大的l i n u x 市场份额和l i n u x 市场最高的年增长率:2 0 0 4 年o r a c l e 的l i n u x 市场份额为8 0 5 ,而2 0 0 3 年为6 9 ;在快速增长的l i n u x 市场中,o r a c l e 的收入增长率高达1 5 5 。 o r a c l e 数据库产品市场营销高级总监w i l l i eh a r d i e 说:“以其超过8 0 的 市场份额,o r a c l e 成为l i n u x 平台数据库的最佳选择。基于低成本的l i n u x 服务器的集群数据库应用系统提供了当今企业正在寻求的性能、可伸缩 性和可靠性”1 5 。 按照“根据上层应用定制操作系统,以提高专用服务器性能”的思 想,本课题的主要内容就是根据o r a c l e 服务器的运行特性定制l i n u x 操 作系统内核,以使专用o r a c l e 服务器提供更好的性能。 虽然现在集群系统很流行,但是本文的改进都只基于单服务器环境。 因为,一方面现有的很多服务器确实运行在单服务器环境中,另一方面, 对单服务器性能的改进也能提高服务器集群的性能【4 1 。 本课题所选择的l i n u x 操作系统是f e d o r ac o r e3 ( 下面简称f c 3 ) , l i n u x 内核版本为2 6 9 ( 截止到2 0 0 6 年3 月2 0 号,官方内核的发布版 本为2 6 1 6 ) ,o r a c l e 服务器版本为o r a c l e 8 1 7 服务器版。 1 2 2 主要工作 本课题涉及的内容比较多,完成课题需要进行以下几方面的工作: 1 ) 评测平台的构架。要构架一个专用的o r a c l e 服务器和一个评测环 境。本文采用了较为流行的t p c c 标准规范来建立评测环境。 针对o r a c l e 服务器的l i n u x 内核的研究与定制第1 章引言 2 ) o r a c l e 运行机制的研究。通过对o r a c l e 运行机制的研究,发现一 些它独有的特性,这些特性将作为定制的依据。本课题主要研究了o r a c l e 在进程调度和i o 调度方面的特性。在进程调度方面,发现o r a c l e 进程 都是交互进程,都有较频繁的睡眠,并找出了o r a c l e 进程的等待原因和 内核睡眠方式之间的关系。在i o 调度方面,发现o r a c l e 进程采用同步 读写方式操作文件,它们对数据文件的访问是随机的。 3 ) l i n u x 内核代码的研究。要修改或定制l i n u x 内核就必须对其原有 框架和算法有所了解,才能知道它是如何不适应o r a c l e 和如何修改。本 课题主要研究了l i n u x 内核的虚存管理、进程调度和i o 调度的算法并详 细阅读了相关实现代码。 4 ) 观察数据的收集和分析。为了确定l i n u x 内核中哪些地方不适用 于o r a c l e ,必须收集o r a c l e 服务器运行时的内核层数据,并对它们进行 统计分析。本课题实现了一个数据收集和分析的工具k r d a n a l y s e r ,它 的主要功能是收集和分析o r a c l e 服务器运行过程中内核相关子系统产生 的运行数据。 5 ) 改进方案的探索。在确定l i n u x 内核中不适用于o r a c l e 的地方后, 提出一些改进方案,并且在改进一验证一再改进过程中不断完善。本课 题在进程调度和i o 调度方面提出了两个改进方案。对进程调度,本文提 出了基于唤醒方式的动态优先级计算方法;对i o 调度,本文提出了读写 平等和适当后退的策略。 6 ) 服务器性能的评测。性能评测是改进过程中不可缺少的手段。本 文对改进的进程调度器和i o 调度器进行了评测,并与定制前服务器的性 能进行了比较。评测结果为:进程调度器的改进使系统性能提高了8 ; i o 调度器的改进使系统性能提高了1 0 。 1 2 3 意义 本课题对l i n u x 、o r a c l e 和系统优化做了较为深入的研究,对l i n u x 内核做了一定的改进,因此本课题促进了l i n u x 的发展、尝试了性能优 弟l 荦5 1 言 针对o r a c l e 服务器的l i n u x 内核的研究与定制 化的新途径,在服务器应用领域有较大的意义: 1 ) 在一定程度上缓解了服务器的性能问题。以前人们一碰到性能问 题就考虑升级硬件,但硬件本身也有极限,更何况硬件的升级意味着成 本的增加。在特定硬件上,最大程度发挥软件的性能才是性能优化的重 要手段。本课题所提出的性能优化思路目前还很少被人使用,而且实验 证明,该思路确实能大幅度改进系统性能。 2 ) 为进一步开发针对不同应用的操作系统提供参考。本课题除了提 高专用o r a c l e 服务器的性能外,还探讨了在这过程中运用的研究方法, 为针对其他专用应用服务器定制操作系统提供了参考。 3 ) 有利于l i n u x 向服务器领域的进一步发展。近几年,l i n u x 在企业 级服务器领域表现出越来越强的竞争力,而服务器操作系统最重要的就 是其性能,通过充分利用l i n u x 开源特性使l i n u x 操作系统的性能在 o r a c l e 服务器上得到了提高,有助于提高l i n u x 操作系统进一步在服务器 操作系统市场上的竞争力。 4 ) 有利于l i n u x 在我国的发展。由于l i n u x 的安全性和低成本,使 得各国政府都青睐于l i n u x 。近几年,我国对l i n u x 的发展越来越重视, 在2 0 0 5 年批准4 0 所高等学校建设国家l i n u x 技术培训与推广中心。本 课题的研究为l i n u x 在我国的发展起到推波助澜的作用。 5 ) 有助于推动o r a c l e 的广泛应用。从前面的数据可以看出,o r a c l e 在l i n u x 操作系统上的比重非常大。针对o r a c l e 服务器定制l i n u x 后, o r a c l e 服务器的性能提高会使其更具竞争力。 1 3 本文组织结构 本文以如下方式组织: 第一章引言,这部分对本课题的背景做了简单描述,并给出了课题 的内容、主要工作和意义。 第二章相关知识和研究现状,这部分先介绍了本课题相关的一些知 识,包括l i n u x 、o r a c l e 和性能评测,然后总结了课题相关的国内外研究 针对o r a c l e 服务器的l i n u x 内核的研冤与定制第1 苹引言 现状。 第三章研究思路和平台构架,这部分介绍了本课题的研究方法,描 述了研究所需基础工作的准备情况。 第四章进程调度的优化,这部分是本文的两个核心之一,首先描述 了o r a c l e 的进程调度特性、l i n u x 的进程调度算法,然后分析了收集的相 关内核数据,最后提出了优化方案并进行了评测。 第五章i 0 调度的优化,这部分是本文的另一个核心,首先描述了 o r a c l e 的i 0 调度特性、l i n u x 的i 0 调度算法,然后分析了收集的相关 内核数据,最后提出了优化方案并进行了评测。 第六章结束语,在对所做工作进行简要总结后,提出了进一步的工 作设想。 第2 章相关知识及研究现状针对o r a c l e 服务器的l i n u x 内核的研究与定制 第2 章相关知识及研究现状 2 1 l i n u x 的介绍 2 1 1 l i n u x 简介 l i n u x 是一个免费使用和自由传播的类u n i x 操作系统,它最早是由 芬兰学生l i n u st o r v a l d s 在1 9 9 1 年开发出来的。之后,世界各地的l i n u x 爱好者先后加入到l i n u x 系统开发工作中,他们纷纷把它作为学习和研 究的对象,对其进行深入的分析改造,取其精华、去其糟柏,并不断增 加新功能。随着i n t e m e t 的普及,短短几年里,l i n u x 就迅速成长成为一 个拥有庞大用户、性能稳定和功能完善的操作系统。 l i n u x 从一开始就是一个遵循g p l 协议的自由软件,具有良好的开 放性、简洁的功能和开放的结构。它的目的是建立不受任何商品化软件 版权制约的、全世界都能自由使用的u n i x 兼容产品。 l i n u x 受到广大计算机爱好者的喜爱,主要有两个原因:一是它属于 自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可 以根据自己的需要对它进行必要的修改;另一个原因是,它具有u n i x 的 全部功能,任何使用u n i x 操作系统或想要学习u n i x 操作系统的人都可 以从l i n u x 中获益。 2 1 2 l i n u x 发展历史 l i n u x 操作系统的诞生、发展和成长过程始终依赖着以下五个重要 支柱:u n i x 操作系统、m i n i x 操作系统、g n u 计划、p o s i x 标准和 i n t e m e t 网络【6 】。 l i r m x 的发展历史要从内核版本的变迁来讲: 1 11 9 9 1 年,l i n u st o r v a l d s 在新闻组c o m p o s m i n i x 上发布了大约有 8 针对o r a c l e 服务器的l i n u x 内核的研究- 9 定制第2 章相关知识及研究现状 一万行代码的l i n u xv 0 0 1 版本。 2 ) 1 9 9 4 年,l i n u x l 0 发布,代码量为1 7 万行,当时是按照完全自 由免费的协议发布,随后正式采用g p l 协议。至此,l i n u x 代码的开发 进入良性循环。由于拥有了丰富的操作系统平台,所以l i n u x 代码中充 实了对不同硬件系统的支持,大大提高了跨平台的移植性。 3 ) 1 9 9 6 年,l i n u x2 0 内核发布,此内核有大约4 0 万行代码,并可 以支持多个处理器。此时的l i n u x 已经进入了实用阶段,全球大约有3 5 0 万人使用。 4 ) 2 0 0 3 年1 2 月,l i n u x2 6 内核的推出,无论是巩固l i n u x 在服务 器领域的主流地位,还是推进它在桌面操作系统领域的推广进程,都起 到不可估量的作用,标志着l i n u x 真正具有在企业级服务器环境中使用 的能力【7 】。 l i n u x 的发展除了大批计算机爱好者的参与外,也少不了一些大型厂 商的支持,其中最重要的厂商包括i b m 、r e d h a t 和o r a c l e 。l i n u x 一开 始只是由一些爱好者在自己的主机上使用,然后慢慢地被用于一些边缘 服务器上,随着爱好者和大型厂商的支持,l i n u x 不断取得进步,凭借其 优异的性能,现已在关键服务器中被广泛使用。 2 1 3 l i n u x 操作系统发行版本 l i n u x 操作系统一般有四个主要部分:内核、s h e l l 、文件结构和实用 工具【8 】。内核由k e r n e l o r g 发布,l i n u x 的各个操作系统发行商根据自己 产品的目标环境会对内核稍作修改,然后加入自己的s h e l l 、文件结构、 外围应用软件、安装界面和系统管理工具来组成自己的l i n u x 操作系统。 最常见的l i n u x 的发行版本有s l a c k w a r e 、r e dh a t 、d e b i a n 、o p e n l i n u x 、 s u s e 、r e d f l a g 、t u r b o l i n u x 和a s i a n u x 等等。各个发行商针对不同的环 境还有不同的版本,比如r e d f l a g 有针对桌面环境的r e df l a gl i n u x d e s k t o p 和针对数据中心服务环境的r e df l a gd a t ac e n t e r 版本。 第2 章相关知识及研究现状针对o r a c l e 服务器的l i n u x 内核的研究与定制 2 2 o r a c l e 数据库管理系统的介绍 2 2 1 o r a c l e 数据库管理系统简介 o r a c l e 数据库管理系统是以高级结构化查询语言( s q l ) n 基础的大型 关系数据库,它使用便于逻辑管理的语言操纵大量有规律数据的集合。 o r a c l e 数据库管理系统是目前最流行的客户明艮务器( c l i e n t s e r v e r ) 体系结 构的数据库之- - 9 1 。 o r a c l e 数据库具有如下特点: 1 ) 共享s q l 和多线程服务器体系结构减少了o r a c l e 数据库管理系统 的资源占用,并增强了o r a c l e 数据库管理系统的能力,使之在低档软硬 件平台上用较少的资源就可以支持更多的用户,而在较高档平台上可以 支持成百上千个用户。 2 ) 提供了基于角色( r o l e ) 分工的安全保密管理。在数据库管理功能、 完整性检查、安全性、一致性方面都有良好的表现。 3 ) 支持大量多媒体数据,如二进制图形、声音、动画以及多维数据 结构等。 4 ) 提供了与第三代高级语言的接1 :3 软件p r o * 系列,能在c 和c + + 等主语言中嵌入s q l 语句及过程化( p l s q l ) 语句,使第三代高级语言也 能方便地操作数据库中的数据。 5 ) 提供了新的分布式数据库能力。可通过网络较方便地读写远端数 据库里的数据,并拥有对称复制的技术。 2 2 2 o r a c l e 发展历史 19 7 7 年软件开发实验室成立,该实验室构建一种新型数据库,称为 关系数据库系统( r e l a t i o n a ld a t a b a s es y s t e m ) 。他们所接手的第一个项目 是为美国政府做的,并将之命名为o r a c l e 。 1 9 7 8 年软件开发实验室为了让人们了解公司的主要业务范围,更名 针对o r a c l e 服务器的l i n u x 内核的研冤- f f 定制第2 苹相关知识及研咒现状 为关系软件公司( r s i ) 。 1 9 8 2 年r s i 更名为o r a c l e 系统公司( o r a c l es y s t e mc o r p o r a t i o n ) , o r a c l e 公司。 1 9 9 2 年o r a c l e 7 数据库发布。 1 9 9 7 年o r a c l e 8 数据库发布。 1 9 9 9 年o r a c l e 的o r a c l e 8 i 交付使用。这是世界上第一个互联网数 据库,同时也是o r a c l e 的互联网平台商务革新的核心部分。这个新的数 据库为o r a c l e 的低成本基础架构上的互联网应用产品带来了巨大的规 模效益。o r a c l e 8 i 的第三个发行版本o r a c l e 8 1 7 在2 0 0 0 年9 月发布,它 也是o r a c l e 8 i 的最后一个版本。 2 0 0 0 年底o r a c l e 公司正式发布了o r a c l e9 i 新数据库系统。 2 0 0 3 年9 月o r a c l e 公司正式发布o r a c l e l o g 新数据库系统1 0 1 。 2 2 3 o r a c l e 数据库的发行版本 o r a c l e 7 是一种完全的关系数据库系统,它不支持面向对象概念i n 。 o r a c l e 8 是一个引入面向对象概念的数据库系统,它既非纯的面向对 象的数据库也非纯的关系数据库,它是两者的结合,因此叫做“对象关 系数据库”i n 。 o r a c l e 8 i 比o r a c l e 8 提供了更多的功能,它除了共同的r d b m s 功 能外,还提供了许多与i n t e m e t 有关的能力,最重要的是它将j a v a 集成 为一种内部的数据语言,这种语言可充当替代品,另外它还集成了一个 w e b 服务器和开发平台( w e bd b ) f 】。 o r a c l e 9 i 对o r a c l e 8 i 做了一些改进,增加了些动态调整的手段,比 如对s g a ( 系统全局区,块共享的内存区域) 的动态调整,还有多数 据块大小的支持等。 o r a c l e l o g 是业界第一个为网格计算而设计的数据库系纠1 1 】。 第2 章相关知识及研究现状 针对o r a c l e 服务器的l i n u x 内核的研究与定制 2 3 性能评测和t p c c 2 3 1 性能评测概述 性能评测就是使用测试程序对系统进行测试,并给出相应的技术性 能指标,通过对技术性能指标进行分析比较,来确定系统的优劣【协。不 同的系统具有不同的性能技术指标,同一个系统对于不同目标的测试有不 同的性能技术指标。性能评测对于在众多的软硬件系统中选择一个适合 自己且性价比最高的系统十分重要。同时,性能评测也是性能优化过程 中不可缺少的环节。 经过实验,本文认为性能评测主要有确定评测目标、选择评测方式、 选择评测标准、选择或构建评测软件、搭建评测平台、确定性能指标、 实施评测和性能指标比较分析八个步骤组成。 本节将涉及评测目标、评测方式、评测标准、性能指标四个部分; 第三章的基础工作会涉及评测软件的构建和评测平台的搭建;第四、五 章中会进行实际的评测和性能指标的比较分析。 2 3 2 评测方式 在评测目标确定以后,评测性能的第一步就是要选择评测方式,目 前主要有三种评测方式【1 3 】: 1 ) 在真实环境中进行评测。 2 ) 使用用户定义的基准程序或针对某个特定行业的基准测试程序。 3 ) 使用通用基准测试程序。 评测方式的选择是由评测目标决定的。如果评测系统的目标是为某 一特定用户选择系统,那选择第一种方式是最好的,因为这种方式测出 的度量值比较真实,常常具有很明确和实际的含义;若由于某种原因第 一种方式不可行( 比如预算、时间因素) ,那也可以采用第二种方式。如 果评测系统的目标是系统提供商为了说明某个系统的性能,要与其他系 针对o r a c l e 服务器的l i n u x 内核的研宄与定制弟2 苹相关知识及研冤现状 统进行比较,那采用第三种方式比较好。这里有两个原因,其一是一个 系统往往可以应用于许多领域,对每个领域的应用都进行测试不大可行; 其二是,即使对每个领域的应用都采用了第一种或第二种方式,那每个 系统提供商进行评测的环境不可能完全一致,测试出来的数据就不具有 可比性,所以这时使用第三种方式比较好。 本文进行系统评测的目标是为了说明定制后系统性能的好坏,所以 选择使用通用基准测试程序来进行评测。 2 3 3 评测标准 确定了评测方式后就要选定一个评测标准,并以此标准来生成评测 工具和构建评测平台。本文定制的最终目标是提高o r a c l e 数据库管理系 统的性能,所以应该选择针对数据库管理系统的评测标准。 在线事务处理系统( o l t p ) 和决策支持系统( d s s ) 是当今流行的 两大类数据库应用系统。联机事务处理系统往往由大量做短暂d m l ( d a t a m a n i p u l a t i o nl a n g u a g e ) 事务的用户来访问,其用户主要关心的是吞吐量。 决策支持系统主要进行查询,几乎没有插入、更新和删除的d m l 事务, 其用户主要关心的是响应时间【l 们。从测试数据库性能的全面程度来说, 选择联机事务处理系统来测试是比较能说明问题的,因为它几乎涵盖了 数据库系统所有可能的操作。因此,本文选择针对联机事务处理系统的 测试标准。 现在较为流行的商务应用系统的评测标准规范是由事务处理性能委 员会( t p c ) 制定的,这套标准的命名都以t p c 开头,其中t p c c 是一个 联机事务处理( o l l p ) 的基准测试标准,本文选择它作为评测标准。 2 3 4 t p c 简介 t p c ( t r a n s a c t i o np r o c e s s i n gp e r f o r m a n c ec o u n c i l ,事务处理性能委员 会) 是一个非盈利性的组织,其宗旨是为了制定商务应用基准程序 第2 章相关知识及研究现状 针对0 r a c l 服务器的l i n u x 内核的研究与定制 ( b e n c h m a r k ) 的标准规范,提供性能和价格度量,并管理测试结果的发布。 t p c 在业界极其具有权威性【l5 。,许多大型服务器都参与t p c 的性能排名, 在t p c 的官方站点上有不同t p c 标准的十大排名。 t p c 的基准程序的标准规范( s t a n d a r ds p e c i f i c a t i o n ) 是对公共开放的, 可以在官方站点上得到,但是t p c 却不提供基准程序的代码。任何软硬 件厂商或其它测试者可以根据标准规范,最优地构建测试环境。为保证 测试结果的客观性,被测试者( 通常是厂家) 必须提交给t p c 一套完整的 报告,包括被测系统的详细配置、分类价格和包含五年维护费用在内的 总价格。该报告必须由t p c 授权的审核员核实( t p c 本身并不做审计) 【。 t p c 制定了一套商务应用基准测试标准,这套标准的命名都以t p c 开头,比如t p c a p p 、t p c c 、t p c h 和t p c w 。其中t p c a p p 是一 个应用服务器和w e b 服务器的基准测试标准;t p c c 是一个联机事务处 理( o l t p ) 的基准测试标准;t t c 。h 是一个决策支持系统( d s s ) n 基准测试 标准;t p c w 是一个w e b 事务的基准测试标准。 2 3 5 t p c c 标准规范 t p c - c 是专门针对联机事务处理系统( o l t p 系统) 设计的,一般情 况下这类系统也称为业务处理系统。t p c c 测试规范模拟了一个比较复 杂并具有代表意义的o l t p 应用环境:假设有一个大型商品批发商,它 拥有n 个仓库,每个仓库供应1 0 个销售点,每个销售点为3 0 0 0 名顾客 服务,每个客户平均一个订单有1 0 项产品。在每个仓库中有1 0 个终端, 每一个终端用于一个地区【l 孤。在运行时,1 0 x n 个终端操作员向公司的数 据库发出如下5 类请求: 1 ) n e w o r d e r :客户输入一笔新的订货交易。 2 ) p a y m e n t :更新客户账户余额以反映其支付状况。 3 ) d e l i v e r y - 发货( 模拟批处理交易) 。 4 ) o r d e r - s t a t u s :查询客户最近交易的状态。 5 ) s t o c k - l e v e l :查询仓库库存状况,以便能够及时补货。 针对o r a c j e 服务器的l i n u x 内棱的研究与定制 第2 章相关知识及研究现状 前4 种类型的请求,要求响应时间在5 秒以内;对于库存状况查询 的请求,要求响应时间在2 0 秒以内( 这里的响应时间是指从提交请求到 请求完成所用的时间) 。此外,在测试时每种事务的执行比例都有严格规 定,p a y m e n t 占4 3 ,d e l i v e r y 、o r d e r - s t a t u s 和s t o c k - l e v e l 各占4 , n e w - o r d e r 占4 5 1 16 】。这些比例都是t p c 经过对大量在线事务处理系统 的跟踪统计后得出的。 使用t p c c 标准构建出的数据库规模如图2 1 所示( 该图摘自参考 文献 1 8 】) 。根据该标准构架出来的数据库,一个仓库所占空间大约是1 0 0 兆的外存空间,如果有w 个仓库,那数据库就占用1 0 0 * w 兆的外存空间。 t p c c 为了模拟真实的运行环境,还规定了终端在两个事务之间需要 加入一定的延迟时间,包括键入时间、思考时间、界面反应时间等,每 个时间都有严格的规定,详细内容可参考文献 1 6 1 。 幽2 1t p c - c 标准规范的数据规模 t p c 。c 使用性能和价格性能比两种度量。性能由吞吐量来决定,单 位是t p m c ,其字面意思是每分钟处理的事务数,更准确地说,在t p c c 中它表示在按照比率处理其他事务的同时,系统每分钟所处理的 n e w - o r d e r 事务数。价格性能比是总价格性能,单位是$ t p m c ,即一分 钟内处理一个n e w o r d e r 事务所需的价钱,价格性能比往往用于比较不 同硬件环境之间的性能。 本文性能比较的对象是相同硬件环境上的不同l i n u x 内核,它们的 成本都相同,主要比较性能,无需比较价格,所以只需使用性能指标t p m c 第2 章相关知识及研究现状 针对o r a c l e 服务器的l i n u x 内核的研究与定制 来度量。 2 4 国内外研究现状 本课题的目标是提高o r a c l e 服务器的性能,因此有必要先了解一下 目前国内外对o r a c l e 服务器的性能优化有哪些方法,主要从o r a c l e 性能 调整和l i n u x 内核定制两方面来说明。o r a c l e 性能调整的资料较多,有很 多书籍和网上资料都有详细说明,而l i n u x 内核定制的参考文献相对较 少。 2 4 1 o r a e l e 的性能调整 o r a c l e 的性能调整,一般包括两个方面:一是指o r a c l e 数据库本身 的调整,比如s g a 、p g a 的优化设置;二是连接到o r a c l e 服务器的应用 程序以及s q l 语句的优化【l 7 j 。这两方面在很多o r a c l e 性能优化的书上都 有详细的阐述,并且通过以上两方面的调整,o r a c l e 服务器的性能会有 一定幅度的提升。 另外,在调整某些o r a c l e 参数的同时,也要辅以调整l i n u x 内核的 某些可调参数,比如共享内存大小参数、l i n u x 信号量参数等。 2 4 2 l i n u x 内核的定制 本课题的关键还是在于l i n u x 内核的定制,在l i n u x 内核的定制方面 有以下一些研究: 1 ) l i n u x 操作系统提供商的研究。许多l i n u x 操作系统提供商会根据 应用的不同环境发行不同的l i n u x 操作系统版本,比如r e d h a t 有 a d v a n c e ds e r v e r 版,r e df l a g 有d a t ac e n t e rs e r v e r 。他们对l i n u x 官

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论