语义数据库网格的查询优化算法
Dynamic Query Optimization Approach for Semantic Database Grid
-
摘要: 语义Web通过对服务和信息提供良好的语义定义来扩展当前的Web技术,使得用户、程序、软件智能体等能进行有效地交互和协作。其主要思想是将信息的内容以机器可处理的形式加以表示,并运用相应的智能技术来利用这种表示形式所带来的优点。与此同时,由于对RDF这种易交互的元数据模型的需要,将语义Web技术引入网格系统中的价值也逐步被网格开发者所认识。将网格计算技术在语义方面加以延伸以及将语义Web技术在计算能力方面加以扩展就形成了语义网格。而语义数据库网格则是采用语义技术将分布的数据库结点集成起来以支持资源共享和高层的问题协同求解,其中的服务与信息有明确良好的语义定义以便于机器理解和自动处理。DartGridⅡ正是这种语义数据库网格,它以网格为平台,面向开放动态的网络环境,对各种异质异构的数据库提供统一的图形化访问接口,并支持数据挖掘、知识发现和协同推理等高层应用。DartGridⅡ开发过程中遵循了开放式网格服务体系结构(OGSA)、开放式网格服务基础设施(OGSI)和W3C的RDF/OWL等标准和规范。系统的性能,尤其是查询的效率关系到整个系统的成败。虽然目前已经提出了许多关于分布式数据库的查询优化算法,但是语义数据库网格的查询优化与传统的分布式数据库有着显著的不同。这些不同主要是由数据库网格结点在设计、通信和执行方面异质异构性和自治性造成的。克服数据库网格特性所带来的困难需要为数据库网格提供全局一致的数据表达模式、各结点数据模式到全局模式之间的映射方法、各结点之间负载平衡和结点动态加入和退出系统的控制策略、数据库网格查询优化器结构设计以及一整套适合数据库网格的查询优化算法。在介绍和讨论了主要的相关工作之后,我们给出对DartGridⅠ经过改进后的DartGridⅡ系统的五层结构模型和各层之间的相互关系。然后提出了一种面向语义数据库网格的,具有动态、并行和启发式特点的查询优化算法。启发式方法用于减少查询执行策略的搜索空间;并行执行来减少系统总体响应时间;动态性保证从更精确的系统状态信息来产生后继的查询执行序列。接着介绍了包括语义浏览器、可视化语义映射与注册以及查询重写与分配等一组支持数据库集成和语义信息检索的工具。最后讨论了DartGridⅡ在辅助中医学研究中的应用。开发DartGridⅡ最初的目的就是为中医学研究提供一个中医学知识储存和管理、中医学信息检索和集成的网格开台。该系统已经在中国中医研究院进行了部署,并投入实际使用。DartGridⅡ集成了中草药、中医方剂、中医临床、藏药、中医产品和企业等70多个分布在全国的数据库,配套所开发的中医药本体目前已经拥有8000多个类概念和50000多个实例概念,并在进一步的增加和完善中。现在可以通过互联网对DartGridⅡ系统进行在线访问。Abstract: Fundamentally, semantic grid database is about bringingglobally distributed databases together in order to coordinate resourcesharing and problem solving in which information is given well-definedmeaning, and DartGrid II is the implemented database gird system whosegoal is to provide a semantic solution for integrating databaseresources on the Web. Although many algorithms have been proposed foroptimizing query-processing in order to minimize costs and/or responsetime, associated with obtaining the answer to query in a distributeddatabase system, database grid query optimization problem isfundamentally different from traditional distributed queryoptimization. These differences are shown to be the consequences ofautonomy and heterogeneity of database nodes in database grid.Therefore, more challenges have arisen for query optimization indatabase grid than traditional distributed database. Following thisobservation, the design of a query optimizer in DartGrid II is presented,and a heuristic, dynamic and parallel query optimization approach toprocessing query in database grid is proposed. A set of semantic toolssupporting relational database integration and semantic-basedinformation browsing has also been implemented to realize the above vision.