Bitemporal Data :Theory and Practice

Publication subTitle :Theory and Practice

Author: Johnston   Tom  

Publisher: Elsevier Science‎

Publication year: 2014

E-ISBN: 9780124080553

P-ISBN(Paperback): 9780124080676

P-ISBN(Hardback):  9780124080676

Subject: TP312 程序语言、算法语言;TP39 computer application

Language: ENG

Access to resources Favorite

Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.

Description

Bitemporal data has always been important. But it was not until 2011 that the ISO released a SQL standard that supported it. Currently, among major DBMS vendors, Oracle, IBM and Teradata now provide at least some bitemporal functionality in their flagship products. But to use these products effectively, someone in your IT organization needs to know more than how to code bitemporal SQL statements. Perhaps, in your organization, that person is you.

To correctly interpret business requests for temporal data, to correctly specify requirements to your IT development staff, and to correctly design bitemporal databases and applications, someone in your enterprise needs a deep understanding of both the theory and the practice of managing bitemporal data. Someone also needs to understand what the future may bring in the way of additional temporal functionality, so their enterprise can plan for it. Perhaps, in your organization, that person is you.

This is the book that will show the do-it-yourself IT professional how to design and build bitemporal databases and how to write bitemporal transactions and queries, and will show those who will direct the use of vendor-provided bitemporal DBMSs exactly what is going on "under the covers" of that software.

  • Explains the business value of bitemporal data in terms of the information that can be provided by bitemporal tables and not by any other form of temporal data, including history tables, version tables, snapshot

Chapter

Perspectives on the Relational Paradigm of Data

The Temporal SQL Standards: ISO 9075:2011 and TSQL2

Audience

Business Analysts

Enterprise Data Modelers

Enterprise Data Architects

Database, Data Warehouse, and Data Mart Developers

Business Ontologists

Computer Science Students

Computer Scientists

A Companion Volume to Managing Time in Relational Databases

An Extensive Glossary

A Note on Style

Looking Forward

Acknowledgments

1 Bitemporal Data: Preliminaries

Nontemporal, Unitemporal and Bitemporal Data

Nontemporal Tables

Table Names

Schema Rows

Foreign Keys and Primary Keys

Data Model Diagrams

Stand-Alone Representation of Rows

Unitemporal Tables

Table Names

Schema Rows

Temporal Foreign Keys and Temporal Primary Keys

Stand-Alone Representation of Temporal Rows

A Note on Assertion-Time Tables

Bitemporal Tables

Table Names

Temporal Foreign Keys and Temporal Primary Keys

Semantics and its Implementations

Glossary List

1 Theory

2 Time and Temporal Terminology

Time

Instants and Moments

Clock Ticks

Hardware Clock Ticks and DBMS Clock Ticks

DBMS Clock Ticks and Chronons

Chronons, Time Periods, and Other Dependent Concepts

Time Periods

Four Conventions for Time Period Representation With Delimiters

Representing Open Time Periods

Temporal Terminology

Temporal Dimensions

The TSQL2 and Computer Science Terminology

The ISO and IBM Terminology

The Asserted Versioning Terminology

Types of Tables

The Computer Science Terminology

The Asserted Versioning Terminology

A Choice of Terminologies

Glossary List

3 The Relational Paradigm: Mathematics

Tables and Columns

Columns and Domains

Cartesian Products

Functions and Primary Keys

Relations

Glossary List

4 The Relational Paradigm: Logic

Propositional Logic

Connectives

AND

OR

NOT

IF/THEN

Well-Formed Formulas

Transformation Rules

Rules of Inference

Predicate Logic

Statements and Statement Schemas

Logic and the Relational Paradigm

Glossary List

5 The Relational Paradigm: Ontology

Types and Instances

A Data Modeling Perspective

A Philosophical Perspective

A Set Theoretic Perspective

A Logic and Language Perspective

An Analogy

Summary

Instances and Identity

The Relational Paradigm Ontology: Aristotelian Roots

Aristotle on Substance

Aristotle on Accidents

Beyond the Aristotelian Roots

The Relational Paradigm Ontology

A Middle Level Extension to the Relational Paradigm Ontology

States and Change

Primary Keys Natural Keys, Foreign Keys

Objects, Events and Change

On Using Ontologies

Integrating the Mathematics and Ontology of the Relational Paradigm

Glossary List

6 The Relational Paradigm: Semantics

Rows, Statements, Assertions and Kindred Notions

Rows, Inscriptions and Sentences

Statements

Disambiguating Statements

Statements and Statement Schemas

Speech Acts

Statements and Assertions

Propositions

Expressing Assertions Explicitly

Glossary List

7 The Allen Relationships

Why the Allen Relationships are Important

A Taxonomy of the Allen Relationships

The Basic Allen Relationships

[Starts]

[Finishes]

[During]

[Equals]

[Overlaps]

[Before]

[Meets]

Combinations of the Allen Relationships

A Binary Partitioning of the Allen Relationships Taxonomy

Common Timeline Time Periods: [Includes] or [Excludes]

[Includes]: [Contains] or [Overlaps]

[Contains]: [Equals] or [Encloses]

[Encloses]: [Aligns With] or [During]

[Aligns With]: [Starts] or [Finishes]

[Excludes]: [Before] or [Meets]

An Allen Relationship Thought Experiment

Glossary List

8 Temporal Integrity Concepts and Notations

Cubes, Slices and Cells: Data in Three-Dimensional Temporal Space

Semantically Anomalous Relational Tables

Implicit Bitemporal Time

Glossary List

9 Temporal Entity Integrity

Entity Integrity

Bitemporal Entity Integrity

Some Bitemporal Transactions

State-Time Entity Integrity

Conventional Entity Integrity

Glossary List

