Abstract

This paper explores the issue of group integrity of tuple subsets regarding corporate integrity constraints in relational databases. A solution may be found by applying the finite-state machine theory to guarantee group integrity of data. We present a practical guide to coding such an automaton. After creating SQL queries to manipulate data and control its integrity for real data domains, we study the issue of query performance, determine the level of transaction isolation, and generate query plans.

Highlights

  • The most common definition of a data model includes a combination of three interrelated components [1]: the structural component that defines the structural contents of objects used in the model; the manipulation component, which describes the operators that manipulate the model’s objects; the integrity component, which consists of rules that guarantee data integrity

  • In context of a relational data model, the structural component defines a data object as an a-nary relation built on a set of domains

  • There are three types of integrity rules in relational databases: entity integrity – no primary key attribute of a basic relation should have a NULL value; referential integrity – any value of a foreign key in a relation must match the value of a primary or candidate key in the parent relation or be comprised solely of NULL values and corporate integrity constraints – additional rules for data consistency defined by the data domain

Read more

Summary

Problem formulation

The most common definition of a data model includes a combination of three interrelated components [1]: the structural component that defines the structural contents of objects used in the model; the manipulation component, which describes the operators that manipulate the model’s objects; the integrity component, which consists of rules that guarantee data integrity. Constraining temporal data, is when you need to maintain the right chronological order In this case, every tuple corresponds to a state of an object at a point in time; the subset of these tuples describe the changes that the object undergoes during some period of time. We can create a binary relation for each of the mentioned cases on the tuple-subset level, i.e. we can compare any pair of tuples from the subset, while the subset itself is ordered This fact lets us apply automata theory [7] to achieve integrity of any subset of tuples. Introducing new mechanisms of constraining data integrity deviates us from the classical definition of a relation, because tuples stop being completely independent When solving such problems, corporate logic is implemented as a servicing application. There are applications in the banking sector [10], uses for modelling trading systems [11], and creating recursive queries [12] for tasks like graph processing

Implementing the finite-state machine in a relational database
Coding the machine in the parent-child model
The issue of query performance and parallel transaction processing
Coding a finite-state machine using materialized paths
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call