4 research outputs found

    Towards an Efficient Evaluation of General Queries

    Get PDF
    Database applications often require to evaluate queries containing quantifiers or disjunctions, e.g., for handling general integrity constraints. Existing efficient methods for processing quantifiers depart from the relational model as they rely on non-algebraic procedures. Looking at quantified query evaluation from a new angle, we propose an approach to process quantifiers that makes use of relational algebra operators only. Our approach performs in two phases. The first phase normalizes the queries producing a canonical form. This form permits to improve the translation into relational algebra performed during the second phase. The improved translation relies on a new operator - the complement-join - that generalizes the set difference, on algebraic expressions of universal quantifiers that avoid the expensive division operator in many cases, and on a special processing of disjunctions by means of constrained outer-joins. Our method achieves an efficiency at least comparable with that of previous proposals, better in most cases. Furthermore, it is considerably simpler to implement as it completely relies on relational data structures and operators

    HOOD : a Higher-Order Object-Oriented Database model and its implementation

    Get PDF
    Bibliography: pages 133-140.There is no accepted standard for the object-oriented database paradigm at present, which has led to different definitions of features and conformance requirements. HOOD is a Higher-Order Object-Oriented Database system which defines a meta-data model for specifying the requirements of an Object-Oriented Database, which provides uniformity and extensibility. From this specification and by making use of a comprehensive structure system, an exemplar or implementation model is defined. Among the constructs provided by the model are types, instances, objects, values, methods, base types, generic types and metatypes. The mechanisms of instantiation and subtyping allow for relationships between these constructs. Extensibility is provided in the model for types, base types, structures and methods. Uniformity is achieved by defining all constructs as instances and through the use of messages for all operations. There is only one form of object construct which provides persistence and identities. The complex values and extensibility of the model allow it to adapt in order to model the real world instead of adapting the real world to fit the model. We have implemented a subset of the structures and values defined in the model, provided persistence and identities for object, and included the various constructs mentioned above. The method language allows for the specification of methods, the passing of messages, and the use of complex values. The compiler performs type checking and resolution and generates instructions for an abstract machine which manipulates the database
    corecore