Results 1 - 10
of
12
Control of an Extensible Query Optimizer: A Planning-Based Approach
, 1993
"... In this paper we address the problem of controlling the execution of a query optimizer. We describe a control for the optimization process that is based on planning. The controller described here is a goal-directed planner that intermingles planning with the execution of query transformations, and u ..."
Abstract
-
Cited by 37 (3 self)
- Add to MetaCart
In this paper we address the problem of controlling the execution of a query optimizer. We describe a control for the optimization process that is based on planning. The controller described here is a goal-directed planner that intermingles planning with the execution of query transformations, and uses execution results to direct further planning of optimizer processing. We describe this control in the context of the Epoq extensible architecture. Epoq is an approach to extensible query optimization that integrates specialized rewrite strategies through its extensible control mechanism. This paper describes our planning-based approach to extensible control and illustrates it with a simple example. 1 Introduction Optimization of a query is inherently a process of searching the space of expressions equivalent to the query. Typically, a given optimizer can only visit some portion of this space, since the set of transformation rules is usually incomplete, the cost of optimization must be ...
Extensible Query Processing in an Object-Oriented Database
, 1993
"... In this thesis we address the problem of providing efficient processing of queries in the extensible environment induced by object-oriented databases. We define a framework for query processing in an object-oriented database and develop designs for major components of this framework. The framework e ..."
Abstract
-
Cited by 20 (1 self)
- Add to MetaCart
In this thesis we address the problem of providing efficient processing of queries in the extensible environment induced by object-oriented databases. We define a framework for query processing in an object-oriented database and develop designs for major components of this framework. The framework encompasses an object-oriented data model, an algebra to query over that model, transformation rules for the algebra, an internal representation for queries expressed in the algebra, a cost model for analyzing query expressions, and an architecture for an extensible query optimizer. The major contributions of this thesis are an algebra and transformation rules, a representation, and an architecture for extensible query optimization. We show how these components fit into the framework and interact with each other. The EQUAL query algebra presented in this thesis is the first query algebra for object-oriented database systems to be completely consistent with data abstraction, and one of the few...
An Architecture for Query Processing in Persistent Object Stores
- IN PROCEEDINGS OF THE HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES, VOLUME II
, 1991
"... Query optimizers for persistent object systems should be extensible to react to user-supplied abstract types. Current architectures support only a single, non-extensible technique for controlling the optimization process. We propose an alternative to the current extensible architectures that will su ..."
Abstract
-
Cited by 19 (6 self)
- Add to MetaCart
Query optimizers for persistent object systems should be extensible to react to user-supplied abstract types. Current architectures support only a single, non-extensible technique for controlling the optimization process. We propose an alternative to the current extensible architectures that will support multiple optimizer control strategies and the addition of new control strategies. The optimizer consists of a collection of optimization regions, each of which can transform queries according to a particular control strategy, set of transformations and cost model. A global optimizer control coordinates the movement of a query between these regions. This architecture provides extensibility in the optimizer's repertoire of control strategies through the addition of new regions. In this paper we describe our approach and demonstrate its utility by following the optimizer as it works on an example query. The optimizer will move the query between three distinct regions. The different region...
An Algebraic Framework for Physical OODB Design
- In Proc. of the 5th Int'l Workshop on Database Programming Languages (DBPL95
, 1995
"... Physical design for object-oriented databases is still in its infancy. Implementation decisions often intrude into the conceptual design (such as inverse links and object decomposition). Furthermore, query optimizers do not always take full advantage of physical design information. This paper propos ..."
Abstract
-
Cited by 14 (5 self)
- Add to MetaCart
Physical design for object-oriented databases is still in its infancy. Implementation decisions often intrude into the conceptual design (such as inverse links and object decomposition). Furthermore, query optimizers do not always take full advantage of physical design information. This paper proposes a formal framework for physical database design that automates the query translation process. In this framework, the physical database design is specified in a declarative manner. This specification is used for generating an efficient query transformer that translates logical queries into programs that manipulate the physical database. Alternative access paths to physical data are captured as simple rewrite rules that are used for generating alternative plans for a query. 1 Introduction One important advantage that commercial database systems offer is data independence, whereby abstract objects and the operations upon them can be significantly decoupled from their implementations. In a r...
Industrial-Strength Parallel Query Optimization: issues and lessons
, 1994
"... In the industrial context of the EDS project, we have designed and implemented a query optimizer which we have integrated within a parallel database system. The optimizer takes as input a query expressed in ESQL, an extension of SQL with objects and rules, and produces a minimum cost parallel execut ..."
Abstract
-
Cited by 12 (1 self)
- Add to MetaCart
In the industrial context of the EDS project, we have designed and implemented a query optimizer which we have integrated within a parallel database system. The optimizer takes as input a query expressed in ESQL, an extension of SQL with objects and rules, and produces a minimum cost parallel execution plan. Our research agenda has focused on several difficult problems: support of ESQL's advanced features such as path expressions and recursion, modelling of parallel execution spaces and extensibility of the search strategy. In this paper, we give a retrospective on the optimizer project with emphasis on our design goals, research contributions and implementation decisions. We also describe the current optimizer prototype and report on experiments performed with a pilot application. Finally, we present the lessons learned. 1 Introduction EDS is an ESPRIT project started in 1989 by Bull, ICL, Siemens, ECRC and INRIA with the major goal of producing a parallel database server [11] which e...
A New Heuristic for Optimizing Large Queries
- In 9th International Conference, DEXA'98
, 1998
"... There is a number of OODB optimization techniques proposed recently, such as the translation of path expressions into joins and query unnesting, that may generate a large number of implicit joins even for simple queries. Unfortunately, most current commercial query optimizers are still based on the ..."
Abstract
-
Cited by 12 (4 self)
- Add to MetaCart
There is a number of OODB optimization techniques proposed recently, such as the translation of path expressions into joins and query unnesting, that may generate a large number of implicit joins even for simple queries. Unfortunately, most current commercial query optimizers are still based on the dynamic programming approach of System R, and cannot handle queries of more than ten tables. There is a number of recent proposals that advocate the use of combinatorial optimization techniques, such as iterative improvement and simulated annealing, to deal with the complexity of this problem. These techniques, though, fail to take advantage of the rich semantic information inherent in the query specification, such as the information available in query graphs, which gives a good handle to choose which relations to join each time. This paper presents a polynomial-time algorithm that generates a good quality order of relational joins. It can also be used with minor modifications to sort OODB a...
Parallel Query Processing with Zigzag Trees
- THE VLDB JOURNAL
, 1993
"... In this paper, we describe our approach to the compile-time optimization and parallelization of queries for execution in DBS3 or EDS. DBS3 is a shared-memory parallel database system, while the EDS system has a distributed-memory architecture. Because DBS3 implements a parallel dataflow execution ..."
Abstract
-
Cited by 12 (1 self)
- Add to MetaCart
In this paper, we describe our approach to the compile-time optimization and parallelization of queries for execution in DBS3 or EDS. DBS3 is a shared-memory parallel database system, while the EDS system has a distributed-memory architecture. Because DBS3 implements a parallel dataflow execution model, this approach applies to both architectures. Using randomized search strategies enables exploring a search space large enough to include zigzag trees, which are intermediate between left-deep and right-deep trees. Zigzag trees are shown to provide better response time than right-deep trees in case of limited memory. Performance measurements run using the DBS3 prototype show the advantages of zigzag trees under various conditions.
Physical Database Design for an Object-Oriented Database System
, 1992
"... Object-oriented database systems typically offer a variety of structuring capabilities to model complex objects. This flexibility, together with type (or class) hierarchies and computed "attributes" (methods), poses a high demand on the physical design of object-oriented databases. Similar to tradit ..."
Abstract
-
Cited by 8 (6 self)
- Add to MetaCart
Object-oriented database systems typically offer a variety of structuring capabilities to model complex objects. This flexibility, together with type (or class) hierarchies and computed "attributes" (methods), poses a high demand on the physical design of object-oriented databases. Similar to traditional databases, it is hardly ever true that the conceptual structure of the database is also a good, that is, efficient, internal one. Rather, data representing the conceptual objects may be structured completely different, for performance reasons. Database systems providing a reasonable amount of data independence allow a physical design that differs from the logical structure significantly. Hence, the performance of the system can be tailored to the overall transaction load faced. The paper presents choices for physical designs that make use of a complex storage model, an extended nested relational model. A first prototype of a physical design optimizer is also presented. 1.1 Introduction...
Parallel Query Processing in DBS3
- In Proc. Int'l. Conf. on Parallel and Distr. Inf. Sys
, 1993
"... In this paper, we describe our approach to the compile-time optimization and parallelization of queries for execution in DBS3, a shared-memory parallel database system. Our approach enables exploring a search space large enough to include zigzag trees which are intermediate between left-deep and rig ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
In this paper, we describe our approach to the compile-time optimization and parallelization of queries for execution in DBS3, a shared-memory parallel database system. Our approach enables exploring a search space large enough to include zigzag trees which are intermediate between left-deep and rightdeep trees. Zigzag trees are shown to provide better response time than right-deep trees in the case of limited memory. Because DBS3 implements a parallel dataflow execution model, this approach applies to both shared-memory and distributed-memory architectures. Performance measurements run using the DBS3 prototype show the advantages of zigzag trees under various conditions. 1 Introduction DBS3 (Database System on Shared-Store) [1] is a shared-memory parallel database system being developed by BULL and INRIA in the context of an Esprit project. The goal of DBS3 is to provide highperformance for queries expressed in ESQL [7], a conservative extension of SQL with object and deductive capab...
An Extensible Query Optimizer Architecture for the TIGUKAT Objectbase Management System
, 1994
"... Objectbase Management Systems are expected to serve data management needs of a wide range of application domains with possibly different query optimization requirements, creating the need of extensibility in the query optimizer to be able to handle the diversity of those requirements. This thesis de ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
Objectbase Management Systems are expected to serve data management needs of a wide range of application domains with possibly different query optimization requirements, creating the need of extensibility in the query optimizer to be able to handle the diversity of those requirements. This thesis describes the development of an extensible query optimizer architecture for the TIGUKAT Objectbase Management System, which has a uniform behavioral object model DBMS that represents every system component as a first-class object. Consistent with this philosophy, every component of the optimizer is modeled as a first-class object, providing the ultimate extensibility that the object-oriented paradigm offers. This thesis also describes how the optimizer components are modeled as extensions of the TIGUKAT type system. Acknowledgements I would like to thank my supervisor Dr. M. Tamer Ozsu for suggesting the topic of this research and for his invaluable guidance and support in writing this the...

