




已阅读5页,还剩81页未读, 继续免费阅读
(计算机应用技术专业论文)基于oracle数据库系统性能调整与优化研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 数据库系统的性能最终决定数据库的可用性和生命力大多数数据库系统在 运行一段时间后都会存在一定的性能问题,主要涉及数据库硬件、数据库服务器、 数据库内存、应用程序、操作系统、数据库参数等方面。因此,基于数据库系统 的性能调整与优化对于整个系统的正常运行起着至关重要的作用。数据库性能调 整与优化涉及到多个层面,通过统一规划、系统分析做出相应的调整,可以提高 数据库的稳定性和可用性,保障系统高效地运行,解决系统瓶颈,节约系统开销, 具有良好的应用价值,同时也对理论研究提供了一定的方法指导。 基于此,论文根据某商品订单管理信息系统查询子系统的开发实践,结合 o r a c l e 9 i 数据库的使用经验,将s q l 语句、o r a c l e 内存分配以及磁盘i o 等方面的 性能调整与优化问题作为主要研究内容,对其进行了深入地分析和讨论,给出了 一般情况下o r a c l e 数据库应用系统的性能调整策略及优化方法,以期推动o r a c l e 数据库性能管理以及优化技术的发展。最后进一步分析了基于1 - h b e r n a t e 和j d b c 这两种不同的持久化机制下的数据库访问效率。 首先,介绍了数据库性能调整的相关研究背景、论文选题意义以及数据库性 能调整与优化架构,涉及性能调整与优化的概念、性能评价指标以及数据库优化 的主要方面。 其次,对s o l 查询语句的优化、o r a c l e 内存的分配与调蹩、索引的创建、o r a c l e 表空间的分配、o r a c l e 分区以及聚簇存储这几种优化技术进行了详细的介绍。分析 比较了各种优化技术,归纳总结出提高系统性能的实用优化方法和技巧 接着,结合某商品订单查询子系统,采用相关的性能优化技术,进行具体的 实例优化,通过大量的实验,对使用各优化技术前后的性能评价指标进行对比并 加以分析,同时提出了具体的性能调整方法和措施。 最后,在分析数据持久化机制的基础上,阐述了使用h i b e r n a t e 持久化机制的 原因,提出了基于商品订单查询子系统的h i b e r n a t e 数据持久层解决方案,并给出 持久化层的具体实现,最后对基于h i b e r n a t e 和j d b c 这两种不同的持久化机制下 的数据库访问效率进行了对比分析。 关键词:订单查询予系统,数据库,o r a c l e ,性能调整与优化,j d b c ,h i b e r n a t e a b s t r a c t t h ep e r f o r m a n c eo fd a t a b a s es y s t e m se v e n t u a l l yd e t e r m i n e st h e i ra v a i l a b i l i t ya n d s u r v i v a b i l i t y m o s to ft h e mw i l lb r i n ga b o u ts o m ep e r f o r m a n c ep r o b l e m sm o r eo rl e s s a f t e rm u n i n gf o rap e r i o do ft i m e ,w h i c hm a i n l yi n v o l v ed a t a b a s eh a r d w a r e , d a t a b a s e s e r v e r , d a t a b a s em e m o r y , a p p l i c a t i o n s ,o p e r a t i n gs y s t e m sa n dd a t a b a s ep a r a m e t e r s ,e t c t h e r e f o r e , p e r f o r m a n c et u n i n ga n do p t i m i z a t i o no fd a t a b a s es y s t e m s ,w h i c hc o n c e r n m u l t i p l ea s p e c t s ,a r ev e r yv i t a lt ot h en o r m a lr u n n i n go ft h ew h o l es y s t e m w ec a n i m p r o v et h es t a b i l i t ya n da v a i l a b i l i t yo fd a t a b a s e ,g u a r a n t e ei t sh i # r u n n i n ge f f i c i e n c y , s o l v es y s t e mb o t t l e n e c k , r e d u c es y s t e mo v e r h e a d ,o b t a i nc o n s i d e r a b l ea p p l i c a b i l i t ya n d i nt h em e a n w h i l e ,p r o v i d es o m eg u i d e l i n e sf o rt h e o r e t i c a lr e s e a r c ht h r o u g hau n i f i e d p l a na n ds y s t e m a t i c a la n a l y s i st om a k ea p p r o p r i a t ea d j u s t m e n t b a s e do nt h ea b o v e - m e n t i o n e di d e a , b yv i r t u eo ft h ep r a c t i c eo fd e v e l o p i n go r d e r q u e r ys u b s y s t e mo fat y p i c a lg o o d sm a n a g e m e n ti n f o r m a t i o ns y s t e ma n dt h ee x p e r i e n c e o fu s i n go r a c l e9 i ,t h ep a p e rp r i n c i p a l l yp a y sa t t e n t i o nt ot h er e s e a r c ho nt h e p e r f o r m a n c et o n i n ga n do p t i m i z a t i o np r o b l e m so fs q ls t a t e m e n t s ,m e m o r ya l l o c a t i o n o fo r a c l ea n dd i s ci o ,e t c ,a n dm a k e sad e e pa n a l y s i sa n dd i s c u s s i ts u g g e s t si n g e n e r a ls o m ep e r f o r m a n c et u n i n gs t r a t e g i e sa n do p t i m i z a t i o na p p r o a c h e so fo r a c l e a p p l i c a t i o ns y s t e m st od r i v et h ed e v e l o p m e n to fo r a c l ep e r f o r m a n c em a n a g e m e n ta n d o p t i m i z a t i o nt e c h n o l o g y m o r e o v e r , s o m ep r o b l e m sa b o u ta c c e s se f f i c i e n c yo fd a t a b a s e u n d e rt h eh i b e m a t e - b a s e da n dj d b c h a s e de n v i r o n m e n ta r ea i s ow e l ld o c u m e n t e d f i r s t l y , t h ep a p e r i n t r o d u c e st h e c o r r e s p o n d i n g r e s e a r c h b a c k g r o u n d o f p e r f o r m a n c et o n i n go fd a t a b a s e ,s i g n i f i c a n c e o fs e l e c t e dt o p i ca n df r a m e w o r ko f p e r f o r m a n c et u n i n ga n do p t i m i z a t i o no fd a t a b a s ei n c l u d i n gt h e i rc o n c e p t s ,p e r f o r m a n c e e v a l u a t i o ni n d e xa n dp r i m a r ya s p e c t so fo p t i m i z a t i o n s e c o n d l y , i te l a b o r a t e so ns o m eo p t i m i z a t i o nt e c h n o l o g i e ss u c ha so p t i m i z a t i o no f s q lq u e r ys t a t e m e n t ,m e m o r ya l l o c a t i o na n dt u n i n go fo r a c l e ,c r e a t i o no fi n d e x , a r r a n g e m e n to fo r a c l et a b l es p a c e , d i s cd i v i s i o no fo r a c l ea n dc l u s t e rs t o r a g e i ta l s o c o m p a r e st h e s eo p t i m i z a t i o nt e c h n o l o g i e sa n ds u m m a r i z e ss o m ep r a g m a t i co p t i m i z a t i o n a p p r o a c h e sa n dt i p sf o rp e r f o r m a n c ei m p r o v e m e n to fs y s t e m a g a i n , b a s e do no r d e rq u e r ys u b s y s t e mo fat y p i c a lg o o d sm a n a g e m e n t i n f o r m a t i o ns y s t e m ,t h e p a p e ra d o p t sc o r r e s p o n d i n gp e r f o r m a n c eo p t i m i z a t i o n t e c h n o l o g i e st oo p t i m i z ec o n c r e t ei n s t a n c e s t h r o u g hal a r g ea m o u n to fe x p e r i m e n t s ,i t c o m p a r e sa n da n a l y z e sp e r f o r m a n c ee v a l u a t i o ni n d e xb e f o r ea n da f t e ru s i n ge v e r y 2 o p t i m i z a t i o nt e c h n o l o g y , a n di n t h em e a n t i m e ,p r o p o s e ss o m ec o n c r e t ep e r f o r m a n c e t u n i n ga p p r o a c h e sa n ds t r a t e g i e s f i n a l l y , a f t e ra n a l y z i n gd a t ap e r s i s t e n c em e c h a n i s m ,t h ep a p e re x p o u n d sw h y t o e m p l o yh i b e r n a t ep e r s i s t e n tt e c h n o l o g y , p r o p o s e sa s o l u t i o nt ot h eh i b e r n a t e b a s e dd a t a p e r s i s t e n c eo fo r d e rq u e r ys u b s y s t e ma n dg i v e sc o n c r e t ei m p l e m e n t a t i o no fp e r s i s t e n c e l a y e r i na d d i t i o n , i tc o m p a r e sa n da n a l y z e st h ed a t a b a s ea c c c s se f f i c i e n c yr e s u l t e df r o m l 埘dp o p 1 a xm e c h a n i s m sb a s e d 伽i - l i h e m a t e8 n di d b cr e s p e c t i v e t y 。 k e yw o r d s :o r d e rq u e r ys u b s y s t e m ,d a t a b a s e ,o r a c l e , p e r f o r m a n c et u n i n ga n do p t i m i z a t i o n , j d b c ,h i b e r n a t e 3 独创性声明 本人郑重声明:所呈交的论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写的研究成果,也不包含 为获得江西财经大学或其他教育机构的学位或证书所使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示了谢意 签名: 社吼趁6 盛:i 笋 关于论文使用授权的说明 本人完全了解江西财经大学有关保留、使用学位论文的规定,印: 学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校- 9 1 2 a 公布论文的全部或部分内容,- j 驼a 采用影印、缩印或其他复制手段保 存论文。 ( 保密的论文在解密后遵守此规定) 擀:每当虽一导师签名:逊日期:2 幺:纽:掣 1 绪论 1 绪论 1 1 研究背景 数据库技术是计算机科学技术发展最快、应用最广泛的领域之一,在信息管 理自动化程度日益提高的今天,数据库技术已经成为现代计算机信息系统和应用 系统的基础和核心数据库技术最初产生于2 0 世纪印年代中期,从最初的层次模 型、网状模型,到目前的关系模型、面向对象模型,已经过4 0 年左右的发展。 数据库建设是现代信息产业的基本建设工程,一个国家拥有多少自己的数据 库,能用数据库提供多少服务,是各国经济实力、文明程度和科技水平的重要标 志。我国引进数据库技术始于2 0 世纪7 0 年代末,自进入2 0 世纪8 0 年代以来,我国 数据库建设有了较大发展,从微型计算机上运行的数据库到当前大型数据库系统 的引入和应用,但从对数据库系统的应用效果和对数据库技术指标掌握上来比较, 与发达国家之间仍然存在较大的差距i l j 。 数据库技术应用从传统的商务数据处理不断扩大到许多新的领域,如计算机 图像处理、多媒体应用、商业管理、g i s 等,要使这些领域中应用的信息系统高效、 正常、安全地运行,其中最为显著的就是数据库的性能问题。在网络应用和电子 商务高速发展的时代,信息系统在国民经济建设中担负着越来越重要的任务,如 何使有限的计算机系统资源充分发挥应有的作用? 如何保证用户的响应速度和服 务质量? 如何保证未来的某个时间保持现有的运行性能? 这些问题都属于数据库优 化性能优化的范畴。随着数据库规模的不断扩大,数据库系统的性能问题也越来 越突出,数据库应用系统能否正常、高效地运行倍受关注,数据库优化技术方法 的探索具有非常重要的意义。 1 2 国内外研究现状 2 0 世纪7 0 年代,美国的t o n yd a u g h c n y 提出了数据库性能优化的概念,不仅对 数据库应用系统的研究起了重要作用,而且对数据库性能问题的研究也起了开创 性的作用。2 0 世纪8 0 年代,( p e r f o r m a n c et u n i n gb a s i c s ) 中提出了“性能调整”的 概念,论及性能调整是一项通过修改系统参数、改变系统配置( 硬件调整) 、优化组 件应用来改变系统性能的活动【甜。对此,o r a c l e 、m ss o ls e r v e r 等数据库业界通 常认为性能调整的目的是通过将网络流通、磁盘i 0 和c p u 时间减到最小,使每个 查询的响应时间最短并最大限度地提高整个数据库服务的吞吐量。在数据库性能 调整和优化技术的发展中,人们逐渐认识到数据库的性能调整技术是保障应用系 统和数据库稳定、高效运行的一项重要技术。 基于0 r a c i e 数据库系统性能调整与优化研究 ( 1 ) 数据库性能调整理论方面的研究 随着数据库理论逐步完善、成熟和发展,对数据库应用系统性能优化研究也 逐步深入,优化技术和方法日趋完善和成熟,尤其在关系数据库应用方面。目前, 数据库实例优化研究大多集中在o r a c l e 、s q ls e r v e r , s y b a s e 等数据库方面,它们 所采用的优化技术大多为查询优化技术,而且取得了很好地效果。m ss q l s e r v e r 对性能调整和优化的研究尤为深入,特别是针对其自身的特点,在数据库服务器 调整方法、大小估计与容量规划、应用调整等方面提出了较好的理论和实践方法【3 l o 人们所熟悉的o r a c l e 数据库在确定数据的分布时,为了提高代价估计的精确度,引 入直方图来描述数据值的分布。在它的最新版本o r a c l e1 0 g 中,将基于规则的优化 方法完全剔除,查询优化器在处理查询时只使用基于代价的优化方法,并在性能 优化调整方面提供了自动数据库诊断监控器a d d m 、应用的端到端追踪、自动优 化统计信息收集及自动共享内存管理等新特性 4 1 。现今,起源于伯克利( b s d ) 的数 据库研究计划的关系型数据库管理系统p o s t g r e s q l , 已经对查询优化给予了很大的 改进,其中一个重要的突破就是将基因算法( g a ,g e n e a r i t h m e t i c ) 应用到了查询优 化的领域中来嘲,此算法是种启发式的优化法,它通过既定的随机搜索进行操作, 可以对包含有极广查询需要的数据库应用领域。另外,美国a u s t i ni n s t i t u t e 着重于 数据库系统体系结构的研究,涉及内存结构方面的数据库缓冲区高速缓存、重做 日志缓冲区、共享池等问题,提出了数据重分布、共处理连接等概念【6 1 。m 1 t 的i r e n e g f i e 曙到随着数据库规模的扩大和系统中用户数日的增加,内部竞争的复杂性增 大,导致了数据库性能问题,按照投资优化策略( r o i ) ,提出了l o 。i - 步骤解决数据 库性能问题【7 】: 进行正确的数据库逻辑设计减少存储量; 进行正确的数据库物理设计减少多个软件竞争同一资源; 选择高效算法编写有效的应用程序; 优化数据库内存结构: 必要时优化内存结构; 必要时优化数据库; 必要时优化0 s ; 必要时优化网络; 必要时优化客户机; 必要时优化; 国内对数据库技术的研究起步较晚,对数据库优化技术的研究和应用相对来 讲不如国外成熟。目前,自主研发的主要国产数据库有北京人大金仓信息技术有 限公司的i a n g b a s e e s 、北京航天神舟软件公司的o s c a r 、东软集团有限公司的 2 ,绪论 o p e n b a s e 和武汉华工达梦数据库有限公司的d m 2 。国家8 6 3 计划对国产数据库软 件产品的研究开发给予了特别支持,设立了国家8 6 3 计划“数据库管理系统及其应 用”重大专项,极大推动了国产数据库软件的成长。其中,数据库k i n g b a s e f _ s 对于 运行过程中c p u 、内存等资源的使用经过了优化的系统设计处理,对它们的占用 要求不高,而且可以根据应用需要灵活调整,显著提高系统整体工作效纠8 j 。 0 s o 狃在代价估算上采用与s y s t e m r 类似的算法,主要考虑i o 开销和c p u 开 销,代价估算所需要的信息都存储在系统表中,它通过子查询提升技术、查询计 划缓冲机制、并发控制设计等优化技术提高数据库查询性能 9 1 。o p e n b a s e 数据库 系统采用了基于统计的查询优化策略,可以根据数据字典中的统计数据进行存取 路径选择实现自动查询优化;它支持逻辑优化和多字段复合索引以及嵌套循环等 多种高效的连接查询算法1 1 0 l ,它采用有限高度b + 树索引机制,实现了简单型和结 构型两种类型的索引文件。但o p e n b a s e 查询优化模块没有考虑查询重写,不能更 好地发挥查询优化的效能,而且由于它采用的是近乎于穷尽的搜索方法,从而不 能很好的处理多连接查询的优化问题。 近年来,针对基于数据库应用系统遇到的问题和数据库w e b 应用的需求,国 内外研究机构,公司提出来许多数据库性能调整的理论、原型和商用系统阁。有的 研究机构提出了一种基于w e b 数据库系统设计实现的性能调优新方法,该方法包括 由r d b m s 配置优化、应用模式设计优化和编程优化【1 1 j 。文献f 1 2 1 提出,在编程时 通过减少与后台连接和断开操作、建立和使用索引、多用存储过程和优化s q l 语句 可以优化系统性能有研究者分析m l s 数据库性能优化模型闯题,结合数据库系统 整体性能规划和软件竞争约束,提出了基于队列理论的单队列性能优化模型和封 闭队列网络性能优化模型建模方法1 1 3 l 。清华大学的汪东升提出了r n c e ( r c m o t eh i g h c o m p u t i n ge n v i r o n m e n t ) 的概念1 1 4 1 ,通过合理划分本地机和远端机的工作任务,引 入增量更新,压缩传送,检查点设置和恢复等多种传输措施,并集成负载平衡工 具,提供身份检查,日志记录等安全机制,b s 结构w e b i 作模式,具有联网、远 程执行过程对用户透明、系统安全性好等特点,满足数据库w e b 应用的性能调整 和优化需求。 目前,在数据库设计方面主要是采用反规范设计,来提高数据库应用系统查 询性能,常用的反规范技术有冗余数据、镜像表、派生表、分解表、组合表和重 新组表等陋1 _ 7 l ;此外,还有合理组织数据库物理文件、建立合适索引和使用视图 等。在查询优化方面,主要优化技术有索引技术、代数优化、物理优化、代价估 算优化、语义优化等i l ,l 踟,针对参数查询优化的边侧信息传递【埘,针对用户定义谓 词的完全排序优化i 矧,针对o r d e rb y , g r o u pb v 和d i s 缸c i 的排序优化【2 1 】,针对嵌 套查询的连接超图c h g 优化i 捌,联合选择条件主内存优化脚,表连接优化技术 卅 3 基于o r a ce 数据库系统性能调整与优化研究 和估算查询结果的直方图法瞄1 等。在系统性能测试和维护阶段,主要是调整数据 库系统内存分配、参数设置以及回滚段的管理等f 硐。在硬件调整方面,绝大多数 高性能解决方案都采用共享存储器簇结构,在这种结构中,多个服务器都连到外 部的r a i d 子系统上。还有研究提出了低成本的解决方案,例如在两个完全独立系 统之间通过t c p i p 协议实现磁盘数据复制的高性能系统闭。 ( 2 ) 数据库性能优化工具方面的研究 在数据库性能优化工具方面,可分为数据库产品自带的性能优化与监测工具 以及专有的性能优化工具两类。数据库产品自带的性能优化与监测工具有o r a c l e 提供的p e r f o r m a n c em a n a g e r 、s q l i 吾言跟踪工具等闭;s y b a s e 的s y b a s ea d a p t i v e s e r v e re n t e r p r i s e 和查询分析器【2 9 1 ;s q ls e r v e r2 0 0 0 提供的企业管理器、q u e r y a n a l y z e r 、s o l p r o f i l e r 、i n d e xt u n i n gw i z a r d 等工具。而专有第三方性能优化工具 不仅包括了数据库自带的性能优化与监测工具的功能,而且绝大多数都提供了数 据分析、警告、与其他r d b m s 产品集成等附加功能。例如,目前在商用数据库领 域l e c c ot e c h n o l o g yl i m i t e d 所提供的自动优化产品l e c c os q le x p e r t ,该产品 所使用的人工智能自动s q l i 尤化技术是对外部s q l 重写器的一种实现。外部s q l 重写器作为新的s q l o 化概念,它能够基于现有数据库的特性产生语义相等但语法 不同的s q 嚆句,它可以比数据库的查询优化器尝试更多的待选s q l i 吾句,能够达 到s q l 性能提高的目的,无需进行额外的统计。 1 3 研究意义与目的 o r a c l e 公司在数据库领域一直占据着领先地位。作为全球第一大数据库厂商, o r a c l e 现在可用于大型机、客户,服务器以及p c 平台,适合于各种操作系统,包括 o s 3 9 0 ( m v s ) 、各种u n i x 操作系统、l i n u x 、m i c r o s o f tw i n d o w s 和w i n d o w sn t 、 v a x v m s ,以及v m c m s 。同时,o r a c l e 数据库在国内外也获得了诸多成功应用。 几乎所有大型i n t e r n e t 站点都运行o r a c l e 数据库,企业资源规划应用程序包、数据 仓库以及许多公司的客户应用系统都依赖o r a c l e 。据统计,全球9 3 的上市c o m 公司、6 5 家“财富全球1 0 0 强”企业不约而同地采用o r a c l e 数据库来开展电子商务; 在中国几乎所有的电信行业使用的数据库都是o r a c l e ,中国银行、中国建设银行等 很多企业、政府单位及电子商务网站也采用t o r a c l e 作为数据库服务器【3 1 1 。o r a c l e 数据库产品在整个数据库产品的应用中占据5 0 ,并且有不断上升的趋势。 o r a c l e 数据库系统博大精深,其系统管理工作非常复杂。对于o r a c l e 数据库来 说,操作系统的性能、服务器硬件的性能、数据库的设计、表空间的规划、共享 池的设置、回滚段的管理、聚簇的使用、并行控制等无一不影响其运行的整体性 能。o r a c l e 数据库服务器是高度可优化的软件产品,对o r a c l e 数据库进行性能调整 4 1 绪论 与优化具有非常重要的意义。目前国内外关于o r a c l e 数据库系统的应用实例优化并 不多,而且讲解比较理论化因此,本文根据某商品订购管理信息系统的开发实 践,主要针对其商品订单查询子系统,结合o r a c l e g i 数据库的使用经验,从查询优 化、o r a c l e g g 存调整、磁盘y o 优化这三个方面进行实验测试,通过对各种优化技 术的介绍、分析和研究,对使用不同优化技术前后的性能评价指标进行比较,体 现各种优化技术对数据库运行效率的影响程度,提出o r a c l e 数据库应用系统性能优 化的合理方法,并对基于h i b e r n a t e 和1 i d b c 这两种不同的持久化机制下对原始数据 库的访问效率进行了对比分析。 1 4 论文的组织 数据库性能问题是当今诸如管理信息系统等众多数据库应用系统所面临的共 同问题,为了解决系统运行过程中遇到的种种瓶颈,对数据库性能调整理论和应 用的研究是迫切需要的。本文通过某商品订购管理信息系统的开发实践,主要针 对其商品订单查询子系统,对目前o r a c l e 数据库性能调整的一些优化技术的应用实 践进行了讨论,具有一定的理论研究价值和现实意义。各章节安排如下: 第一章综述了数据库性能调整的研究现状和发展概况,阐述了论文研究的 意义与目的。 第二章介绍了数据库性能调整与优化的基本概念,分析了系统性能评价指 标和数据库性能优化的主要方面。 第三章详细介绍了应用到商品订单查询子系统中的各种性能调整与优化 技术,包括s q l 语句优化、o r a c l e p q 存分配调整、合适索引的创建、o r a c l e 表空间 调整、o r a c l e 分区技术以及聚簇的合理使用。 第四章简要介绍了数据持久层出现的原因和商品订单管理信息系统的总 体逻辑结构,对系统总体架构进行了概述,并对商品订单查询子系统的数据库设 计和的界面设计做了简要说明。 第五章 结合商品订单查询子系统,通过s q l i 吾句优化、磁盘i o 调整、o r a c l e 内存分配优化这几种优化技术进行实例优化改进,并对使用各种优化技术前后该 查询系统的各项性能评价指标进行了详细地分析和对比,得出了一个数据库系统 总体性能调整策略,并将该调整策略进行了运用和实验结果分析。 第六章阐述使用h i b e r n a t e 持久化机制的原因,并对h i b e m a t e 框架技术及其 基本原理进行简要说明,提出了基于商品订单查询子系统的h i b e r n a t e 数据持久层 解决方案,并给出持久化层的具体实现,最后对基于h i b e r n a t e 和j d b c 这两种不同 的持久化机制下的数据库访问效率进行了对比并加以分析。 第七章总结全文,肯定了数据库性能调整的应用价值。并对未来相关工作 做了进一步的展望。 基于o r a c i e 数据库系统性能调整与优化研究 数据库性能调整与优化架构 2 1 性能调整与优化概述 性能调整是一项活动,这项活动通过优化应用程序、修改系统参数、改变系 统配置来改变系统性能。性能调整包括对硬件配置、操作系统与数据库管理系统 配置,以及对访问这些组件的应用的详细分析与优化闭。 性能优化是指进行有目的地调整组件以改善性能,使得数据库的吞吐量最大 限度地增加,相应的响应时间达到最小化。数据库性能优化的基本原则就是:通 过尽可能少的磁盘访问获得所需要的数据。 性能调整与优化的过程在某种程度上说是循环的,因为要达到性能优化的目 的,通常需要进行适当的性能调整,然后再查看优化结果,如此反复,直到达到 满意的效果为止。一个数据库系统的生命周期可以分成:设计、开发和成品三个 阶段。设计阶段进行数据库性能优化的成本最低,收益最大;成品阶段进行数据 库性能优化的成本最高,收益最小。 2 2 数据库系统性能评价指标 系统性能随特定环境的不同而变化,并受应用程序、体系结构和资源、服务 器以及并发活动的具体情况影响。数据库系统性能的判定标准依赖于性能衡量的 研究。通常认为评价o r a c l e 数据库系统的性能指标主要有系统吞吐量、数据库用户 响应时问、数据库命中率、内存使用情况以及所需的磁盘f o 量闭。 2 2 1 系统吞吐量 吞吐量是指单位时间内数据库完成的s q l 语句数日,以每秒钟的事务量( t p s ) 表示。提高系统吞吐量可以通过减少服务时间在同样的资源环境下做更多的工作 或通过减少总的响应时间使工作做得更快这两种方法来实现。 2 2 2 用户响应时间 响应时间是指用户从提交s q l 语句开始到获得结果集的第一行所需要的时间, 是应用做出反应的时间,以毫秒或秒表示。响应时间可以分为系统服务时间( c p u 时间) 和用户等待时间两项。也就是说,要获得满意的用户响应时间有两个途径: 一是减少系统服务时间,即提高数据库的吞吐量;二是减少用户等待时间,即减 少用户访问同一数据库资源的冲突率。 2 2 3 数据库命中率 o r a c l e 用户进程所需的所有数据都是经过缓冲区高速缓存来存取的。用户对数 据的需求能否在内存中得到满足,给出快速的响应,可用缓冲区高速缓存命中率 6 2 数据库性能调整与优化架构 来衡量。该比率等于高速缓存命中总数除以对高速缓存的查找总数由予从高速 缓存中读数据比从磁盘中读数据的开销要小得多,因此一般应使该命中率足够高。 2 2 4 内存使用情况 内存的使用情况主要体现在可共享内存、永久性内存和运行时内存这三者的 分配使用上内存是否合理使用,一般考虑的主要调整目标有两条: ( 1 ) 使投资得到最大回报。把时间和精力用于解决可能产生最大利益的问题。 ( 2 ) 使争用减到最小瓶颈的特点在于延迟和等待,尽可能地消除或减少它。 2 2 5 磁盘i 0 数据库中发生的每个动作几乎都将产生某种类型的i o 活动,该活动可以是逻 辑的( 在内存中) ,也可以是物理的( 在磁盘上) 。通过降低不必要的f o 开销可 以增加用户任务可获得的吞吐量,缩短用户响应时间i 蚓。其中,磁盘i o 操作是数 据库性能最重要的方面,是计算机最大的开销。 2 3 数据库性能优化的主要方面 无论哪一个数据库管理系统都会出现数据库运行效率问题,要使数据库的性 能达到最大化,主要可以从操作系统和硬件性能、数据库结构、o r a c l e 资源配置、 o r a c l c 实例性能、s q l 语句执行等方面进行,这些方面是相互依赖的【4 】。 2 3 1调整与优化数据库设计 要在良好的o r a c l e 方案中实现最优的性能,最关键的是要有个很好的数据库 设计方案。这一部分应在开发信息系统之前完成。尽管o r a c l e 系统本身已经提供了 若干种对系统性能进行调节的技术,但是如果数据库设计本身就有问题特别是结 构设计,那么再怎么对数据库进行调整和优化都达不到很好的效果。因此提高数 据库应用系统的性能首先应从数据库设计开始。数据库设计分为逻辑设计和物理 设计这两个阶段【螂3 1 。 2 3 2 调整应用程序结构设计 在开发信息系统之前,应根据应用需求考虑使用什么样的体系结构。其中, 传统的c s 模式比较适合于小规模、用户较少( 5 0 ) 、单一数据库且在安全、快 速的网络环境下运行:而在多用户( 1 0 0 ) 、多数据库且非安全的网络环境下, 存在大量客户端数据请求,服务器有限的系统资源将被用于频繁应付与客户端之 间的连接,此时应使用三层b s 模式或多层体系结构。 2 3 3 优化应用程序 据统计,对网络、硬件、操作系统、数据库参数等进行优化所获得的性能提 升,全部加起来只占数据库系统性能提升的4 0 左右,其余6 0 的系统性能提升来 7 基于0 r a c l e 数据库系统性能调整与优化研究 自对应用程序的优化。对应用程序进行优化通常可从源代码和s q l 语句这两方面进 行。由于s q l 语句消耗了7 0 至9 0 的数据库资源,应用程序对数据库的操作最终 表现为s q l 语句对数据库的操作,因此s q l 语句的执行效率决定了数据库的性能。 通过对劣质s q l 语句以及访问数据库方法的调整,可以显著改善系统的性能,对提 高数据库内存命中率、减少y o 访问、减少对网络带宽占用等有着非常重要的意义。 2 3 4 调整数据库内存分配 每一个o r a c l e 实例是由一组o r a c l e 后台进程和s g a ( 系统全局区) 的一个内存 区组成的。用户进程对这个内存区发送事务,并且以这里作为调整缓存读取命中 的数据,以实现加速的目的。s g a 使用效率会大大影响数据库系统的性能。由于 s g a 的缺省参数设置只适用于配置很低的计算机,因此,应根据数据库运行状况 重新调整s g a 的大小刚。内存分配是在信息系统运行过程中优化配置的,应在检 查数据库文件的物理调整和磁盘y o 之前进行调整。 2 3 5 调整与优化磁盘i 0 数据库的数据最终要存储在物理磁盘上。磁盘y o 操作是数据库性能最重要的 方面,它是系统消耗最大的o r a c l e 数据库操作。为了避免与y o 相关的性能瓶颈, 监控磁盘y o 并对其进行调整非常重要。影响磁盘y o 的性能的主要原因有磁盘竞 争、y o 次数过多和数据块空间的分配管理。 2 3 6 配置和调整操作系统性能 o r a c l e 数据库服务器的整体性能很大程度上依赖于操作系统的性能。实施操 作系统级调整的主要目的是减少内存交换和分页,使s g a 可留驻内存1 。如果为 0 r a c l e 分配更多的内存需要以增加系统的换页和交换为代价,那么这种方法不仅 不会产生理想的效果,相反还会影响数据库的性能。为o r a c l e 调整操作系统主要 可以从为o r a c l e 规划系统资源、调整计算机系统中的内存配置、为o r a c l e 数据库 服务器设置操作系统进程优先级、对0 s 参数进行设置这几个方面进行。 2 3 7 配置与调整数据库服务器硬件性能 许多典型的性能问题是由不充足的或配置失当的硬件组件导致的,与数据库 有关的硬件设计包括c p u 、内存、磁盘子系统和网络这四个部分。其中内存和c p u 严重影响数据库的能力。 2 4 本章小结 o r a c l e 数据库系统性能调整是一个系统工程,涉及的方面很多,在实际应用中, 应根据具体情况采用适当的优化策略。从性能优化的基本概念出发,分析了数据 库系统性能评价指标,总结了数据库性能优化的主要方面。 8 3 性能调整与优化技术介绍 性能调整与优化技术介绍 从第二章中可以看出,对数据库性能进行优化可以从多方面着手,方法很多, 本章将对应用到商品订单查询子系统中的几种优化技术进行详细介绍与说明。 3 1s q l 查询优化 数据库系统是管理信息系统的核心,从大多数系统的应用实例来看,查询操 作在各种数据库操作中占据的比重最大,查询速度的快慢直接影响数据库的推广 和应用,对于大型数据库来说,这一点显得尤其重要。由于查询操作在s q l i 吾句中 代价最大,因此优质的查询语句可以大大提高应用系统的性能。 3 1 1o r a o i e 优化器 o r a c l e 在执行s q l 语句之前,首先由优化器使用初始化参数中指定的优化方法 来确定语句的执行计划并对执行计划进行分析,然后再按执行计划去执行。 ( 1 ) o r a c l e 优化器 o r a c l e 9 i 优化器有两种优化方式,r b o ( r u l e b a s e do p t i m i z a t i o n ) 和c b o ( c o s t - b a s e do p t i m i z a t i o n ) r b o 优化器 基于规则的优化器r b o 根据可用的访问路径和访问路径的等级来选择语句的 执行计划,如果一条语句有多个路径可走,o r a c l e 总是选择等级较低的访问路径 r b o 优化器只是简单的根据规则确定执行计划,可能会使优化方法在仅含有几行 的小表上低效地利用索引,除表的大小外,列基数在做执行计划时也被忽略,这 些情况都会导致不必要的i o ,而且在r b o 中无法使用物化视图等o r a c l e 提供的新 特性。在最新的o r a c l e l o g 版本中r b 0 已被彻底废除。 c b o 优化器 基于代价的优化器c b o 根据可用的访问路径、对象的统计信息、嵌入的提示 ( h i n t s ) 来选择一个成本最低的执行计划。由于c b o 确定语句的最优执行计划时 会利用相关数据分布和存储特性的统计数据,因此需经常收集新的统计数据,以 增加数据库中对象统计信息的准确性。c b o 主要包含查询转换器、评估器、计划 生成器这几个组件i 蚓c b o 虽然是基于代价的优化器,但允许以“响应速度”为优 化目标,通过设置o p t i m i z e r 对o r a c l e 9 i 而言,所有查询中大约有半左右在基于规则的优化条件下会运行 得更快一些;另外一半则在基于开销的优化条件运行得最快。 ( 2 ) 影响执行计划的主要因素 9 基于o r a cie 数据库系统性能调整与优化研究 影响一个s q l 语句执行计划的重要因素有四个:访问路径、连接顺序、连接方 式和成本估算。 访问路径 o r a c l e 优化器可用的访问路径有全表扫描、r o w i d 扫描、索引扫描、簇扫描、 散列扫描、表取样扫描这几种。由于o r a c l e 对f o 的评估是针对“块”的而不是“行”, 因此优化器主要根据所涉及的块占全表的比例来决定使用哪种访问路径。 连接顺序 优化器在处理表之间的连接顺序时,首先确定连接表中是否包含其结果只有 一行记录的表,若存在这样的表,优化器在对连接表排序时会把该表放在最前端。 连接方式 连接操作开销很大,是查询优化的重点。二元连
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 魔法师动漫课件观看
- 高龄孕妇课件
- 济宁市2024-2025学年九年级下学期语文期末测试试卷
- 高速换护栏安全知识培训课件
- 高职生国防教育配套课件
- 电脑知识培训记录课件
- 电脑知识培训学堂心得课件
- 计算机信息系统集成服务合同
- 第1课《消息二则》课件-2025-2026学年统编版(2024)语文八年级上册
- 电缆安全小知识培训内容课件
- 北师大版五年级下册数学口算题题库1200道带答案可打印
- 托管老师岗前培训
- 新苏教版六年级上册《科学》全一册全部课件(含19课时)
- 护理品管圈QCC之提高手术物品清点规范执行率
- 二年级上册生命.生态.安全 全册教案
- 高尔夫基础培训ppt课件
- 有机化学第五章 脂环烃
- 微型钢管桩专项施工方案
- 铁路货物装载加固规则
- 机械加工的常用基础英语名词术语翻译对照大全
- Would-you-mind和Do-you-mind讲解学习
评论
0/150
提交评论