数据库系统中的查询技术探讨毕业论文(编辑修改稿)内容摘要:
要性和必要性。 所以,对数据库查询技术的优化研究就变得尤为重要。 这对工作效率有极大的影响,这也是本人选择此题目的理由。 选题背景 第 3 页 共 16 页 国内外发展现状和发展趋势与研究的主攻方向 从 20 世纪 60 年代末期开始到如今,数据库技术已经发展了 40 多年,已经经历了三代演变,目前已经发展成为一个庞大的数据库家族,而且关系数据库取得了巨大的成功,关系数据库以其查询语言的非过程化,数据模型和用户视图的简明性,以及较高的数据独立性等特点,已经被广泛使用,在数据库领域中占有重要的地位。 我国的数据库 (主要是中文数据库 )建设起步于 70年代中后期 ,经过几十年的发展,我国的数据库技术进步很大,在商用数据库管理系统( DBMS)中也出现了像 OpenBase、SECBase 等自主版权的数据库管理系统。 数据库查询 技术也随着数据库的发展而进步着。 但是,由于使用高级查询语言和存在费时低效的多关系连接操作使得数据库的响应速度较慢,让众多用户无法忍受。 查询响应速度已经成为数据库的重要指标和主要发展瓶颈,特别是对于大型数据库而言,这一点尤为突出。 为了实现快速查询,除了在数据库的物理设计、关系规范化等方面进行改进外,一个关键措施就是提供最优的查询路径决策能力,提高查询响应速度。 本文就是通过此方面的探讨和研究,力争使 SECBase 数据库的查询优化技术得到进一步提高。 查询优化 概述 查询优化的基本概念 所谓查询优化,就是在查询执行引擎生成一个执行策略的过中,尽量使查询的总开销和总时间达到最小。 实际系统对查询优化的具体实现不同,但一般来说,可以归纳为四个步骤: ( 1)将查询转换成某种内部表示,通常是语法树。 ( 2)根据一定的等价变换规则把语法树换成优化 (标准 )形 式。 数据库系统中的查询技术探讨 第 4 页 共 16 页 (3) 选择底层的操作算法。 对于语法树中的每一个操作需要根据存取路径、数据的存储分布、存储数据的聚簇等信息来选择具体的执行算法。 ( 4) 生成查询计划。 查询计划是由一系列内部操作组成的,这些内部操作按照一定的次序构成查询的一个执行方案,通常这样的执行方案有很多个,需要对每个执行计划计算代价,从中选择代价最小的一个。 其过程如下图 1所示 : 图 1 查询优化处理过程 关系查询语言 数据库的查询主要是通过查询语言来完成的,关系查询语言通常分为过程性的和描述性的。 关系数据模型可以为数据库提供一个数据无关的接口,关系数据库语言是关系演算,进行数据查询时,只需对要查询的数据进行简单的描述,而无须说明如何获取这查询优化概述 第 5 页 共 16 页 些数据。 关系代数是关系模型中最为著名的过程性查询语言,是关系操纵语言的一种传统表达方式,它是用对关系的运算来表达查询的,关系代数的运算按运算符的不同可分为传统的集合运算和专门的关系运算。 传统的集合运算是二目运算,包括并、差、交、广义笛卡尔积四种运算。 专门的关系运算包括选择、投影、连 接、除等。 关系数据库中用得最广泛的描述性语言就是 SQL查询语句,其本质就相当于数据操纵语言 DML。 使用 SQL语言进行数据库查询,用户可以方便快捷的获取数据,但是使用这种语言,同样也需要对搜索、存取操作以及数据传输过程进行必要的说明,因此相应的查询优化技术的研究也在不断进行中。 SQL 语言的一般格式如下: SELECT columnlist FROM tablelist WHERE conditionlist 其中, columnlist 是要返回的查询 结果的属性列表, tablelist 是查询所涉及到的所有关系, conditionlist 是条件表达式,条件表达式中的谓词可以将查询作为其操纵数。 查询优化目标 查询优化的目标是:用最少的代价,最短的时间取得最理想的结果。 基于用最少的代价的目标是,使查询执行所使用的系统资源总和尽量地少,从而降低系统开销,整个系统的开销可以从单个系统资源的开销表达式中推出;基于最短的查询时间优化的目标是尽量走最短最有效的路径,从而减少查询的响应时间。 数据库系统中的查询技术探讨 第 6 页 共 16 页 查询处理流程 查询处理过程如下图 2 所示: 图 2 查询处理步骤 基本步骤包括: 1. 语法分析与翻译; 2. 优化; 3. 执行。 查询处理开始之前系统必须将查询语句翻译成系统内部的表示形式。 翻译过程类似与编译器语法分析器的工作。 在翻译过程中要对用户的查询进行语法检查,并构造该查询语句的语法分析树表示,进而翻译 成关系代数表达式。 优化器利用数据字典中的统计信息对关系代数表达式进行代价评估,从而产生出最优的执行计划。 执行引数据库查询优化技术 第 7 页 共 16 页 擎再为每一个关系操作或操 作组实现一系列物理操作。 4 数据库查询优化技术 分布式查询优化 4. 分布式查询优化要考虑的问题 分布式数据库存在于网络环境中,由于数据的分布性,一次查询所操纵的对象可能分布于不同的网络节点中,由此带来的开销和执行速度就会不一样,优化所要考虑的因素就更为复杂。 分布式数据库环境中的查询优化要考虑以下两个关键的问题: (1)数据和信息均要通过通信线路进行传输,存在延迟的问题将减慢整个查询执行过程。 (2)网络中多处理器的存在提供了并行处理和传输的机会,应充分利用可以加快查询相应的速度。 在分布式数据库系统中,还影响到物理查询计划设计的复杂性和可选方案。 在选择物理查询计划时必须考虑的问题包括 : (1)如果某个所需的关系 R有多个副本,那么应该从哪个副本中获得 R的值。 (2)当在两个关系 R 和 S 上实施某个操作时,若有多个可选方案时,我们应该选择哪个。 为了简化查询的执行,有五条应用于等价变换的一般准则: (1)使用选择和投影的幂等来为每个操作数关系产生相应的选择和投影。 (2)把算符树中的选择和投影运算尽可能向下推移。 (3)把选择运算向下推到算符树的树叶处,然后对它们使用限定关系代数;如果结果的限定语是永假式,则用空关系来代替此次选择的结果。 (4)利用限定关系代数来求结合的操作数的限定语之值;如果结合结果的限定语是永假式,则用空关系来代替此子树,包括此结合及它的操作数在内。 (5)为了分布出现在全局查询中的结合,必须把并集向上推,超过我们要分布的结合的范围。 数据库系统中的查询技术探讨 第 8 页 共 16 页 分布式查询优化过程 分布式查询优化已经开展了很多年,从各种应用角度,所有的工作都可以归分为两种基 本的方法: (1) 通过减少分布式查询中数据传输的数量来降低传输的费用。 (2) 用并行技术来降低反应时间。 下图 3 体现了分布式查询处理的各个阶段,这个查询从用户输入 SQL 语句开始,然后由解析器翻译,并进行优化,使之成。数据库系统中的查询技术探讨毕业论文(编辑修改稿)
相关推荐
到系统数据的安全性,对系统资源备份需要大量空间,所以选用了 300GB 的高速高缓存的服务器硬盘。 软件环境:考虑到兼容性,选用 windows 2020 sever、 IIS ASP、 SQL 组合的软件环境。 第 3 章 需求分析 新系统目标 鉴于 学校 网络环境和学生个人电脑的普及, 黑河学院 《数据结构》教学精品网 有利于减轻教师除授课外的其余 教学辅助工作 ,避免了学生获取的信 息滞后
SP/Servlets、JavaBean 以及 EJB (Enterprise JavaBeans)的应用。 Eclipse: 中文的翻译为 “帕斯菲达,是一种可扩展的开放 源代码 IDE。 集成开发环境 (IDE)经常将其应用范围限定在“开发、 构建 和 调试 ”的周期之中。 Eclipse允许在同一 IDE 中集成来自不同供应商的工具,并实现了工具之间的 互操作性 ,从而显著改变了项目工作
一工 序的生产率限制了整个车间的生产率的提高时,该工序的刀具寿命要选的低些,当某些工序单位时间内所分担到的全厂开支较大时,刀具寿命应选的低些。 大件精加工时,为保证至少完成一次走刀,避免切削时中途换刀,刀具寿命应按零件精度和表面粗糙度来确定。 与普通机床加工方法相比,数控加工对刀具提出了更高的要求,不仅需要刚性好、精度高,而且要求尺寸稳定,耐用度高,同时要求安装调整方便
的帖子 前置条件: 无 基本事件流: 1. 用户在首页用鼠标点击“用户论坛”按钮,页面将跳转至论坛 2. 用户在论坛点击选择论坛版块,页面跳转至论坛版块,显示版块内帖子列表 3. 用户点击选择一个帖子,进入到帖子页面 4. 用户查看完毕后可以返回至网站首页或者论坛首页 5.用例终止 其他事件流 A1: 10 在用户浏览页面信息时, 随时可以 按键返回首页或论坛首页 异常事件流 :
集成环境包括用于目标设备(如 PDA 和 Smartphone)的工具。 Web 窗体 Web 窗体是用于创建可编程网页的 技术。 Web 窗体将自己呈现为浏览器兼容的 HTML 和脚本,这使任何平台上的任何浏览器都可以查看 Web 页。 Windows 窗体 Windows 窗体用于在 .NET Framework 上创建 Microsoft Windows 应用程序。
ELSIF(rst=39。 039。 )THEN tem1=0000。 tem2=0000。 ELSIF(clk39。 event AND clk=39。 139。 )THEN IF tem1=1001 THEN tem1=0000。 IF tem2=0101 THEN tem2=0000。 co=39。 139。 ELSE tem2=tem2+1。 co=39。 039。 END IF。