Efficiently updating materialized views
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
Compiling complex database transition triggers
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Updating derived relations: detecting irrelevant and autonomously computable updates
ACM Transactions on Database Systems (TODS)
Data caching issues in an information retrieval system
ACM Transactions on Database Systems (TODS)
A method for automatic rule derivation to support semantic query optimization
ACM Transactions on Database Systems (TODS)
Enhancing database correctness: a statistical approach
SIGMOD '95 Proceedings of the 1995 ACM SIGMOD international conference on Management of data
Associative hardware and software techniques for integrity control
ACM Transactions on Database Systems (TODS)
The integrity subsystem of a distributed database system for workstations
CSC '85 Proceedings of the 1985 ACM thirteenth annual conference on Computer Science
ACM Computing Surveys (CSUR)
Graphics Programming Using a Database System with Dependency Declarations
ACM Transactions on Graphics (TOG)
Cost and performance analysis of semantic integrity validation methods
SIGMOD '79 Proceedings of the 1979 ACM SIGMOD international conference on Management of data
Fast methods for testing quantified relational calculus assertions
SIGMOD '82 Proceedings of the 1982 ACM SIGMOD international conference on Management of data
Specification and verification of abstract database types
PODS '84 Proceedings of the 3rd ACM SIGACT-SIGMOD symposium on Principles of database systems
Design and implementation of an extendible integrity subsystem
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
IEEE Transactions on Knowledge and Data Engineering
Supporting a Semantic Data Model in a Distributed Database System
VLDB '83 Proceedings of the 9th International Conference on Very Large Data Bases
Updating Derived Relations: Detecting Irrelevant and Autonomously Computable Updates
VLDB '86 Proceedings of the 12th International Conference on Very Large Data Bases
Enforcing Inclusion Dependencies and Referencial Integrity
VLDB '88 Proceedings of the 14th International Conference on Very Large Data Bases
Semantic Integrity Dependencies and Delayed Integrity Checking
VLDB '82 Proceedings of the 8th International Conference on Very Large Data Bases
Translating advanced integrity checking technology to SQL
Database integrity
Distributed processing of data dynamics
ACM SIGMOD Record
Monitoring integrity constraints in a CODASYL-like DBMS
VLDB '79 Proceedings of the fifth international conference on Very Large Data Bases - Volume 5
A transformational framework for the automatic control of derived data
VLDB '81 Proceedings of the seventh international conference on Very Large Data Bases - Volume 7
A conceptual model for semantic integrity checking
VLDB '80 Proceedings of the sixth international conference on Very Large Data Bases - Volume 6
Fast maintenance of semantic integrity assertions using redundant aggregate data
VLDB '80 Proceedings of the sixth international conference on Very Large Data Bases - Volume 6
Database semantic integrity for a network data manager
AFIPS '80 Proceedings of the May 19-22, 1980, national computer conference
Reducing lookups for invariant checking
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Hi-index | 0.00 |
A principal impediment to the use of declarative assertions for monitoring the state of a dynamic database is the high cost of conventional implementation techniques for such a facility. This paper presents a means of efficiently detecting violations of assertions caused by updates to a database. Our technique is based on the premise that the structure of updates to a database can generally be anticipated, and that an analysis of the potential effect that an update may have on an assertion can enable the assertion to be efficiently tested when the update is performed.This analysis is performed by a compile-time assertion processor; for each type of update operation defined on the database, the assertion processor synthesizes a procedure that will be used to evaluate a set of given assertions whenever an operation of the given type is performed on the database. For each assertion and operation, the assertion processor performs a detailed logical analysis, called perturbation analysis, of the effect that the operation may have on the assertion. Perturbation analysis identifies conditions that can be efficiently tested at run-time (when an operation of the given type is performed) and that minimize the extent to which the assertion must be fully reevaluated; the identified conditions also enable the assertion to be tested before the update is actually performed, thereby avoiding the need for expensive back-out procedures in the case that the assertion is found to be violated. Based on this analysis, the assertion processor generates a set of alternative efficient means of determining whether or not execution of the operation causes the assertion to be violated. A database transaction processor, which estimates the performance cost of each of the alternatives in the context of the physical representation and access methods of the database, can then be used to identify the least expensive means of testing the assertion.This work has been done in the particular context of semantic integrity assertions, but it readily extends to related problems of database monitoring. The efficiency of testing that can be achieved through the use of our assertion processing technique in comparable with that attainable through the use of hand-coded procedures. The technique therefore supports all the advantages of the declarative approach to database assertion-monitoring, while retaining the level of efficiency that is usually associated with procedural methods.