论文部分内容阅读
摘 要结合当前分布式数据库技术的发展现状,得出数据库的查询速度与效率是影响数据库性能的最重要因素。本文对分布式数据库的特性进行分析,从分布式查询的层次结构、等价关系代数、索引、查询语句等方面对数据库查询优化进行了研究。
关键词分布式数据库;查询优化;索引
中图分类号TP文献标识码A文章编号1673-9671-(2011)081-0113-01
随着计算机技术的迅速发展,大量信息数据的存储需求使数据库应用范围越来越广泛。其中数据库分为分布式和并行式两类,结合计算机网络的应用,分布式数据库应用更为广泛。基于数据量的增大,数据查询的效率需要优化与提高。本文主要研究分布式数据库的数据查询优化问题,对优化技术进行分析与研究。
1分布式数据库的概念与特性
分布式数据库系统是物理上分散而逻辑上集中的数据库系统。该系统可以将存放分散的数据通过计算机网络进行集中的管理,组成完整的数据库管理系统。分布式数据系统有机的结合了计算机网络的信息传输功能,具备以下主要特性:
1)数据的分散存储性:分布式的数据库系统中数据以节点的方式分散存储在不同的站点下,区别于集中管理的数据库数据,具有分散性和关联性。
2)数据的逻辑整体性:数据分散存放的过程中与其他数据之间具有逻辑关联,建立远程关系形成整体,做到数据存放分散但具有逻辑整体性。
3)数据的独立性:存放数据库网络站点的施数据各自独立,登录用户可以实现信息共享,却自成一体进行局部管理。
分布式数据库的数据查询请求是通过计算机网络进行传输和响应控制的,其中数据查询优化的方法是提高数据库管理水平的关键因素。
2分布式数据库查询优化策略研究
当前分布式数据库查询以关系型数据存储为基础,对数据建立索引,采用SQL作为检索查询工具,可从硬件设备与查询策略上进行查询的优化和改进。
2.1硬件优化
提高服务器性能,升级计算机硬件配置。由于数据的访问量大,访问内存数据的需求相对提高,增大内存可以将缓冲区中的数据量增多,减少磁盘的供耗时間,提高数据访问效率;设置多处理器进行数据库管理,对多事务实现并行;配置高转速硬盘减少数据读取时间,提高读取速度。
增大服务器的内存高速缓冲区,其大小由缓冲区的命中率决定,数值越高,性能越好。其计算方式为:
高速缓冲区命中率=1-(从磁盘存取的数据块的总数/(当前块被请求的次数 +内存缓冲区能满足的请求总数))。因而,可以通过初始化设置系统的磁盘缓存块数的参数来增加高速缓冲区的容量。
2.2查询策略优化
1)分布式查询的层次结构优化。分布式查询策略是将客户端提交的查询请求转换为本地可执行的查询语句,对多节点的查询结果进行汇总。将其结构分为四个层次:查询解析、数据本地转换、数据全局优化、数据节点优化,如图1。①查询解析:将整体查询请求进行分析,转换为全局查询树从而得到段查询树;②数据本地转换:将查询树中的命令进行本地化转换,对当前节点数据库中的数据进行访问;③数据全局优化:对分段检测查询选择最优查询顺序,将通信代价降低至最低,优化关系数据的统计,得到整体的统计数据;④数据节点优化:对本地数据库中的数据进行优化存储,采用集中式数据库的优化算法进行关系运算。
2)等价关系代数优化。等价关系代数优化是查询优化的理论基础和前提。关系代数表达式等价主要是指用同样的关系实例代替两个表达式中相应关系时所得到的结果是一样的,也就是指得到相同的属性集和相同的元组集。查询时对数据选择执行效率最高的等价的关系代数方式,以此编写SQL查询语句。依据以下原则进行等价关系代数优化:①将选择与投影关系运算提前;②选择与投影关系一并进行,避免重复检
图1分布式查询处理层次结构图
索;③选择或投影与连接操作结合,缩小关系范围。
3)索引优化。将数据库中的数据依据一定结构进行排序和关联,提升数据查询效率的方式叫做索引。索引可以实现数据库中数据的目录化数据管理,快捷的访问数据库中的信息,对数据表进行遍历。数据库中的数据添加、删除、修改会引起索引随之变化,降低数据更新的效率。因而索引创建时需从利用率、查询时效率、索引创建的位置、索引存取次数等因素考虑,避免以下操作:①在频繁操作过程中尽量避免建立该列的索引;②在取值范围大的常用的条件表达式的数据列上建立索引;③对多列同时存取的重复性数据多建立组合索引;④对非关键字的列数据尽量避免创建索引。
4)查询语句优化。分布式数据库,采用全局查询处理,分两步进行。即全局查询到逻辑查询的转换以及逻辑查询到物理查询的转换。查询语句独立于程序设计逻辑,相对于程序源代码的优化, 查询语句优化能够有效的降低查询处理的时间,风险和时间成本更低,因而查询语句的优化具有重要意义。分布式数据库查询策略主要分图的查询优化和树的查询优化两类。图的查询优化作为最常用的查询策略,主要依据关系的静态属性进行连接计算,连接合并图中代价最小的两个站点,形成检索算法。树的查询优化原理是生成一棵最小代价查询树,以此缩短查询时间。但树的搜索算法在执行时会影响周边运算代价,且不能进行环查询,因而在环路查询时存在限制。
3结束语
随着分布式数据库系统在网络应用中的范围越来越大,进一步促进了数据库的应用规模和数据量的迅猛发展,本文针对分布式数据库查询优化技术的影响因素进行了分析,提出一系列数据库查询优化的基本原则,从实际出发,最大限度的提升数据检索的效率和数据库的整体性能。
参考文献
[1]邵佩英.分布式数据库系统及其应用[M].科学出版社,2000,6.
[2]魏琦,于林林,宋旭东.关系数据库查询优化策略研究[J].电脑知识与技术,2010,31:8845-8847.
[3]梁志宏,等.等价关系代数查询优化方法的研究[J].山西师范大学学报,2004,18:34-38.
[4]Jie Wu著,高传善等译.分布式系统设计[M].机械工业出版社,2001.
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文
关键词分布式数据库;查询优化;索引
中图分类号TP文献标识码A文章编号1673-9671-(2011)081-0113-01
随着计算机技术的迅速发展,大量信息数据的存储需求使数据库应用范围越来越广泛。其中数据库分为分布式和并行式两类,结合计算机网络的应用,分布式数据库应用更为广泛。基于数据量的增大,数据查询的效率需要优化与提高。本文主要研究分布式数据库的数据查询优化问题,对优化技术进行分析与研究。
1分布式数据库的概念与特性
分布式数据库系统是物理上分散而逻辑上集中的数据库系统。该系统可以将存放分散的数据通过计算机网络进行集中的管理,组成完整的数据库管理系统。分布式数据系统有机的结合了计算机网络的信息传输功能,具备以下主要特性:
1)数据的分散存储性:分布式的数据库系统中数据以节点的方式分散存储在不同的站点下,区别于集中管理的数据库数据,具有分散性和关联性。
2)数据的逻辑整体性:数据分散存放的过程中与其他数据之间具有逻辑关联,建立远程关系形成整体,做到数据存放分散但具有逻辑整体性。
3)数据的独立性:存放数据库网络站点的施数据各自独立,登录用户可以实现信息共享,却自成一体进行局部管理。
分布式数据库的数据查询请求是通过计算机网络进行传输和响应控制的,其中数据查询优化的方法是提高数据库管理水平的关键因素。
2分布式数据库查询优化策略研究
当前分布式数据库查询以关系型数据存储为基础,对数据建立索引,采用SQL作为检索查询工具,可从硬件设备与查询策略上进行查询的优化和改进。
2.1硬件优化
提高服务器性能,升级计算机硬件配置。由于数据的访问量大,访问内存数据的需求相对提高,增大内存可以将缓冲区中的数据量增多,减少磁盘的供耗时間,提高数据访问效率;设置多处理器进行数据库管理,对多事务实现并行;配置高转速硬盘减少数据读取时间,提高读取速度。
增大服务器的内存高速缓冲区,其大小由缓冲区的命中率决定,数值越高,性能越好。其计算方式为:
高速缓冲区命中率=1-(从磁盘存取的数据块的总数/(当前块被请求的次数 +内存缓冲区能满足的请求总数))。因而,可以通过初始化设置系统的磁盘缓存块数的参数来增加高速缓冲区的容量。
2.2查询策略优化
1)分布式查询的层次结构优化。分布式查询策略是将客户端提交的查询请求转换为本地可执行的查询语句,对多节点的查询结果进行汇总。将其结构分为四个层次:查询解析、数据本地转换、数据全局优化、数据节点优化,如图1。①查询解析:将整体查询请求进行分析,转换为全局查询树从而得到段查询树;②数据本地转换:将查询树中的命令进行本地化转换,对当前节点数据库中的数据进行访问;③数据全局优化:对分段检测查询选择最优查询顺序,将通信代价降低至最低,优化关系数据的统计,得到整体的统计数据;④数据节点优化:对本地数据库中的数据进行优化存储,采用集中式数据库的优化算法进行关系运算。
2)等价关系代数优化。等价关系代数优化是查询优化的理论基础和前提。关系代数表达式等价主要是指用同样的关系实例代替两个表达式中相应关系时所得到的结果是一样的,也就是指得到相同的属性集和相同的元组集。查询时对数据选择执行效率最高的等价的关系代数方式,以此编写SQL查询语句。依据以下原则进行等价关系代数优化:①将选择与投影关系运算提前;②选择与投影关系一并进行,避免重复检
图1分布式查询处理层次结构图
索;③选择或投影与连接操作结合,缩小关系范围。
3)索引优化。将数据库中的数据依据一定结构进行排序和关联,提升数据查询效率的方式叫做索引。索引可以实现数据库中数据的目录化数据管理,快捷的访问数据库中的信息,对数据表进行遍历。数据库中的数据添加、删除、修改会引起索引随之变化,降低数据更新的效率。因而索引创建时需从利用率、查询时效率、索引创建的位置、索引存取次数等因素考虑,避免以下操作:①在频繁操作过程中尽量避免建立该列的索引;②在取值范围大的常用的条件表达式的数据列上建立索引;③对多列同时存取的重复性数据多建立组合索引;④对非关键字的列数据尽量避免创建索引。
4)查询语句优化。分布式数据库,采用全局查询处理,分两步进行。即全局查询到逻辑查询的转换以及逻辑查询到物理查询的转换。查询语句独立于程序设计逻辑,相对于程序源代码的优化, 查询语句优化能够有效的降低查询处理的时间,风险和时间成本更低,因而查询语句的优化具有重要意义。分布式数据库查询策略主要分图的查询优化和树的查询优化两类。图的查询优化作为最常用的查询策略,主要依据关系的静态属性进行连接计算,连接合并图中代价最小的两个站点,形成检索算法。树的查询优化原理是生成一棵最小代价查询树,以此缩短查询时间。但树的搜索算法在执行时会影响周边运算代价,且不能进行环查询,因而在环路查询时存在限制。
3结束语
随着分布式数据库系统在网络应用中的范围越来越大,进一步促进了数据库的应用规模和数据量的迅猛发展,本文针对分布式数据库查询优化技术的影响因素进行了分析,提出一系列数据库查询优化的基本原则,从实际出发,最大限度的提升数据检索的效率和数据库的整体性能。
参考文献
[1]邵佩英.分布式数据库系统及其应用[M].科学出版社,2000,6.
[2]魏琦,于林林,宋旭东.关系数据库查询优化策略研究[J].电脑知识与技术,2010,31:8845-8847.
[3]梁志宏,等.等价关系代数查询优化方法的研究[J].山西师范大学学报,2004,18:34-38.
[4]Jie Wu著,高传善等译.分布式系统设计[M].机械工业出版社,2001.
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文