10 Temporal Referential Integrity

Temporal Foreign Keys

Episodes

State-Time Referential Integrity

A State-Time Delete: Block Mode

A State-Time Delete: Cascade Mode

A State-Time Delete: Set Null Mode

Bitemporal Referential Integrity

Conventional Referential Integrity

Glossary List

2 Practice

11 Temporal Transactions

An Overview Of Temporal Transactions

Basic Temporal Transactions on State-Time Tables

A State-Time Insert With Default Time

A State-Time Update With Default Time

A State-Time Update With Specified State Time

A State-Time Delete With Default Time

Basic Temporal Transactions on Bitemporal Tables

A Bitemporal Insert With Default Time

A Bitemporal Update With Default Time

A Bitemporal Update With Specified State Time

A Bitemporal Delete With Default Time

Whenever Temporal Transactions

A Whenever Insert Transaction

A Whenever Update Transaction

A Whenever Delete Transaction

Temporal Merge Transactions

Glossary List

12 Basic Temporal Queries

Temporal Query Syntax

Bitemporal Tables and Views

The Conventional Table View

The Logfile View

The Version View

Point-In-Time Range Queries

Range Queries

Glossary List

13 Advanced Temporal Queries

A Basic Temporal Range Multi-Table Query

Step 1: Decoalesce and Restrict on Assertion Time

Step 2: Decoalesce and Restrict on State Time

Step 3: Drop Assertion-Time Period Columns

Step 4: Align on State-Time Boundaries

Step 5: Join on RefId and State Time

A Complex Temporal Range Multi-Table Query

Step 1: Decoalesce and Restrict on Assertion Time

Step 2: Decoalesce and Restrict on State Time

Step 3: Drop Assertion-Time Period Columns

Step 4: Align on State-Time Boundaries

Step 5: Join on RefId and State-Time

Why Temporal Range Multi-Table Queries are Complex

Glossary List

14 Future Assertion Time

Future Assertion Time: Semantics

The Six-Fold Way

Challenging the Six-Fold Way

Past Assertion Time

Future Assertion Time

The Incompleteness of the Six-Fold Way

The Nine-Fold Way

Future Assertion Time and Future State Time

Future Assertion Time: Implementation

The Time Travel Paradox

Future Assertion Time Locking

Future Transactions With Assertion-Time Locking

Glossary List

15 Temporal Requirements

Updates and Corrections to Conventional Tables

Timestamped Tables

Double-Timestamped Tables

Double-Timestamps and Corrections

The Double-Timestamped Dilemma

The Bitemporal Data Solution

Glossary List

16 Bitemporal Data and the Inmon Data Warehouse

A Brief History of the Data Warehouse

What is an Inmon Data Warehouse?

Subject Orientation

Integration

Time-variance

Nonvolatility

Support for Management Decision-Making

Why Unitemporal Tables Cannot Be Both Time-Variant and Nonvolatile

Two Senses of “As-Was”

The Enterprise Data Warehouse Redefined

The Semantics of the EDW and the Question of its Physical Instantiation

Inmon’s Arguments for a Physical EDW

Glossary List

Inmon Terms

17 Semantic Integration via Messaging

The Objectives of an Enterprise Database

Two Paths to Semantic Integration

The Enterprise Data Model as a Canonical Message Model

The Failed Mission of the Enterprise Data Model

A New Mission for the Enterprise Data Model

Point-to-Point Messaging

Hub-and-Spoke Messaging

A Mapping Rules Dictionary

The Extended Enterprise Data Model

Glossary List

18 Bitemporal Data and the Kimball Data Warehouse

Star Schemas and Relational Databases

The Star Schema Data Warehouse Architecture

The Star Schema Design Pattern

Reconceptualizing Star Schemas: Fact Tables and Dimension Tables

Events and Objects

Surrogate Keys and Natural Keys

A Bitemporal Star Schema

A Bitemporal Dimension Case Study

Dimension Update #1

Dimension Update #2

Dimension Update #3

Dimension Update #4

Dimension Update #5

Fact Table Analysis

Summary of the Case Study

Bitemporal Dimensions Versus Slowly-Changing Dimensions

Glossary List

Kimball and Ross Terms

19 Time, Types and the Future of Relational Databases

Tritemporal Data and Statement Provenance

Inscription Time, State Time, Speech Act Time

Ontologizing Relational Databases

The Extended Relational Paradigm Ontology

The Extended Relational Paradigm Metamodel

The Semantic Component of the Extended Relational Paradigm Metamodel

Referent

Attribute

Statement-Schema

Atemporal State

Proposition

Statement

Referent/Statement-Schema

Attribute/Statement-Schema

Statement-Schema/Atemporal-State

Atemporal-State/Statement

Proposition/Statement

The Pragmatic Component

Source

Source-Association

Inscription-Act

Inscription

Speech-Act

Inscription/Inscription

Source/Speech-Act

Source/Inscription-Act

Inscription/Inscription-Act

The Integrated Metamodel: Semantic and Pragmatic Components

Statement/Inscription

Statement/Speech-Act

Atomic Statements and Binary Tables

Looking Ahead

Glossary List

20 Recommendations

Recommendations for IT Professionals in End-User IT Organizations

Recommendations for Standards Committees and Vendors

Remove the Ability to Correct Data in State-Time Tables

Specify Referent Identifiers in SQL Table Definitions

Specify Temporal Unique Identifiers in SQL Table Definitions

Package the Bitemporalization of Conventional Tables

Modify SQL Query Syntax to Clarify Semantics

Add Whenever Temporal Transactions to the Standard

Add Future Transaction Time to the Standard

Glossary List

Afterword: Reflections on Mindfulness and Bitemporality

Bibliography

Index

The users who browse this book also browse