分布式数据库查询策略的优化探究

时间:2022-10-09 09:19:16

分布式数据库查询策略的优化探究

摘要:在计算机网络技术不断发展的背景下,信息资源的共享成为了一种普遍现象。而信息资源共享的快速发展又使分布式数据库的集成技术得到了质的飞跃。在分布式数据库中,查询优化是一个关键性的问题。虽然我国当前的分布式数据库查询优化工作取得了一些成果,但离完善尚有很长一段距离。对此,本文围绕分布式数据库查询策略的优化问题展开了分析与探讨。

关键词:分布式数据库 数据查询 策略优化

中图分类号:TP932 文献标识码:A 文章编号:1007-9416(2015)03-0194-01

数据库的分布存在集中式和分布式的区分。其中,集中式数据库的数据存储和处理都集中在一台计算机上,通过一台计算机来完成;而分布式数据库则是将数据放在计算机网络的不同场地的计算机中,并且每一个场地都能够自主处理和完成局部应用,都有自己的局部数据库,而不同场地的计算机通过网络来互相连接起来,从而构成一个逻辑上集中而物理上分布的完整的数据库系统。由以上描述可以看出,分布式数据库相对集中式数据库要复杂许多,而实际上,分布式数据库需要依靠增加数据的冗余来提高其使用安全性和使用性能。这样一来,分布式数据库的系统查询处理就变得更为复杂,查询策略的优化问题突显出来。

1 分布式数据库查询概述

1.1 查询优化目标

一般而言,数据库的查询优化要以执行查询的预期代价为依据,而查询优化目标的制定在不同类型的数据库中有一些不同之处。就集中式数据库而言,因为它的系统运行集中在一台计算机上,所以数据查询与处理也都集中在一台计算机的中央处理器和输入输出端口上,而查询优化也就要从中央处理器和输入输出端口方面着手。然而,分布式数据库不仅是数据分布在不同的计算机上,而且还存在着许多冗余,在数据传输的过程中产生了通信费用,所以查询优化除了要从中央处理器和输入输出端口方面着手之外,还需要对网络通信进行优化。相对而言,分布式数据库的查询优化目标要复杂许多。将分布式数据库的查询优化目标进行划分,可以得到两种查询优化目标类型:其一,以总代价最小为目标,即以中央处理器、输入输出端口和网络通信的优化代价最小为目标;其二,以查询响应时间最短为目标。查询响应时间是一项关乎查询处理速度的重要指标,因此它作为另一个查询优化目标而存在。

1.2 查询优化内容

从查询处理的工作流程来看,分布式数据库的查询优化内容为查询分解、数据本地化、全局优化和局部优化。这里所说的查询分解是指通过某种方式将查询命令转化为代数表达式,从而让计算机来执行;而数据本地化是指将上一层次的定义转化为具体的操作命令,从而使片段节能查询能够达到适合的程度;全局优化是指以最小数据传输量为目标,将所有数据进行连接并优化;局部优化是指对每一个站点进行查询优化。

2 分布式数据库查询策略的优化方案

第一,使用关系代数的等价变换优化算法。从查询优化的原理来看,减少数据操作量是优化查询系统操作的一个重要途径,而使用关系代数的等价变换优化算法则不仅能够使数据操作量减少,而且还能使操作次数减少。其原理为:首先把查询问题转变成关系代数表达式,而完成之后就得到了查询语法树,之后再按照等价变化的原则来使用关系代数式进行变换,从而优化数据库的算法。

第二,使用半连接操作查询优化算法。除了减少数据操作量之外,减少操作关系数据量也是优化查询系统的一个重要的途径。半连接操作查询优化算法在减少操作关系数据量方面有着出色的表现。其原理为:进行半连接操作,将参与操作的对象限制在参与连接的数据量中,以这种半连接术来优化查询系统操作。

第三,使用直接连接操作查询优化算法。这种优化方案主要适用于查询目标的属性相对较少并且不属于某种连接条件的情况。根据直接连接操作查询优化算法的工作原理来看,它是通过直接连接操作的方式进行查询优化处理,这种优化处理方式与半连接操作有着很大的不同,而具体使用哪一种优化查询方案,还是要考虑二者在查询优化处理中所花费的成本。

3 分布式数据库查询优化的基本方法

分布式数据库查询优化的基本方法要根据其查询目标而定,因此,根据前文所述,分布式数据库查询优化的基本方法主要有两个,一个是针对查询执行的代价进行优化,即查询转化;另一个是针对查询相应时间进行优化,即查询映射。查询转化的实质就是以不同的顺序来执行关系操作,例如连接操作和投影操作的顺序就可以加以改变,从而使查询最优化。而查询映射是一种对操作的执行算法和关系的存取方法进行决策的过程,不同的映射将会产生不同的查询效果。下面笔者来介绍几个常见的分布式数据库查询优化算法。第一,System R*算法。这是源自美国加利福尼亚州的一种系统,它采用的是直接连接操作的查询方式,而以提供地点自作为最重要的目标。System R*算法目前已经能够控制由另一个地点上对其数据进行访问的过程,但是数据处理仍然受到地点的限制。第二,SDD―1算法。这个算法分为两个部分,即基本算法和后优化。基本算法是提供半连接缩减程序集,并据此而做出一个最有益的执行策略;而后优化是以执行策略更加合理为目的,对基本算法所得到的解进行修正的过程。需要注意的是,SDD―1算法比较复杂,这使得它的查询搜索代价在在短时间内迅速增加,而这些对查询优化是非常不利的。但是,我们仍然可以找到最佳的查询路径来弥补这种不利因素所造成的影响。比如将人工智能里面的A*算法引进到SDD―1算法中,使用A*算法的思想及工作原理来对SDD―1算法进行查询优化,等等。

4 结语

计算机网络技术促成了数据库技术的产生与发展,而在数据库技术中,分布式数据库的应用最为广泛。同时也正因为这一点,分布式数据库中的数据越来越多,而查询工作的负担越来越大。因此,对分布式数据库查询策略的优化进行探究具有重要的现实意义。通过明确分布式数据库的查询优化目标和查询优化内容,我们可以找到优化分布式数据库查询策略的突破口,进而通过优化算法、优化系统设计方案等方式来完成分布式数据库查询策略的优化工作,为用户提供更好的查询服务。

上一篇:庄子,你还在外星挨饿吗? 下一篇:TBH―522型短波广播发射机数字化自动调谐系统