Results 1 - 10
of
11
An Equational Chase for Path-Conjunctive Queries, Constraints, and Views
- In ICDT
, 1999
"... We consider the class of path-conjunctive queries and constraints (dependencies) defined over complex values with dictionaries. ..."
Abstract
-
Cited by 41 (11 self)
- Add to MetaCart
We consider the class of path-conjunctive queries and constraints (dependencies) defined over complex values with dictionaries.
The AQUA Data Model and Algebra
, 1993
"... This paper describes a new object-oriented model and query algebra that will be used as an input language for the query optimizers that are being built as a part of the EREQ project. The model adopts a uniform view of objects and values and separates syntactic, semantic, and implementation concerns. ..."
Abstract
-
Cited by 37 (8 self)
- Add to MetaCart
This paper describes a new object-oriented model and query algebra that will be used as an input language for the query optimizers that are being built as a part of the EREQ project. The model adopts a uniform view of objects and values and separates syntactic, semantic, and implementation concerns. The algebra addresses issues of type-defined equality and duplicate elimination as well as extensions to bulk types other than sets. 1 Introduction Recently, a great deal of work has been done on the topic of object-oriented query algebras [27, 22, 11] and the modeling of bulk types [4, 25, 19]. These proposals as well as those of other researchers on the topic have explored some of the fundamental issues and provided the starting point for the work reported here. AQUA (A QUery Algebra) is the result of a joint effort among researchers who have participated in the design of previous algebras [26, 30, 31]. AQUA has been designed to address a number of detailed modeling issues that we beli...
Physical Data Independence, Constraints, and Optimization with Universal Plans
, 1999
"... We present an optimization method and algorithm designed for three objectives: physical data independence, semantic optimization, and generalized tableau minimization. The method relies on generalized forms of chase and "backchase" with constraints (dependencies). By using dictionaries (finite funct ..."
Abstract
-
Cited by 36 (10 self)
- Add to MetaCart
We present an optimization method and algorithm designed for three objectives: physical data independence, semantic optimization, and generalized tableau minimization. The method relies on generalized forms of chase and "backchase" with constraints (dependencies). By using dictionaries (finite functions) in physical schemas we can capture with constraints useful access structures such as indexes, materialized views, source capabilities, access support relations, gmaps, etc. The search space for query plans is de ned and enumerated in a novel manner: the chase phase rewrites the original query into a "universal" plan that integrates all the access structures and alternative pathways that are allowed by applicable constraints. Then, the backchase phase produces optimal plans by eliminating various combinations of redundancies, again according to constraints. This method is applicable (sound) to a large class of queries, physical access structures, and semantic constraints. We prove that it is in fact complete for "path-conjunctive" queries and views with complex objects, classes and dictionaries, going beyond previous theoretical work on processing queries using materialized views.
Reflection and Hyper-Programming in Persistent Programming Systems
, 1992
"... In an orthogonally persistent programming system, data is treated in a manner independent of its persistence. This gives simpler semantics, allows the programmer to ignore details of long-term data storage and enables type checking protection mechanisms to operate over the entire lifetime of the dat ..."
Abstract
-
Cited by 34 (11 self)
- Add to MetaCart
In an orthogonally persistent programming system, data is treated in a manner independent of its persistence. This gives simpler semantics, allows the programmer to ignore details of long-term data storage and enables type checking protection mechanisms to operate over the entire lifetime of the data. The ultimate goal of persistent programming language research is to reduce the costs of producing software. The work presented in this thesis seeks to improve programmer productivity in the following ways: . by reducing the amount of code that has to be written to construct an application; . by increasing the reliability of the code written; and . by improving the programmer's understanding of the persistent environment in which applications are constructed. Two programming techniques that may be used to pursue these goals in a persistent environment are type-safe linguistic reflection and hyper-programming. The first provides a mechanism by which the programmer can write generators that,...
Algebras For Object-Oriented Query Languages
, 1993
"... Data Types New base types can be added to the EXTRA data model via the EXTRA abstract data type facility. To add a new ADT, the person responsible for adding the type begins by writing (and debugging) the code for the type in the E programming language. E is an extension of C++ [Stro86] that was dev ..."
Abstract
-
Cited by 15 (0 self)
- Add to MetaCart
Data Types New base types can be added to the EXTRA data model via the EXTRA abstract data type facility. To add a new ADT, the person responsible for adding the type begins by writing (and debugging) the code for the type in the E programming language. E is an extension of C++ [Stro86] that was developed as part of the EXODUS project. E serves as the implementation language for access methods and operators for systems developed using EXODUS. It is also the target language for the query compiler, and (most importantly for our purposes here) the language in which base type extensions will be defined. E extends C++ with a number of features to aid programmers in data- 89 base system programming, including "dbclasses" for persistent storage, class generators for implementing "generic" classes and functions, iterators for use as a control abstraction in writing set operations, and built-in class generators for typed files and variable-length arrays [Rich87]. Suppose that we wanted to add...
Object/Relational Query Optimization with Chase and Backchase
, 2000
"... Traditionally, query optimizers assume a direct mapping from the logical entities modeling the data (e.g. relations) and the physical entities storing the data (e.g. indexes), each physical entity corresponding precisely to one logical entity. This assumption is no longer true in non-traditional app ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
Traditionally, query optimizers assume a direct mapping from the logical entities modeling the data (e.g. relations) and the physical entities storing the data (e.g. indexes), each physical entity corresponding precisely to one logical entity. This assumption is no longer true in non-traditional applications (object-oriented and semi-structured databases, data integration), which often exhibit a mismatch between the logical view and the actual storage of data. In addition, there is an increased amount of redundancy, even at the logical level, that can greatly enhance optimization opportunities, if exploited. To deal with all this, we propose a novel architecture for query optimization, in which physical optimization is leveraged at the level of query rewriting. As a consequence, the other important aspect of query optimization, semantic optimization (that takes advantage of the redundancy at the logical level), can be naturally incorporated. The optimizer can then make global decisions based on both semantic and physical knowledge, leading to plans of higher quality than those obtainable by a traditional two-level approach. The main idea
To Form a More Perfect Union (Intersection, Difference)
- In Proc. 5th Int'l Workshop on Database Programming Languages
, 1995
"... The AQUA [16] query algebra allows user-defined equivalence relations as arguments to query operators that generalize standard set operations. These predicates determine what objects are included in the query result, and the duplicates that must be removed. While an expressive enhancement, the use o ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
The AQUA [16] query algebra allows user-defined equivalence relations as arguments to query operators that generalize standard set operations. These predicates determine what objects are included in the query result, and the duplicates that must be removed. While an expressive enhancement, the use of arbitrary equivalence relations to decide set membership can result in sets with counterintuitive behavior, and therefore can make queries return unreasonable results. In this paper, we show that equality predicates assume two roles with respect to sets. Distinguishers differentiate between set members and implicitly give meaning to standard set properties such as set equality. Constructors determine which object from input sets contribute to the query result. The requirements of distinguishers and constructors differ. AQUA's set operators are problematic because they use constructors where distinguishers are required. We propose alternatives to AQUA's set operators that address this limit...
Persistent Foundations for Scalable Multi-Paradigmal Systems
, 1992
"... Problems with the inconsistent behaviour of system construction components for building large and long-lived application systems are identified. They make the programmer's task harder and the user's world more confusing in the same way that the disharmonies between programming languages and database ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
Problems with the inconsistent behaviour of system construction components for building large and long-lived application systems are identified. They make the programmer's task harder and the user's world more confusing in the same way that the disharmonies between programming languages and databases did. Persistent programming languages overcame those disharmonies. This paper challenges researchers to design and build a common substrate to the construction components. The construction components would be re-built using the substrate to achieve consistent behaviour. Application systems would then use this new family of construction components. The substrate, called the Scalable Persistent Foundation promises several advantages: consistent application system behaviour even when under stress, accelerated application system building and maintenance, genuine longevity of application systems and improved operational efficiency. The search for a design and implementation of this foundation w...
Supervisor of Dissertation
, 2000
"... I am indebted to Val Tannen, my advisor. This dissertation would not have been possible without his invaluable ideas, support, and advice. His deep insight into both elds of databases and programming languages, as well as his crucial advice in the experimental issues, made direct contributions to th ..."
Abstract
- Add to MetaCart
I am indebted to Val Tannen, my advisor. This dissertation would not have been possible without his invaluable ideas, support, and advice. His deep insight into both elds of databases and programming languages, as well as his crucial advice in the experimental issues, made direct contributions to this work. I have learned a great deal from him: where to look for ideas, how to solve problems, how to present them. I also have learned from him that most rewarding results are obtained by taking the path of investigating the foundations, even though this may not be the shortest path. Iamvery grateful to Peter Buneman and Susan Davidson, for their help, support, advice, suggestions and encouragement. I am thankful to Alin Deutsch who was always a source of inspiration. Many ideas coming from fruitful discussions with him have entered in this dissertation. I would like togivespecial thanks to Arnaud Sahuguet who always provided me with valuable suggestions and comments, as well as with expert help regarding system and implementation issues. Iwould like to thank the members of my thesis committee for their insightful comments, suggestions, questions and criticism: Peter Buneman, Susan Davidson, Daniela Florescu, Jean Gallier and Alon Levy. This work has also bene ted greatly from the discussions at the weekly Penn database seminar, whose members include (or included during my veyears of PhD study) Peter
A PC Chase
, 1998
"... PC stands for path-conjunctive, the name of a class of queries and dependencies that we define over complex values with dictionaries. This class includes the relational conjunctive queries and embedded dependencies, as well as many interesting examples of complex value and oodb queries and integrity ..."
Abstract
- Add to MetaCart
PC stands for path-conjunctive, the name of a class of queries and dependencies that we define over complex values with dictionaries. This class includes the relational conjunctive queries and embedded dependencies, as well as many interesting examples of complex value and oodb queries and integrity constraints. We show that some important classical results on containment, dependency implication, and chasing extend and generalize to this class.

