22 research outputs found

    Multiple-Query Optimization.

    No full text
    Some recently proposed extensions to relational database systems as well as deductive database systems, require support for processing multiple queries. For example, in a database system enhanced with inference capabilities, a simple query involving a rule with multiple definitions, may expand to more than one actual query that has to be run over the database. It is an interesting problem then, to come up with algorithms that process these queries together instead of one query at a time. The main motivation for performing such an interquery optimization lies in the fact that queries may share common data. We examine the problem of multiple-query optimization in this paper. The first major contribution of this paper is a systematic look at the problem and the presentation and analysis of algorithms that can be used for multiple query optimization. The second contribution lies in the presentation of experimental results. Our results show that using multiple-query processing algorithms may reduce execution cost considerably

    Efficiently Supporting Procedures in Relational Database Systems.

    No full text
    Recent developments in the design of database systems include proposals of several extensions to the basic model of relational database systems. Such a system is presented in this paper. The system is based on QUEL+ which extends the query language QUEL by introducing among others database procedures as full fledged objects. We briefly describe a variation of the original INGRES decomposition algorithm and then some ideas that can improve the performance of a system that supports procedures are discussed. First, we examine the idea of storing results of previously processed procedures in secondary storage (caching). Using a cache, the cost of processing a query can be reduced by preventing multiple evaluations of the same procedure. Problems associated with cache organizations, such as replacement policies and validation schemes are examined. Another means for reducing the execution cost of queries is indexing. Indexing results of procedures can be done through coventional schemes. However, at any given time, it is highly probable that not all procedures stored in a relation have been evaluated which makes known indexing techniques useless, since the latter assume that all values are known. As a solution to that problem, a new indexing scheme, Partial Indexing, is proposed and analyzed

    Extended Database Logic: Complex Objects and Deduction.

    No full text
    Database Logic was proposed in the late 1970's as a generalization of first-order logic in order to deal in a uniform manner with relational, hierarchic, and network databases. At about the same time, the study of deductive (relational) databases has become important, primarily as a vehicle for the development of expert database systems. Also, Prolog, the main logic programming language, has become prominent for many applications in artificial intelligence, and its connections with deductive databases have been investigated. Although the relational model provides a suitable framework for traditional, essentially data processing applications, several researchers have found the need for complex objects in newer applications, such as engineering databases. In this paper we show how database logic can be extended in two directions: 1) to include complex objects, and 2) to provide deductive capabilities for hierarchic and network databases

    Checking the Temporal Integrity of Interactive Multimedia Documents

    No full text

    Predicate Indexing for Incremental Multi-Query Optimization

    No full text

    A Workload-Driven Unit of Cache Replacement for Mid-Tier Database Caching

    No full text

    Subsuming multiple sliding windows for shared stream computation

    No full text
    Shared evaluation of multiple user requests is an utmost priority for stream processing engines in order to achieve high throughput and provide timely results. Given that most continuous queries specify windowing constraints, we suggest a multi-level scheme for concurrent evaluation of time-based sliding windows seeking for potential subsumptions among them. As requests may be registered or suspended dynamically, we develop a technique for choosing the most suitable embedding of a given window into a group composed of multi-grained time frames already employed for other queries. Intuitively, the proposed methodology "clusters" windowed operators into common hierarchical constructs, thus drastically reducing the need for their separate evaluation. Our empirical study confirms that such a scheme achieves dramatic memory savings with almost negligible maintenance cost

    Towards expressive publish/subscribe systems

    No full text
    Abstract. Traditional content based publish/subscribe (pub/sub) systems allow users to express stateless subscriptions evaluated on individual events. However, many applications such as monitoring RSS streams, stock tickers, or management of RFID data streams require the ability to handle stateful subscriptions. In this paper, we introduce Cayuga, a stateful pub/sub system based on nondeterministic finite state automata (NFA). Cayuga allows users to express subscriptions that span multiple events, and it supports powerful language features such as parameterization and aggregation, which significantly extend the expressive power of standard pub/sub systems. Based on a set of formally defined language operators, the subscription language of Cayuga provides nonambiguous subscription semantics as well as unique opportunities for optimizations. We experimentally demonstrate that common optimization techniques used in NFA-based systems such as state merging have only limited effectiveness, and we propose novel efficient indexing methods to speed up subscription processing. In a thorough experimental evaluation we show the efficacy of our approach.
    corecore