Results 1 - 10
of
18
A vision for management of complex models
- SIGMOD Record
, 2000
"... Many problems encountered when building applications of database systems involve the manipulation of models. By “model, ” we mean a complex structure that represents a design artifact, such as a relational schema, object-oriented interface, UML model, XML DTD, web-site schema, semantic network, comp ..."
Abstract
-
Cited by 114 (20 self)
- Add to MetaCart
Many problems encountered when building applications of database systems involve the manipulation of models. By “model, ” we mean a complex structure that represents a design artifact, such as a relational schema, object-oriented interface, UML model, XML DTD, web-site schema, semantic network, complex document, or software configuration. Many uses of models involve managing changes in models and transformations of data from one model into another. These uses require an explicit representation of “mappings ” between models. We propose to make database systems easier to use for these applications by making “model ” and “model mapping ” first-class objects with special operations that simplify their use. We call this capability model management. In addition to making the case for model management, our main contribution is a sketch of a proposed data model. The data model consists of formal, object-oriented structures for representing models and model mappings, and of high-level algebraic operations on those structures, such as matching, differencing, merging, function application, selection, inversion and instantiation. We focus on structure and semantics, not implementation. 1
Declarative information extraction using Datalog with embedded extraction predicates
- in VLDB
, 1997
"... In this paper we argue that developing information extraction (IE) programs using Datalog with embedded procedural extraction predicates is a good way to proceed. First, compared to current ad-hoc composition using, e.g., Perl or C++, Datalog provides a cleaner and more powerful way to compose small ..."
Abstract
-
Cited by 36 (8 self)
- Add to MetaCart
In this paper we argue that developing information extraction (IE) programs using Datalog with embedded procedural extraction predicates is a good way to proceed. First, compared to current ad-hoc composition using, e.g., Perl or C++, Datalog provides a cleaner and more powerful way to compose small extraction modules into larger programs. Thus, writing IE programs this way retains and enhances the important advantages of current approaches: programs are easy to understand, debug, and modify. Second, once we write IE programs in this framework, we can apply query optimization techniques to them. This gives programs that, when run over a variety of data sets, are more efficient than any monolithic program because they are optimized based on the statistics of the data on which they are invoked. We show how optimizing such programs raises challenges specific to text data that cannot be accommodated in the current relational optimization framework, then provide initial solutions. Extensive experiments over real-world data demonstrate that optimization is indeed vital for IE programs and that we can effectively optimize IE programs written in this proposed framework. 1.
Cost-Based Optimization for Magic: Algebra and Implementation
- In Proc. of ACM SIGMOD
, 1996
"... Magic sets rewriting is a well-known optimization heuristic for complex decision-support queries. There can be many variants of this rewriting even for a single query, which differ greatly in execution performance. We propose cost-based techniques for selecting an efficient variant from the many cho ..."
Abstract
-
Cited by 21 (1 self)
- Add to MetaCart
Magic sets rewriting is a well-known optimization heuristic for complex decision-support queries. There can be many variants of this rewriting even for a single query, which differ greatly in execution performance. We propose cost-based techniques for selecting an efficient variant from the many choices. Our first contribution is a practical scheme that modelsmagic sets rewriting as a special join method that can be added to any cost-based query optimizer. We derive cost formulas that allow an optimizer to choose the best variant of the rewriting and to decide whether it is beneficial. The order of complexity of the optimization process is preserved by limiting the search space in a reasonable manner. We have implemented this technique in IBM's DB2 C/S V2 database system. Our performance measurements demonstrate that the costbasedmagic optimization technique performs well, and that without it, several poor decisions could be made. Our second contribution is a formal algebraic model of ...
Deductive Database Languages: Problems and Solutions
, 1999
"... Deductive databases result from the integration of relational database and logic programming techniques. However, significant problems remain inherent in this simple synthesis from the language point of view. In this paper, we discuss these problems from four different aspects: complex values, objec ..."
Abstract
-
Cited by 18 (4 self)
- Add to MetaCart
Deductive databases result from the integration of relational database and logic programming techniques. However, significant problems remain inherent in this simple synthesis from the language point of view. In this paper, we discuss these problems from four different aspects: complex values, object orientation, higherorderness, and updates. In each case, we examine four typical languages that address the corresponding issues.
A Framework for Goal-Directed Bottom-Up Evaluation of Functional Logic Programs
- In Proc. of FLOPS, LNCS 2024
, 2001
"... Abstract. In this paper we start the design of a functional-logic deductive database language. Given that most logic deductive languages consider bottom-up evaluation as operational mechanism, here we will focus on the development of an operational semantics based on bottomup evaluation for function ..."
Abstract
-
Cited by 11 (6 self)
- Add to MetaCart
Abstract. In this paper we start the design of a functional-logic deductive database language. Given that most logic deductive languages consider bottom-up evaluation as operational mechanism, here we will focus on the development of an operational semantics based on bottomup evaluation for functional logic languages. As in the logic paradigm, the bottom-up evaluation will consist in a magic transformation for a given program-query into a magic program-query for which the bottomup evaluation will simulate the top-down one of the original program. 1
Compiling Comp Ling: Practical weighted dynamic programming and the Dyna language
- In Advances in Probabilistic and Other Parsing
, 2005
"... Weighted deduction with aggregation is a powerful theoretical formalism that encompasses many NLP algorithms. This paper proposes a declarative specification language, Dyna; gives general agenda-based algorithms for computing weights and gradients; briefly discusses Dyna-to-Dyna program transformati ..."
Abstract
-
Cited by 9 (7 self)
- Add to MetaCart
Weighted deduction with aggregation is a powerful theoretical formalism that encompasses many NLP algorithms. This paper proposes a declarative specification language, Dyna; gives general agenda-based algorithms for computing weights and gradients; briefly discusses Dyna-to-Dyna program transformations; and shows that a first implementation of a Dyna-to-C++ compiler produces code that is efficient enough for real NLP research, though still several times slower than hand-crafted code. 1
Magic Sets vs. SLD-Resolution
, 1995
"... It is by now folklore that the bottom-up evaluation of a program after the "magic set" transformation is "as efficient as" top-down evaluation. There are a number of formalizations of this in the literature. However, the naive formalization is false: As shown by Ross, SLD-resolution can be much more ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
It is by now folklore that the bottom-up evaluation of a program after the "magic set" transformation is "as efficient as" top-down evaluation. There are a number of formalizations of this in the literature. However, the naive formalization is false: As shown by Ross, SLD-resolution can be much more efficient than bottom-up evaluation with magic sets on tail-recursive programs. We show that this happens only for tail-recursive programs, and that the only problem of magic sets is the materialization of "lemmas". So magic sets are always "as goal-directed as" SLD-resolution. These results are not surprising, but we believe that the variants given here are especially useful for teaching purposes. We also give rather simple proofs. Furthermore, we demonstrate that SLD-resolution can be directly simulated by bottom-up evaluable programs if all recursions are tailrecursive. This is based on the meta-interpreter approach of Bry and seems to be very promising. 1 Introduction The field of dedu...
Semantics of Constraint Logic Programs with Bounded Quantifiers
, 1998
"... We survey the areas of Constraint programming, Bounded Quantifiers and Collection Types, then we describe an extension of constraint logic programming by bounded quantifiers. Bounded quantifiers provide the support for finite domain constraint programming in a natural way. We define several semantic ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
We survey the areas of Constraint programming, Bounded Quantifiers and Collection Types, then we describe an extension of constraint logic programming by bounded quantifiers. Bounded quantifiers provide the support for finite domain constraint programming in a natural way. We define several semantics for constraint logic programs with bounded quantifiers and prove their equivalence. Our results can be used to define semantics for some existing constraint logic programming languages, like cc(FD).
Q-Data: Using Deductive Database Technology To Improve Data Quality
"... This chapter discusses an extended deductive database prototype system, Q-Data, developed by Bellcore to improve data quality through data validation and cleanup. The key technology component of Q-Data is the extended deductive database system LDL++, developed at MCC. We discuss the issues of data q ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
This chapter discusses an extended deductive database prototype system, Q-Data, developed by Bellcore to improve data quality through data validation and cleanup. The key technology component of Q-Data is the extended deductive database system LDL++, developed at MCC. We discuss the issues of data quality improvement, the relevance of the deductive database technology such as the LDL++ system to data quality improvement tasks, and the system architecture of the prototype. Furthermore, we describe our experiences using the deductive database technology in an on-going Q-Data trial attacking a real-world problem with test data from operational systems. Experiences related to engineering aspects of both the deductive database system and other component technologies, as well as pragmatic aspects of the implementation of Q-Data as a distributed system, are discussed. 1 INTRODUCTION Data is considered to be a corporate resource. Good data quality is critical to efficient, high-quality opera...
SLDMagic - The Real Magic (with Applications to Web Queries)
- Computational Logic – CL’2000, LNCS 1861
, 2000
"... . The magic set technique is a standard technique for query evaluation in deductive databases, and its variants are also used in modern commercial database systems like DB2. Numerous improvements of the basic technique have been proposed. However, each of these optimizations makes the transforma ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
. The magic set technique is a standard technique for query evaluation in deductive databases, and its variants are also used in modern commercial database systems like DB2. Numerous improvements of the basic technique have been proposed. However, each of these optimizations makes the transformation more complicated, and combining them in a single system is at least dicult. In this paper, a new transformation is introduced, which is based on partial evaluation of a bottom-up meta-interpreter for SLD-resolution. In spite of its simplicity, this technique gives us a whole bunch of optimizations for free: For instance, it contains a tail recursion optimization, it transforms non-recursive into non-recursive programs, it can pass arbitary conditions on the parameters to called predicates, and it saves the join necessary to get subquery results back into the calling context. In this way, it helps to integrate many of the previous eorts. The usefulness of these optimizations i...

