- 1、本文档共108页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
济宁学院
毕业论文
课题名称:数据库查询优化策略分析
系别:
专业:
班级:
学号:
学生姓名:
指导教师:
完成时间:
摘要
本文主要探讨了在数据库的应用中对数据库查询优化的一些策略,其中包括基于索引、SQL语句的优化的方法,并简要对其他一些常用方法做了介绍。
随着计算机应用的深入,计算机技术的成熟,各种应用软件的普及,应用数据也随着日常工作而迅速增长,作为数据仓库的数据库的重要性也日益显著。
数据库系统作为管理信息系统的核心,各种基于数据库的联机事务处理以及联机分析处理正慢慢的转变成为计算机应用的最为重要的部分,根据以往大量的应用实例来看,在数据库的各种操作中,查询操作所占的比重最大,而在查询操作中基于SELECT语句在SQL语句中又是代价最大的语句。如果在使用中采用了优秀的查询策略,往往可以降低查询的时间,提高查询的效率,由此可见查询优化在数据库中的重要性。本文就数据库查询优化中的策略进行介绍及探索。
关键词:数据库查询优化查询优化索引
目录
第一章基于索引的优化 1
1.1索引概念 1
1.2判断并建立必要的索引 1
1.3建立高效的索引 1
1.3.1何时使用聚集索引或非聚集索引 3
1.3.2结合实际,谈索引使用的误区 3
1.4对索引使用的一些规则 5
1.5合理的索引对SQL语句的意义 6
第二章优化SQL语句 7
2.1查询的优化 7
2.1.1查询优化过程要注意事项 9
2.2选择最有效率的表名顺序 14
第三章其他优化方法 16
3.1避免或简化排序 16
3.2避免相关子查询 16
3.3创建使用临时表 16
3.4用排序来取代非顺序存取 16
3.5数据服务器存储 16
第四章结论 17
参考文献: 18
2007级计算机网络技术专业毕业论文
第一章基于索引的优化
数据库的优化方法多种多样,不同的方法对提高数据库查询效率也不相同。索引作为数据库中的重要数据结构,它的根本目的就是为了提高查询的效率。
而优化查询的重要方法就是建立索引,建立适合关系数据库系统的索引,这样就可以避免表扫描,并减少了因为查询而造成的输入输出开销,有效提高数据库数据的查询速度,优化了数据库性能。然而在创建索引时也增加了系统时间和空间的开销。所以创建索引时应该与实际查询需求相结合,这样才能实现真正的优化
查询。
1.1索引概念
索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列
值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。
索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引的方式与您使用书籍中的索引的方式很相似:它搜索索引以找到特定值,然后顺指针找到包含该值的
行。
1.2判断并建立必要的索引
对所要创建的索引进行正确的判断,使所创建的索引对数据库的工作效率提高有所帮助。为了实现这一点,我们应做到以下要求:在熟记数据库程序中的相关SQL语句的前提下,统计出常用且对性能有影响的语句;判断数据库系统中哪些表的哪些字段要建立索引。其次,对数据库中操作频繁的表,数据流量较大的表,经常需要与其他表进行连接的表等,要进行重点关注。这些表上的索引将对SQL语句的性能产生重要的影响。
1.3建立高效的索引
创建索引一般有以下两个目的:维护被索引列的唯一性和提供快速访问表中数据的策略。大型数据库有两种索引即簇索引和非簇索引,一个没有簇索引的表是按堆结构存储数据,所有的数据均添加在表的尾部,而建立了簇索引的表,其数据在物理上会按照簇索引键的顺序存储,一个表只允许有一个簇索引,因此,
根据B树结构,可以理解添加任何一种索引均能提高按索引列查询的速度,但会
2
2007级计算机网络技术专业毕业论文
降低插入、更新、删除操作的性能,尤其是当填充因子(FillFactor)较大时。所以对索引较多的表进行频繁的插入、更新、删除操作,建表和索引时因设置较小的填充因子,以便在各数据页中留下较多的自由空间,减少页分割及重新组织
的工作。
索引是从数据库中获取数据的最高效方式之一。95%的数据库性能问题都可以采用索引技术得到解决。作为一条规则,我通常对逻辑主键使用唯一的成组索引,对系统键(作为存储过程)采用唯一的非成组索引,对任何外键列[字段]采用非成组索引。不过,索引就象是盐,太多了菜就咸了。你得考虑数据库的空
间有多大,表如何进行访问,还有这些访问是否主要用
您可能关注的文档
- 某截污工程施工组织设计.docx
- 红色党政风述职述廉报告PPT.pptx
- (2025.01.06)以高质量发展推动新时代西部大开发调研报告.docx
- (2025.01.06)在全县安全生产会议上的讲话.docx
- (2025.01.06)XX区在全市2025年工作务虚会的发言.docx
- (2025.01.05)2024年党风廉政建设专题会议记录.docx
- (5篇)关于学校关工委的工作总结合集.docx
- 2024幼儿园党支部书记抓党建工作述职报告.docx
- 2024年度民主生活会前理论学习中心组集体学习主持词(含总结讲话).docx
- 2024年度司法局年度工作总结:法治征程中的奋进与担当.docx
- 五个管好的意识形态工作总结.docx
- 在学校党员大会上的讲话:今年国际教育发展的四个主题.docx
- 在区廉政谈话会上的讲话.docx
- 学习贯彻2024年中央经济工作会议精神 打好政策“组合拳”保持经济稳定增长.pptx
- (7篇)学习贯彻中央经济工作会议精神研讨发言心得体会汇编.docx
- 关于“时代新人”视阈下高职思政课教学实践探究报告.docx
- (2025.01.05)关于城市营商环境现状与优化路径探索报告.docx
- 教育工作会议主题发言材料和讲话材料汇编(6篇).docx
- 镇党委副书记兼派出所所长关于2024年度民主生活会个人对照查摆剖析材料.docx
- 县委常委班子2024年度民主生活会对照检查.docx
文档评论(0)