Abstract. The eXtensible Markup Language (XML) is increasingly fin-
Today's DBMSs are unable to support the increasing demands of the various applications that would like to use a DBMS. Each kind of application poses new requirements for the DBMS. The Starburst project at IBM's Almaden Research Center aims to extend relational DBMS technology to bridge this gap between applications and the DBMS. While providing a full function relational system to enable sharing across applications, Starburst will also allow (sophisticated) programmers to add many kinds of extensions to the base system's capabilities, including language extensions (e.g., new datatypes and operations), data management extensions (e.g., new access and storage methods) and internal processing extensions (e.g., new join methods and new query transformations). To support these features, the database query language processor must be very powerful and highly extensible. Starburst's language processor features a powerful query language, rule-based optimization and query rewrite, and an execution system based on an extended relational algebra. In this paper, we describe the design of Starburst's query language processor and discuss the ways in which the language processor can be extended to achieve Starburst's goals.
This paper investigates the problem of translating set-oriented query specifications into iterative programs. The translation uses techniques of functional programming and program transformation. We present two algorithms that generate iterative programs from algebra-based query specifications. The first algorithm translates query specifications into recursive programs. Those are simplified by sets of transformation rules before the algorithm generates the final iterative form. The second algorithm uses a two-level translation that generates iterative programs faster than the first algorithm. On the first level a small set of transformation rules performs structural simplification before the functional combination on the second level yields the final iterative form.
The query opbnuzer Is an important system component of a relational database management system (DBMS) It 19 the responslbtity of ti component to translate the user-subnutted query -usually wntten m a non-procedural language -mto an efficient query evalwtion plan (QEP) which is then executed agamst the database The research bterature describes a wde variety of optmuzation strateges for tiferent query languages and Implementation envlronments However, very httle IS known about how to design and structure the query optmuzation component to nnplement these strateges Thus paper proposes a fust step towards the design of a modular query optlmw We descnbe its operations by transformanon rules which generate Mferent QEPs from uut~al query spec&at~ons As we d&ngmsh tiferent aspects of the query optmuxabon process, our hope ts that the approach taken m this paper wdl wntnbute to the more general goal of a modular query optmuzer as part of an extensible database management system 1, Introduction An nnportant component of today's relatIonal database management systems (DBMSs) 1s the query optumzer Usually, the user's query, expressed m a non-procedural language, describes only the comhtions that the final response must satisfy It 1s the optmuxer's responslbtity to generate a query evaluation plan (QEP) that computes the requested result efflclently Many different strate@es for fmdmg a QEP which evaluates a subnutted query efficiently have been proposed Jarke/Koch and Yu/Chang Bve comprehensrve ovemews on various query optmnzatlon techmques for centrahzed and dr+ tnbuted DBMSs, respectively [JARK84] [YUCH84]The difficult task of fmdmg a good, and possibly the best, QEP has frequently led to the Implementation of a highly sophsticated but complex optmnzer for relational DBMSs The design and emplementation of 0us system component often make changes or extensions m any of zts parts very tiflcult, or even nnposslble To overwme the above problems, this paper presents a first step towards a mod&r query optzmuer The goal of such a component 1s to clearly separate the tiferent aspects of query optmuzation m its design and Implementation as much as possible, thus makmg It easier to make changes to one part of the optutuzer anthout affectmg others Instead of addressmg the complex task of a modular query optmuzer at once, we concentrate on one major aspect of the optmuxation process The paper describes the translation of a user-subnutted query mto an algebra-based QEP by trunsfonnutton rules We demonstrate that transformation rules provide an adequate descnption of the optmuzation process m a h&level, Implementation mdependent way Furthermore, we &uss how to use the set of transformation rules for the unplementatIon of a query optmuzer to effictently generate QEPs from user-subnutted quenes The design of a modular query optmnzer IS mouvated by the general need for extensible DBMSs that can be custonuxed for tiferent apphcation envuonments Projects such as EXODUS [CARE86], PROBE [DAYA85], Geneses [BAT086], Postgres [STON86], and Starburs...
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.