




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大学硕士学位论文 摘要 查询优化是数据库管理系统设计和实现所采用的一项重要技术,也是影响数据库系 统性能的一个重要因素。数据库查询优化包括两方面,基于代价的查询优化和基于响应 时间的查询优化,可以有效地提高复杂查询的效率。本文通过研究两种查询优化技术的 结合,给出了将查询请求进行两段式优化的一系列算法和实现方式,并且在“辽河油田 特种油开发公司油井施工设计系统”实际项目的研究开发中加以应用,以解决系统响应 速度问题。 基于代价的查询优化是优化第一阶段采用的主要技术,目的是要通过等价变换,将 用户提交的查询请求变换为效率最优的查询计划。为了优化并行执行阶段的多线程查 询,还需要将查询计划转化为规范表达式的形式然后再加以优化,最后得出适合多线程 并行执行的优化执行计划。 基于响应时间的查询优化一般采用并行的方式缩短响应时间,因此多线程并行数据 查询是第二阶段优化查询的工作。本文给出了对于大表查询、大表结合查询、分组聚合 查询、排序查询操作的多线程并行化查询优化算法,并讨论了基于大表分裂算法的并行 化策略的实施,大表分裂的方式、原则和随之带来的对大表数据高效维护的算法。 系统投入运行后状况良好,收到令用户满意的效果,大幅提高了查询效率。通过对 优化效果的分析和测试,发现在不影响数据维护操作效率的前提下,查询响应速度可提 高3 0 倍以上。系统将并行算法和思想引入普通p c 服务器的实际应用中,扩展了并行计 算的运用范围,使得普通p c 机用户和企业都获得了并行计算带来的性能提升,对并行 计算的发展和普通p c 服务器利用多线程技术进行并行计算扩展做出了研究,具有实际 意义。 关键词:查询优化;并行查询;多线程;油井施工设计 大连理工大学硕士学位论文 q u e r yo p t i m i z a t i o nr e s e a r c ha n da p p l i c a t i o n o no i lw e l lc o n s t r u c t i o nd e s i g n a b s t r a c t q u e r yo p t i m i z a t i o ni s n o to n l ya l l i m p o r t a n tt e c h n o l o g yu s e d i nt h ed e s i g na n d r e a l i z a t i o no fd a m b a u s em a n a g e m e u ts y s t e m ,b u ta l s oa ni m p o r t a n tf a c t o r t h a ta f f e c t st h e p e r f o r m a n c eo fd a t a b a s es y s t e m t h e r ea r et w om e t h o d so fd a t a b a s eq u e r y 。o p t i m i z a t i o n : c o s t - b a s e da n dr e s p o n s et i m e b a s e dq u e r yo p t i m i z a t i o n , a l lo fw h i c hc a l li m p r o v et h e e f f i c i e n c yo fc o m p l e xq u e r y t h r o u g ht h es t u d yo fc o m b i n a t i o nt h e s et w om e t h o d s ,t h es e r i e s o ft h ea l g o r i t h m sa n dm e t h o d st oa c h i e v et ot w o s t a g eq u e r yo p t i m i z ei su n f o l d e d ,w h i c hi s a p p l i e dt ot h er e s e a r c ha n dd e v e l o p m e n to ft h ea c t u a lp r o j e c t ,“o i lw e u c o n s t r u c t i o nd e s i g n s y s t e m “,t or e s o l v et h ep r o b l e mo fs y s t e mr e s p o n s et i m e c o s t - b a s e dq u e r yo p t i m i z a t i o ni st h ep r i m a r yt e c h n o l o g yo fo p t i m i z a t i o np h a s eo n e t h e m a i no b j e c t i v ei st o e q u i v a l e n tt r a n s f o r mu s e r sq u e r yt ot h em o s te f f i c i e n tq u e r yp l a n i n o r d e rt oo p t i m i z et h ep a r a l l e li m p l e m e n t a t i o np h a s eo ft h em u l t i - t h r e a dq u e r y ,q u e r yp l a n n e e dt ob et r a n s l a t e di n t os t a n d a r de x p r e s s i o na n dt h e nt ob ef u r t h e ro p t i m i z e d ,a tl a s t ,t h e o p t i m i z e di m p l e m e n t a t i o np l a nw h i c hi ss u i t a b l ef o rm u l t i - t h r e a dp a r a l l e li m p l e m e n t a t i o n c d m e so u t m u l t i - t h r e a dp a r a l l e lq u e r yt e c h n o l o g yi su s e di np h a s et w oi no r d e rt oa p p l yr e s p o n s e t i m e - b a s e dq u e r yo p t i m i z a t i o n i nt h i sp a p e r ,t h em u l t i - t h r e a dp a r a l l e lo p t i m i z e da l g o r i t h m s f o rb i gt a b l eq u e r y ,b i gt a b l ej o i n , a g g r e g a t i o nq u e r yw i t h i ng r o u pa n ds o r tq u e r ya r eu n f o l d e d , a n dt h ei m p l e m e n t a t i o no fp a r a l l e l i z a t i o na l g o r i t h mb a s e do ns p l i tb i gt a b l em e t h o d ,t h ew a y s a n dp r i n c i p l e st o s p l i tb i gt a b l ea n dt h ea l g o r i t h mo fm a i n t a i n i n gt h ed a t ao fb i gt a b l ea r e d i s c u s s e d s i n c et h es y s t e mi sp u ti n t oo p e r a t i o ni ng o o ds h a p e ,u s e r sr e c e i v es a t i s f a c t o r yr e s u l t s , a n dt h eq u e r ye f f i c i e n c yi ss u b s t a n t i a li n c r e a s e d t h r o u g ha n a l y s i sa n dt e s to ft h eq u e r y e f f i c i e n c y ,i ti sf i g u r e do u tt h es y s t e mr e s p o n s et i m ec a nb ei m p r o v e dm o r et h a n3 0t i m e s w i t h o u tm a n yc o s to fd a t am a i n t e n a n c eo p e r a t i o n t h r o u g h o u tr e s e a r c h , t h i sp a p e rp u t st h e m e t h o da n da l g o r i t h m so fp a r a l l e lc o m p u t i n gi n t op r a c t i c a la p p l i c a t i o nb a s e do nn o r m a lp c s e r v e r , e x p a n d st h es c o p eo fp a r a l l e lc o m p u t i n g ,b r i n g sp e r f o r m a n c ei m p r o v e m e n tt ot h ep c u s e r sa n db u s i n e s s e sb yp a r a l l e lc o m p u t i n g ,a n dh a sp r a c t i c a ls i g n i f i c a n c e k e yw o r d s :q u e r yo p t i m i z a t i o n ;p a r a l l e lq u e r y ;m u l t i - t h r e a d ;o i lw e l lc o n s t r u c t i o nd e s i g n i i i 大连理工大学学位论文独创性声明 作者郑重声明:所呈交的学位论文,是本人在导师的指导下进行研究 工作所取得的成果。尽我所知,除文中已经注明引用内容和致谢的地方外, 本论文不包含其他个人或集体已经发表的研究成果,也不包含其他已申请 学位或其他用途使用过的成果。与我一同工作的同志对本研究所做的贡献 均已在论文中做了明确的说明并表示了谢意。 若有不实之处,本人愿意承担相关法律责任。 学位论文题目:堑翔幺盖王量弛j 主! 叁盘:划盗z i 玺 生塑左! 丑 作者签名: 左:生) 日期:垄竺星年1 2 月生日 大连理工大学硕士学位论文 大连理工大学学位论文版权使用授权书 本人完全了解学校有关学位论文知识产权的规定,在校攻读学位期间 论文工作的知识产权属于大连理工大学,允许论文被查阅和借阅。学校有 权保留论文并向国家有关部门或机构送交论文的复印件和电子版,可以将 本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印、或扫描等复制手段保存和汇编本学位论文。 学位论文题目:蛰盈z 瘟缸幽杰1 2 盔塑生盏z 童堑士皇边l 丑 作者签名:盔己 日期:星! ! 星年! 芝月j 垦日 导师签名: 大连理工大学硕士学位论文 1绪论 1 。 研究背景 查询优化技术一直是数据库技术的重点,同样的查询请求采用不同的执行策略将产 生完全不同的效果。当用户提交一个查询请求时,需要查询优化技术决定采用什么查询 策略来实现,而不是完全按照用户的请求执行。并行化查询需要将普通查询分割成适合 于并彳亍执行的查询策略,此时许多表被分段,产生的可用查询策略更多,因此选择合理 的执行策略显得更为重要。 石油是非常重要的工业资源,中国是世界原油的需求大国,需求量约占世界供给总 量的6 ,是仅次于美国的第二大需求国。但是我国石油行业的现状是;原油的入均储 量与开采量均处于世界较低行列,缺油状况十分严重,因此在油井生产过程中需要精打 细算,提嵩效率。在油井开采的过程中,由于地下情况十分复杂,因此需要在施工设计 中因地制宜,对不同的地下情况做出相应的施工设计。近年来,计算机辅助施工设计系 统的出现,使褥施工设计效率得到了有效的提高,而且己经发展成为了一种普遍的趋势, 一些企业已经采用了较为灵活、高效的计算机自动化辅助施工设计软件,很大程度发挥 了计算机辅助施工设计的优势。 本文以辽河油田特种油开发公司的实际项匿“油井施工设计系统为背景。随着近 几年井下作业施工设计标准的统一规范化管理,钻井和采油工艺的飞速发展,对施工设 计的速度秘效率都有了薪要求。因此特油公司委托大连理工大学数据库技术研究室在原 有系统基础上,针对目前出现的系统查询响应缓慢的问题,对“油井施工设计系统 进 行进一步研发。设计人员利用o f f i c e 文档提供的开放数据库接口,可以自动从数据库 巾获取需要的数据来生成施工设计。由于施工记录数据的规模增长很快,传统的数据查 询模式在一些情况下查询速度并不理想,如大型表的结合运算、聚合运算和分组运算等, 都会造成响应时闻非常缓慢,能否处理好查询优化问题是系统熊否长期应雳的关键。尽 前经常采用的数据库查询优化策略包括基予代价的优化策略和基于响应时间的优化策 略。如果可以合理利用,就能大幅度的提高查询效率和速度。从实现意义上说,高效快 速的数据查询是油井施工设计系统进行实时施工设计的迫切需求。 1 。2 国内外研究现状 数据库查询优化技术是一直以来许多专家和学者都在研究的问题。般来说包括两 方面,一是基于减少查询代价的方法,二是基子减少响应时间的方法。 查询优化技术研究及在油井施工设计中的应用 对于第一种方法,主要采用将查询转化为关系代数形式,然后应用一系列规则对其 进行转化和裁剪,得到最后执行代价最小的查询计划,即一个查询有多种等价执行方式, 找到执行代价最小的一种加以实施。关于这方面的研究,主要是集中在针对不同应用进 行的特定查询优化技术。如国外的r o u m i n gj i n ,d a v ef u h r y 和a b d u l k a r e e ma l a l i 等人 研究了基于代价的查询优化器在多数据库系统中进行复杂模式数据挖掘时的应用【l j , h a r i s hd ,p o o j an 和d a r e r a j a y a n tr 等人研究了在生产计划图表中的n o v e l 应用程序 查询优化问题【2 1 。国内则有梅翔,孟祥武和陈俊亮等人提出了一种基于用户偏好分析的 查询优化方法【3 】等。此外,多连接查询的优化算法也是研究的重点,因为多连接优化属 于n p 问题,因此无法得到精确解法。该问题实质上就是组合优化问题,因此搜索算法 可以借鉴最优化算法来完成。关于这方面的研究,r a m o nl a w r e n c e 给出了利用早期哈 希法进行一种可配置的高效结合查询算法1 4 ,b e n n e t 5 1 ,曹阳【6 】等人利用遗传算法求解数 据库查询优化最优组合问题,取得较好成果。此外还有利用基于查询图的贪心算法i r ,】、 模拟退火算法【8 】等策略解决组合优化问题的研究,为多连接查询优化技术提供了许多有 效的实现思路。 对于第二种方法,主要使用并行处理方法获得较高的查询效率【9 j o ,数据库并行查 询优化技术是数据库技术领域的热点问题,许多实验和观点都证明了这项技术能有效地 大幅度提高复杂查询的效率。g a oc o n g ,w e n f e if a n 和a n a s t a s i o sk e m e n t s i e t s i d i s 研究 了分布式查询技术与评价履约担保体系的结合【1 1 1 ,李建中给出了一系列并行数据操作算 法和查询优化技术【1 2 】等。但是并行查询优化技术实际运用并不多,部分科技成果尚停 留在理论阶段,通过构建一些测试环境进行研究,没有达到可以工业应用的程度,还有 一部分成果则是实用性不高,其应用往往需要先进的软硬件支持,如分布式数据库、大 规模并行机等等。但是,国内大部分的公司难以提供这些代价高昂的硬件,造成了这类 科技成果迟迟无法应用于生产。高校作为我国科技发展的一个重要方面,应该在科技成 果转化方面做出贡献,加强对新技术的推广应用,最终转化为生产力。由于大多数油田 公司并没有财力和必要搭配并行计算机环境,对数据库的存取还停留在提出查询请求然 后获取查询结果的简单应用模式中,所以,在现有的硬件环境下,借鉴高效率的查询优 化和并行数据查询技术,将新技术推广到工业生产一线,实现生产力转化,是一项很有 实际意义的研究。 石油企业是技术密集型、信息依赖型企业,信息采集、处理、分析的滞后就意味着 技术的落后、手段的落后、管理的落后。为了跟踪世界前沿石油勘探技术的发展趋势, 提高信息处理和分析的能力,必须加强企业的信息化建设。以信息技术改造和提升石油、 石化产业,以信息技术提高石油、石化企业的经济效益、创新能力和市场竞争力d 3 。辽 大连理工大学硕i - - q :位论文 河油田公司在生产数据利用方面,虽然取得了一定成采,建立了完备的生产数据管理系 统和生产数据查询统计系统,但还是存在一些问题,大有上升空间。生产数据的特点是 增长速度缀快,嚣为井数多,雷前已经达到子曰以上,而每譬井每天的多个施工动作 都要被记录,施工方案文档还需要入库保存,数据库的规模随着时间推移将快速扩大。 在置前已经存在不少百万条数据以上的大表。当业务需求需要检索这些大表获取数据或 者对大表数据进行汇总和聚合时,响应时间不能让人满意,需要对这类检索进行优化。 1 。3 本文工作 本文通过对基于代价的查询优化技术、并行查询技术和多线程技术的细致分析和研 究,结合对油井施工设计系统的需求调研与分析,采用面向对象和中间件的技术,设计 实现了两阶段式的多线程并行数据奁询优化器,给出了并行情况下的大表查询、结合查 询、分组聚合算法和查询排序算法,以及在大型表分裂的情况下的高效数据维护算法, 从而有效的解决了油并施工设计系统在大表查询、分组聚合和排序等操作的响应时间闻 题,且对大表数据也可以进行方便高效的维护操作。通过对优化效果的分析与测试验证 了系统的优化效果可以达到3 0 倍左右。 1 4 本文组织 本文共分5 章,主要介绍了查询优化技术的现状及发展,以及在油井施工设计系统 的开发背景下多种查询优化策略和算法的应用,以及性能和可行性的分析。 第一章绪论部分介绍了查询优化技术和油匿信息纯建设的背景和研究现状,在此背 景下进行查询优化技术研究及其油井施工设计系统中的应用的重要性和现实意义。 第二章介绍了油井施工设计系统的整体运行状况、软硬件环境,详细说骧了当前系 统存在的问题和对其进行查询优化的必要性、可行性。 第三章是本文的主要工作,给出了查询优化需要使用的系列定义、准则和公式, 对两段式查询优化算法的设计和分析做了详细的叙述,包括普通查询、结合查询、分组 聚合查询和排序查询的算法设计。 第圈章放项嚣的实际需求、详细设计和具体实现崽发,介绍了两阶段查询优化算法 的实现,讨论分析了大表分裂法带来的数据维护问题和解决办法。 第五章通过系统的优化效果的实际测试,讨论了系统关于大表分裂度和最大可并发 多线程数等影响优化效果的因素的配置,结合测试结果给出了较为合理的配置方案。 查询优化技术研究及在油井施工设计中的应用 2 油井施工设计系统研发 随着近几年油田开发工作和生产管理工作的精细化、标准化,井下作业施工设计标 准的统一规范化管理,钻井和采油工艺的飞速发展,水平井、侧钻水平井等钻采工艺和 复杂井下作业管柱不断被采用,对计算机辅助设计系统的要求也越来越高。包括地质设 计、工艺设计、采油作业区维护性作业设计,网上审核、审批、分发都需要系统能够给 予支持。油井施工设计系统是本实验室的研究成果,根据不同时期需求经历过多次版本 更迭,不仅是一个计算机辅助设计系统,也是一个成熟的油井信息化数据综合应用管理 系统。本次开发的目的在于解决系统对海量数据的查询优化应用,重点在于查询优化器 的实现上,但是仍然有必要将系统的整体设计、模块功能、软硬件环境和目前存在的问 题做一介绍,这样才能体现出设计实现查询优化器的必要性。 2 1 系统整体介绍 油井施工设计系统体系结构基于二维层面划分,将系统划分为七个模块:系统管理 模块、自动绘图模块、施工设计模块、综合查询模块、设计模板模块、流程管理模块和 自动通知模块。为了使系统具有更好的可扩展性和架构,模板管理子系统依据各自的特 性一部分归入系统管理模块,另一部分由于其具有相对独立性而形成了设计模板模块, 在最终实现系统中,设计模版模块以构件形式实现;审核审批子系统实现过程是由设计 人员选择审核审批人,通过网络送交文档完成审阅,随着业务管理规范化及信息技术的 发展要求,增加了基于工作流技术的流程管理模块;系统中的自动通知系统以自动通知 模块的形式出现。系统整体模块结构如图2 1 所示。 l流程管理模块i l自动通知模块i 图2 1 整体模块结构 f i g 2 1 w h o l em o d u l es t r u c t u r e 大连理工大学硕士学位论文 系统整体运行流程如图2 2 所示。下面分别介绍系统各个模块的功能。 图2 2 系统运行流程 f i g 2 2s y s t e mr u n n i n gp r o c e s s 2 1 1 施工方案设计模块 施工方案设计模块是整个系统的核心功能模块。施工方案子系统利用编辑好的设计 模板,在模板的基础上进行实时设计,大大简化了施工方案设计的复杂度和减小了工作 量。再辅之以自动成图功能,可以自动完成简单管柱示意图的绘制,以及各种相关数据 的自动查询和填写。设计模板利用o f f i c e 办公软件开发,利用其后台v b a 代码的开 放编程接口,可以方便的自动查询出生产数据,并且自动进行汇总或统计,填入模板中 指定的位置,形成设计方案。施工方案设计是系统的核心部分,其他模块的存在都是为 了保证该模块的功能。 自动设计好的施工方案如图2 3 所示。系统将自主开发的o f f i c ea c i t v e x 中间 件嵌入至i e 浏览器中,该插件不仅集成了o f f i c e 的全部功能,而且还进行了扩展, 可以通过插件的成员函数,将整个文档对象以b l o b 数据类型的格式存入数据库中。也 因为此,施工文档表保存了w o r d 文档数据,因此每条记录的体积较大,且每口井的 施工记录多,整个施工文档表的体积也很庞大。图中施工设计的大部分数据信息都是通 青询优化技术研究及在油扑施t 设计 的应j q 过设计模板的 故v b a 编程入】编写的数据访问函数获取,并且自动填充至模板指定 的位置,冈此能否快速获取数据是高效率生成设计模板的前提。 - z 。,。 i 而百磊而五= 磊= 忑而五忑而五- j 口籼啦 一一d j i 1 一 e j q ! 。e :。i _ v 一“t i _ 一r t”口hx h ”j 瞳f i b8 4 2 71 1 4 * 2 月自r i - t * i j $ f “t 嘲i h 日蚍g 蟊j - a _ t l w _ i_ t _ h+ _ t ; # f 一 f t 一 q t, ;“_ _ i 面磊磊i 磊r r z i r 磊 j 。r i i i i l i _ _ i tm b 一 1 i t 孑_ _ 磊_ _ _ _ 磊而百五五_ i _ _ 二; :i 广元i = _ u o z 一i p * m 靠,t ,i z i f 广i 一一 # 一一m 高i 1 ;= i i i r 一 “o i 。- _ 1 忑t 、石五i 五 忱o 鲁辱i ;i ;彳= 二= 二吾警嵩孺 - * p t_ 4 1 _ 三竺土竺! 兰生竺4 j 竺p 4 兰2 兰三一_ 二兰_ _ _ ! 竺j t 、制睢i # - * : l 生2 坐竺生l 土坐1 _ 生兰上兰兰! 型l _ _ 兰4 ! ! 叫懈# t 埘衄丘- i m 一 1 *+ _ tn_t口o o 一$ $ 目彳 。_ _ i 赢i t o ? 堡竺! 受三二二互三三:型二塑 幽23 施方窠发计 f i g2 3 c o n s t r u c t i o ns c h e m ed e s i g n 212 自动绘图模块 自动绘罔模块将数据库中的单井结构信息调出,利用w o r d 后台v b a 代码操纵绘 图板和管柱图元的功能,自动绘制出井下结构图。返部分是系统实现的难点z 。,总体 思路是对问题先进行一定的简化,不考虑杆柱,采取“分而治之”的原则。本部分不是 本文讨论的重点,故不予赘述。 自动生成的井下结构图如图2 4 所示。该部分的史现原理与施工设计自动生成的原 理类似,自动绘图也是在w o r d 文档的基础t 进行,通过v b a 的数据访问函数获取数 据。获取的数据不仅包括井位阁中的各个井段数据,而且自动成图需要的图元也是通过 查询该井的井下管柱信息自动获取的。所以该部分也是依赖于数据的。 大连壤工大学硕士学位论文 蒜蟪人z 弦底:1 8 l m 圈2 4自动成图 f i g 2 4a u t o m a t i c - g e n e r a t e dp i c t u r e 2 1 。3 综台查询模块 施工设计者和对其审核审批的高级用户在施工设计或者审批设计时往往需要调出 设计方案中涉及的相关数据进行核对。因此系统提供了综合查询模块完成此类功麓。此 外,综合查询模块还提供对系统中的设计方案的查询检索功能。 关于生产数据的查询,其实现界面如图2 5 所示。左侧的树形歹l 表给出了系统可以 进行的查询和统计的功能,这部分是通过自动调取数据字典数据动态获取的。包括点击 查询统计按钮激活的查询动作也是动态组装s q l 语句,然后进行查询。查询模块经常 会查询大量参考数据,或者对大量数据进彳亍统计和分组,因此对响应速度也有较高要求。 卉询忧化技术研究爱在油井施丁 殳计中的廊用 z d 口 1 一t _ l t l 一 一1 u 一 t 。f口o = 动l ;露i 蓥箍辐l ;籍“m j 豁船# 削25 生产数据舟咖 f i g25 p r o d u c t i o nd a t aq u e r y 对施工设计办案的查询! 生产数据查询类似,兵是杳询的甘标不同,而且对于施工 方案的查询需要用到a 看设训文档的o f f i c e 中间件。查询系统t 作流程如图2 6 所示。 吲26 查询系统工作流 f i g2 6q u c 口s y s t e mw o r k i n g5 t m a m 综合查询子系统提供简单啬询和组合查询两种功能强大的查询方式,用户通常情况 下使用简单查询快速得到杳询结果的目的,当简单查询不能满足用户需求时,用户自己 一。 一 一 大连理工大学硕士学位论文 组合查询条件,定制自己的查询,也可得到特定的查询结果。生产数据和施工设计数据 量都比较大,有必要进行更为高效快捷的查询,获取更快的响应时间。 2 1 。4 其他模块功畿 对数据库的优化查询是本文的重点,系统剩余的4 个模块主要是对系统本身进行管 理,和一些对系统功能及业务流程进行处理的功能,| 以保证整个系统的运转。其设计实 现不是本文重点,因此这里统一进行介绍。 ( 1 ) 系统管理模块从功能上可以划分为图2 7 所示的l o 类。 图2 7 系统管理模块功舷划分 f i g 2 7 f u n c t i o nd i v i d eo fs y s t e mm a n a g e m e n tm o d u l e 按照权限类别可以划分为两类:系统管理员和应用管理员,其中系统管理员可以进 行部门管理、用户管理、委托管理、手动修订流程、访问控制、吕志管理和状态修改; 应用管理员可以进行模板管理、施工类别管理和图素管理。 ( 2 ) 模板管理是对产生施工设计的模板的管理与维护。前文提到的模板文档开放 v b a 代码编程接豳需要利媚模板管理功能来实现。通过模板管理可以添加潮除模板, 也可以修改模板本身的功能。模板管理界面如图2 8 所示。 商恂优化技术岍究及在油井施i 醴训中的j 避 0 ,t。 百而百i i = = i ;j 口 i ” # _ _ 一 一,广i i i 萌目i 萌i i 日i 一 目28 檀极营理 f i g28t e m p l a t em a n a g e m e n t 修改模板功能不仅需要修改模板文档的文字和格式,还需要修改文档后台v b a 代 码的功能,以实现对楼板功能的修改。后台v b a 代码是模板功能的关键所在,利用这 些丌放的编程接口,模板管理员可以自定义获取数据的s q l 语句,并且灵酒的将拱取 的数掘进行再) j i i a _ ,并且将这些数据输出在w o r d 文档的台适位置。施丁设计人员调 用某个模板生成设计州,激活模板的个八雨数,该函数就会自动调用一系列模板管 理员编7 的v b a 代码,最终自动生成个施工殴计方案。 门) 流程管理模块 流程管纠模块在施工文档设计完毕后负责蒋文档发送给对应的审核审批a ,起到 办公流控制的功能。服务器收到设计完成请求后将通过参数筛选机制刈该请求进行解 析,确定酷计类别并将其保存在临时变量中。随后,服务器将保存在临时变量中的设计 类别与数据库服务器中指定的数掘表内容进行比照,确定该类设计的审核、审批流程, 所得结果会化在初始设计文档中。 没计人完成殴训提变设计文档后,服务槲卤先对设计文档内容进行语法分析,在榆 索宙核、审批人信息后发送文档到刘应审核、审批岗位及相关责任人,同时,服务器 将审核审批通知写入网上办公系统并启动自动通知系统提示审核、审批岗位的相关责任 人有新的方案设计文档等待审核或审批。 ( 4 ) 自动通知模块 考虑到实际项目运行时,负责审核审批方案的用户多为领导层,要处理的事务繁多, 如果系统必须在登陆后刊能发现自己有待审批方案的话,势必会有很多时候领导会忘已 审核审批,从而影响整个审批流程的流转。因此系统带硝自动通知模块,安装后自动运 行,定义好用户名和密码后,会自动轮询服务器,获取该用广的任务,并且在右下角任 亨一 曩嚣m羹譬 漂黼鞭鬻 大连理工大学硕士学位论文 务栏提示用户进行操作。为了更加及时方便的通知用户完成审核、审批、修改设计等任 务,系统还提供了手机短信通知子系统,关键通知信息将在计算机网络通知的基础上, 同时通过手机短信发出通知,保证相关人员第一时间接到通知。 2 2 系统软硬件环境 系统软硬件配置如表2 1 所示。 表2 1 系统硬件配置 t a b 2 1 s y s t e mh a r d w a r ec o n f i g u r a t i o n 2 2 1硬件条件 硬件方面,采用了d e l l 的p o w e r e d g e 6 8 5 0 作为网站服务器,数据库服务器则沿用 了特种油开发公司一直使用的s u n f i r ev 8 9 0 。 d e l lp o w e r e d g e6 8 5 0 ( x e o nm p7 1 2 0 m 2 g b 1 4 6 g b ) 属于戴尔6 8 5 0 系列,服务器类 别为机架式,c p u 类型为x e o nm p7 1 3 0 mc p u ,频率为3 0 0 0 m h z ,内存大t j x :4 g b ,在 当前情况下,属于戴尔的中高端多路机架式服务器,提供了优化的内部扩展能力与机架 密度。适用于数据库与服务器整合、虚拟化和从基于r i s c 的昂贵系统迁移,具备客户 所需的高性能和不断扩展的能力。采用p o w e r e d g e6 8 5 0 充分考虑到了系统日后的升级 需要和保证了性能。 数据库服务器采用s u n f i r ev 8 9 0 是s u n 公司出品的企业服务器,它配备了4 个 1 5 g h zu l t r as p a r c + 处理器( 各带3 2 m b 高速缓存) ,1 6 g bd r a m ( 1 6 个1 g b d i m m ) ,4 个1 4 6 g b1 0 k r p mf c a l 硬盘,d v d r o m ,1 个f c - a l 磁盘控制器,1 个 千兆位以太网端口,1 个1 0 1 0 0b a s e t 以太网端口,2 个需使用分路器( 未提供) 的串行 端口,2 个u s b 端口,9 个p c i 插槽,3 个电源和备用冷却风扇支架,预装s o l a r i s1 0 和j a v ae s ,符合r o h s 5 标准,为数据库服务提供了高效的平台以及良好的安全性。 查询优化技术研究及在油并施工设计中的应用 此外,特油公司内部搭建了百兆千兆高速局域网,提供了良好的数据传输能力。为 海量数据查询处理提供了良好的传输条件。 2 2 2 软件环境 软件方面,w e b 服务器操作系统采用了微软的w i n d o w s 2 0 0 3s e r v e re d i t i o n ,这是 考虑到辽河油田公司应用的现状和今后可维护性做出的选择,毕竟u n i x 和l i n u x 服务 器系统需要较为专业的人士才能维护,而特油公司的工作人员还是对w i n d o w s 系列的 操作系统比较熟悉。而且,微软的w i n d o w s 2 0 0 3s e r v e re d i t i o n 是一款优秀的服务器操 作系统。开发工具方面,采用了微软的n e t 开发环境搭配a s p n e t + c 群+ j a v a s c r j p t 实现所需要的功能,实现了b s 的体系结构,达到瘦客户端的目的,使得系统使用方便, 便于推广。 n e t 框架是微软公司推出的强大的网络应用服务和开发平台,通过使用公共语言 运行库c l r ( n e t 框架的一部分) ,开发人员可以使用任何现代编程语言创建w e b s e r v i c e s ,大幅度增大开发人员可用资源量,并允许开发人员随意使用最适合解决身边 问题的编程语言。 j a v a s c r i p t 是- - 1 7 方便易用的网页脚本语言,用于开发交互w e b 页面。它的特 点:脚本编程、基于对象、安全和跨平台。可以将一部分逻辑运行转移到浏览器端,从 而降低服务器端的计算压力,促进负载平衡,达到提高系统运行效率的目的。如:密码 位数的检验,邮件地址正确性验证,填入项非空验证等。 2 2 3 数据库环境 数据库服务器采用了甲骨文公司( o r a c l e ) 的o r a c l e 9 i 关系型数据库管理系统,是 以高级结构化查询语言( s q l ) 为基础的大型关系数据库【1 4 1 ,通俗地讲它是用方便逻辑管 理的语言操纵大量有规律数据的集合。是目前最流行的客户j j l 务器( c l i e n t s e r v e r ) 体系结构的数据库之一。它是一个极其强大、灵活和复杂的系统,可以用于构建从小型 的单用户系统到支持数千万并发用户的大中型应用项目。辽河油田公司使用的是 o r a c l e 9 i 的数据库系统,该系统具有占用资源相对较少,安全性高、面向对象、并且提 供完整的编程接口。加上它有许多优秀的前台开发工具如p o w e rb u i l d e r 、 s q l * f o r m s 、p l s q ld e v e l o p e r 等,可以快速开发生成基于客户端p c 平台的应用 程序,并具有良好的移植性。 经过调研分析,特油公司的软硬件条件在同类型企业中属于高端配置,这些硬件还 没有完全发挥出他们应有的计算能力,为本文进行数据库查询优化研究提供了客观条 件。 大连理工大学硕士学位论文 2 3 系统效率问题 油井施工设计系统是大连理工大学数据库技术研究室的优秀研究成果,在辽河油田 多家企业都有广泛的应用,随着用户数目的增多,需求的深化和广化,进行了多次的升 级和扩展的版本更迭。在系统进一步研发过程中出现了一些查询效率问题,本文所做的 数据库查询优化技术研究正是为了解决这些问题而开展的。 截至成稿日,特种油开发公司在编油井数目达到1 2 7 5 口。每天每口井都会施以不 同的施工动作,施工作业记录必须存入数据库。因此,以每天每口井进行3 次施工,一 年后油井作业记录的数据量将达到百万余条。生产数据特点是多为描述性的文字信息和 图片信息,每条记录体积可以在几十至几百k b 之间,而且生产数据每口井每天都会产 生许多条记录,数据量随时间推移变得很大,因此作业记录表就是油井生产数据中的一 个海量数据表,其数据量在百万级以上。此外,作业图片数据库、小修管柱数据库等与 施工作业相关的数据表,其数据量也是很大的。作业图片数据库因为保存了施工时获取 的图片,字段本身尺寸也较一般数据字段庞大,施工设计方案文档以b l o b 类型存入数 据库,也占有了很大的空间。 多个海量数据表的存在,造成了施工设计生成的速度有些情况下不理想。设计方案 一般必须通过列举之前该井的生产状况和统计信息,由此推断该井目前所处的状态,根 据这些信息来得出该进行什么施工。因此每个施工设计的产生,或多或少需要引用该口 井之前的生产数据,有的施工设计是针对一个区域,则需要获取多口井的生产数据。涉 及到生产数据统计的场合,还会用到分组聚合操作。当多个海量数据表结合查询时需要 处理的数据量更大。旧版系统进行施工方案设计时,上述情况将导致用户较长时间的等 待。 综合查询除了包括生产数据查询,还包括施工方案综合查询。进行生产数据查询时 的响应速度慢的原因与施工设计模块相似,都是对海量数据查询、结合查询和分组聚合 查询的问题,而同时,施工方案查询也存在响应速度慢的问题,每次施工都会为施工方 案数据库添加一条施工记录,一段时间后施工方案表的体积就成为了整个生产数据库中 最大的。因此施工方案表的记录数量同样是海量的。并且,该表与其他生产数据库不同 之处在于施工方案文档作为b l o b 对象类型字段也存入了数据表中。在不经优化的数据 库系统中,遇到这类大尺寸字段常常会导致扫描时间过长,从而影响响应时间。 2 4 。查询优化的必要性 显然,旧有的油井施工设计系统在查询优化方面并未予以足够重视,导致了旧版系 统在运行一段时间后,由于数据库规模的膨胀出现了查询和使用响应慢的状况,必须使 查询优化技术研究及在油并施工设计中的应用 用查询优化技术。数据库查询优化技术一直是学术界的研究热点,从常规集中式数据库 的查询优化到分布式、并行化的查询优化,都有较为成型的理论与算法。但遗憾的是, 在油田生产领域,查询优化技术运用的范围还是很有限。数据库系统本身具备查询优化 功能,但是对于特定的应用需求,设计一种适当的查询优化算法还是可以极大的提高查 询效率。利用并行查询、分布式查询和多线程查询都可以将海量数据并行化处理,显然 可以提高查询效率。但是,这方面的一部分科技成果尚停留在理论阶段,还有一部分成 果则是实用性不高,其应用往往需要先进的硬件支持,如分布式数据库、大规模并行机 等等,国内大部分企业尚且没有必要配备如此价格高昂的硬件,造成了这类科技成果迟 迟无法应用于生产。数据库查询优化技术在油田实际应用中还停留在较落后水平,在现 有的硬件环境下,借鉴高效率的并行数据查询技术,将并行技术推广到工业生产一线, 结合现有的成熟的查询优化技术,实现多线程并行查询优化,是一件很有实际意义的研 究工作。 大连理工大学硕士学位论文 3 两段式查询优化算法设计 查询优化可以分先基于查询执行代价的优化和基于查询响应时间的优化。基于查询 执行代价优化的目标是,使查询执行所使用的系统资源总和尽量的少,从而降低系统开 销,整个系统的开销可以从单个系统资源的开销表达式中推出;基于查询响应时闻优化 的目标是尽量减少查询的响应时间,而不计较系统资源的耗费l l 引。由两种优化髓标的分 析可以发现,一般来说,基于代价的查询优化是较为合理的策略,因为在串行计算条件 下,计算量与时闻是正比例关系,减少查询代价自然就缩短了查询响应时闻;而基于响 应时间的查询优化技术同样重要,多是利用于并行计算场合,将同样的计算量通过并行 来重叠执行时闯,就可以减少查询等待时闻。因此在执行空间彼此独立的并行模式会考 虑基于响应时间的优化方式【1 6 1 。基于代价的优化技术在大多数数据库系统都会采用这种 优化技术,无论串行还是并霉亍,无论分布还是独立,在查询前确定一个更小代价的查询 计划都是很有必要的。本文结合两种查询优化算法,设计实现了两段式查询优化器,对 于系统中常用和耗时的海量数据查询进行优化,第一阶段采用基于代价的方法,第二阶 段在第一阶段的基础上,采用多线程并行查询的方式,从响应时间上进行优化。 3 1基于代价的查询优化 3 1 1优化的算法和准则 通常意义的基于代价查询优化邸集中式数据库的查询优化,就是在查询执行引擎生 成一个执行策略的过程中,使查询的总代价达到最小。本文采用关系代数的方式描述关 系数据库的查询操作和执行序列。用户向数据库管理系统( d b m s ) 提出的查询请求为q , 查询优化器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业设计与消费心理的互动影响
- 工业遗产的旅游价值挖掘与利用
- 工作场所心理健康与防骗意识培养
- 工业设计与产品包装的关联性研究
- 工作流程标准化及其在企业管理中的应用案例
- 工作场所的多样化管理
- 工作流程优化与管理方法改进
- 工程教育的项目式学习与教学设计
- 工程机械的智能化设计与维护
- 市场分析与市场营销决策结合的研究
- GB/T 6148-2025精密电阻合金电阻温度系数测试方法
- 中国海洋工程行业市场发展分析及前景趋势与投资前景研究报告
- 2025年大学辅导员招聘考试题库时事政治专项试卷
- 酱料研发知识培训课件
- 登革热疫情应急处置桌面推演方案(2025年)
- 围棋行业跨境出海战略研究报告
- 附件-珠海市职业卫生分类及分级管理办法
- 第三单元名著导读《骆驼祥子》教学设计 2023-2024学年统编版语文七年级上册
- 七大浪费培训
- 2025年中考复习地理简答题模板
- 新人教版九年级数学第一轮总复习教案1
评论
0/150
提交评论