Asserted Versioning - Explore the Science & Experts | ideXlab



Scan Science and Technology

Contact Leading Edge Experts & Companies

Asserted Versioning

The Experts below are selected from a list of 48 Experts worldwide ranked by ideXlab platform

Asserted Versioning – Free Register to Access Experts & Abstracts

Randall Weis – One of the best experts on this subject based on the ideXlab platform.

  • Managing Time in Relational Databases: How to Design, Update and Query Temporal Data
    , 2010
    Co-Authors: Tom Johnston, Randall Weis

    Abstract:

    This book presents a comprehensive view of how to manage a temporal database. Temporal data management refers to an integrated method of managing data about the past, present, and future of the objects and events of interest to the user. That is, managing non-current data in relational databases in such a way that past data can be seamlessly accessed together with current data with result sets containing both current and non-current data that can be retrieved with queries simple enough for a business user to write and with result set response times very close to those for result sets containing current data only.

    For example, let’s say that from July through August of last year we had on our database a row stating that the unit cost of a product was $25.50 during the first quarter of that year. But in September, we realized that we had made a mistake and that the unit cost was actually $23.50. End users need the ability to issue a query which can tell them both what the unit cost really was in the first quarter of last year and also a query which can tell them what they said the first-quarter unit cost was last July.

    The practical and comprehensive nature of this material is demonstrated in each chapter by a mixture of diagrams and text typical for a book about data architecture and data models. The chapters dealing specifically with managing temporal and bi-temporal data will rely heavily on an example-driven approach, each example presenting specific real-world scenarios. Each scenario is structured around (a) a before-image of a sample table or tables; (b) a bi-temporal timeline graphic; (c) a specific bi-temporal transaction; and (d) one or more snapshots of the sample table or tables, showing the results of applying each transaction. (Bi-temporal relational data is temporarily delimited into two dimensions, i.e., valid time and transaction time.)

    For example, a hedge fund company needs to bi-temporally manage a lot of their econometric data because GDP, CPI and the many other data sources they use have scheduled releases, then followed up by one or more revisions later on. Such data describes (a) what the economy was like during a specific time period (valid time) and (b) a series of corrections to prior releases of that data (transaction time).

    Value proposition: This book presents a simplified approach to managing temporal and bi-temporal data that reduces the complexity of data queries and transactions making inserts, updates and deletes simple enough that anyone who could write them against non-temporal tables could also write them against temporal tables. This is accomplished by developing declarative specifications that replace time-intensive design work for data modelers who must incorporate temporal semantics into their work. In this way, query complexity is minimized. It allows the database designer to situate this special kind of temporal data management in the context of an enterprise data architecture, together with other ways of managing non-current data.

    KEY FEATURES

    1. Integrates an enterprise-wide viewpoint with a strong conceptual model of temporal data management allowing for realistic implementation of database application development.

    2. Provides a true practical guide to the different possible methods of time-oriented databases with techniques of using existing funtionality to solve real world problems within an enterprise data architecture environment.

    3. Written by IT professionals for IT professionals, this book employs a heavily example-driven approach which reinforces learning by showing the results of puting the techniques discussed into practice.Table of Contents

    Part 1. Introduction.
    Chapter 1. Historical Contextualization
    Chapter 2. A Taxonomy of Methods of Managing Time in Databases.
    Chapter 3. Temporal Data Management in Enterprise Data Architecture.
    Chapter 4. The Objectives and Origins of Asserted Versioning.
    Chapter 5. Basic Concepts of Asserted Versioning.

    Part 2. Current Practice in Temporal Data Management.
    Chapter 6. Baseline: Updates in Place.
    Chapter 7. Standard Practice: Adding a Date to a Primary Key.
    Chapter 8. Best Practice: Using Effective Date Pairs.

    Part 3. Asserted Versions: a New Approach to Bi-Temporal Data Management.
    Chapter 9. Objects, Episodes, Versions and Assertions.
    Chapter 10.The Mechanics of Maintaining Versioned Objects.
    Chapter 11. The Semantics of Maintaining Versioned Objects.
    Chapter 12. Querying Versioned Objects.

    Part 4. Introducing Versioned Objects into the Enterprise.
    Chapter 13. A Business-Driven Approach to Bi-Temporality
    Chapter 14. Surrogate Keys.
    Chapter 15. Versioned Objects, Warehouse Snapshots and Versioned Dimensions
    Chapter 16. Maximizing Performance for Bi-Temporal Tables.

    Part 5. Related Matters.
    Chapter 17. Temporal Dimensions and Codd’s Information Principle.
    Chapter 18. Deferred Transactions and Future States.
    Chapter 19. Sandboxes and Release Management.
    Chapter 20. The Problem of Identifying Recurring Objects.
    Chapter 21. Other Kinds of Asserted Versions.

    Part 6. The Asserted Versioning Prototype.
    Chapter 22. Specifying Asserted Version Tables.
    Chapter 23. Generating Asserted Version Tables From ERwin Macros.
    Chapter 24. Using the Prototype.

    Free Register to Access Article

  • The Origins of Asserted Versioning: IT Best Practices
    Managing Time in Relational Databases, 2010
    Co-Authors: Tom Johnston, Randall Weis

    Abstract:

    This chapter discusses the origins of Asserted Versioning in IT best practices, specifically those related to Versioning. Versioning is the IT community’s way of providing queryable access to historical, current, and future data. It is believed that these practices are variations on four basic methods of Versioning data. Those four types are: (i) Basic Versioning; (ii) Logical delete Versioning; (iii) Temporal gap Versioning; and (iv) Effective time Versioning. The simplest Versioning method, called basic Versioning, is to add a date to the primary key of the table to be versioned, thus transforming it from a nontemporal into a unitemporal table, i.e. into a table with one temporal dimension. In the logical delete Versioning, a logical delete flag is included in the version table. It has two values, one marking the row as not being a delete, and the other marking the row as being a delete. Effective time Versioning is the most advanced best practice for managing versioned data in the IT world. Effective time Versioning actually supports a limited kind of bitemporality. The chapter discusses each of these methods by means of examples, which include sample tables and a running commentary on how inserts, updates, and deletes affect the data in those tables.

    Free Register to Access Article

  • Designing and Generating Asserted Versioning Databases
    Managing Time in Relational Databases, 2010
    Co-Authors: Tom Johnston, Randall Weis

    Abstract:

    This chapter discusses how Asserted Versioning databases can be designed and generated. An Asserted Versioning database is one that contains at least one Asserted version table. Asserted Versioning databases are generated from the combination of a conventional logical data model and a set of metadata entries. Asserted Versioning simplifies the management of temporal databases by providing maintenance encapsulation, query encapsulation, and design encapsulation. The chapter discusses how temporal design requirements are expressed in metadata associated with a conventional logical data model, how this metadata is used to convert nontemporal table schemas into bitemporal table schemas, and also how it is used to generate the code, such as stored procedures, that enforce both temporal entity integrity and temporal referential integrity on those tables. If ERwin is used as the data modeling tool, then a set of Erwin macros that have been written will do the conversion automatically. Otherwise, the conversion will be a manual process.

    Free Register to Access Article

Tom Johnston – One of the best experts on this subject based on the ideXlab platform.

  • Managing Time in Relational Databases: How to Design, Update and Query Temporal Data
    , 2010
    Co-Authors: Tom Johnston, Randall Weis

    Abstract:

    This book presents a comprehensive view of how to manage a temporal database. Temporal data management refers to an integrated method of managing data about the past, present, and future of the objects and events of interest to the user. That is, managing non-current data in relational databases in such a way that past data can be seamlessly accessed together with current data with result sets containing both current and non-current data that can be retrieved with queries simple enough for a business user to write and with result set response times very close to those for result sets containing current data only.

    For example, let’s say that from July through August of last year we had on our database a row stating that the unit cost of a product was $25.50 during the first quarter of that year. But in September, we realized that we had made a mistake and that the unit cost was actually $23.50. End users need the ability to issue a query which can tell them both what the unit cost really was in the first quarter of last year and also a query which can tell them what they said the first-quarter unit cost was last July.

    The practical and comprehensive nature of this material is demonstrated in each chapter by a mixture of diagrams and text typical for a book about data architecture and data models. The chapters dealing specifically with managing temporal and bi-temporal data will rely heavily on an example-driven approach, each example presenting specific real-world scenarios. Each scenario is structured around (a) a before-image of a sample table or tables; (b) a bi-temporal timeline graphic; (c) a specific bi-temporal transaction; and (d) one or more snapshots of the sample table or tables, showing the results of applying each transaction. (Bi-temporal relational data is temporarily delimited into two dimensions, i.e., valid time and transaction time.)

    For example, a hedge fund company needs to bi-temporally manage a lot of their econometric data because GDP, CPI and the many other data sources they use have scheduled releases, then followed up by one or more revisions later on. Such data describes (a) what the economy was like during a specific time period (valid time) and (b) a series of corrections to prior releases of that data (transaction time).

    Value proposition: This book presents a simplified approach to managing temporal and bi-temporal data that reduces the complexity of data queries and transactions making inserts, updates and deletes simple enough that anyone who could write them against non-temporal tables could also write them against temporal tables. This is accomplished by developing declarative specifications that replace time-intensive design work for data modelers who must incorporate temporal semantics into their work. In this way, query complexity is minimized. It allows the database designer to situate this special kind of temporal data management in the context of an enterprise data architecture, together with other ways of managing non-current data.

    KEY FEATURES

    1. Integrates an enterprise-wide viewpoint with a strong conceptual model of temporal data management allowing for realistic implementation of database application development.

    2. Provides a true practical guide to the different possible methods of time-oriented databases with techniques of using existing funtionality to solve real world problems within an enterprise data architecture environment.

    3. Written by IT professionals for IT professionals, this book employs a heavily example-driven approach which reinforces learning by showing the results of puting the techniques discussed into practice.Table of Contents

    Part 1. Introduction.
    Chapter 1. Historical Contextualization
    Chapter 2. A Taxonomy of Methods of Managing Time in Databases.
    Chapter 3. Temporal Data Management in Enterprise Data Architecture.
    Chapter 4. The Objectives and Origins of Asserted Versioning.
    Chapter 5. Basic Concepts of Asserted Versioning.

    Part 2. Current Practice in Temporal Data Management.
    Chapter 6. Baseline: Updates in Place.
    Chapter 7. Standard Practice: Adding a Date to a Primary Key.
    Chapter 8. Best Practice: Using Effective Date Pairs.

    Part 3. Asserted Versions: a New Approach to Bi-Temporal Data Management.
    Chapter 9. Objects, Episodes, Versions and Assertions.
    Chapter 10.The Mechanics of Maintaining Versioned Objects.
    Chapter 11. The Semantics of Maintaining Versioned Objects.
    Chapter 12. Querying Versioned Objects.

    Part 4. Introducing Versioned Objects into the Enterprise.
    Chapter 13. A Business-Driven Approach to Bi-Temporality
    Chapter 14. Surrogate Keys.
    Chapter 15. Versioned Objects, Warehouse Snapshots and Versioned Dimensions
    Chapter 16. Maximizing Performance for Bi-Temporal Tables.

    Part 5. Related Matters.
    Chapter 17. Temporal Dimensions and Codd’s Information Principle.
    Chapter 18. Deferred Transactions and Future States.
    Chapter 19. Sandboxes and Release Management.
    Chapter 20. The Problem of Identifying Recurring Objects.
    Chapter 21. Other Kinds of Asserted Versions.

    Part 6. The Asserted Versioning Prototype.
    Chapter 22. Specifying Asserted Version Tables.
    Chapter 23. Generating Asserted Version Tables From ERwin Macros.
    Chapter 24. Using the Prototype.

    Free Register to Access Article

  • The Origins of Asserted Versioning: IT Best Practices
    Managing Time in Relational Databases, 2010
    Co-Authors: Tom Johnston, Randall Weis

    Abstract:

    This chapter discusses the origins of Asserted Versioning in IT best practices, specifically those related to Versioning. Versioning is the IT community’s way of providing queryable access to historical, current, and future data. It is believed that these practices are variations on four basic methods of Versioning data. Those four types are: (i) Basic Versioning; (ii) Logical delete Versioning; (iii) Temporal gap Versioning; and (iv) Effective time Versioning. The simplest Versioning method, called basic Versioning, is to add a date to the primary key of the table to be versioned, thus transforming it from a nontemporal into a unitemporal table, i.e. into a table with one temporal dimension. In the logical delete Versioning, a logical delete flag is included in the version table. It has two values, one marking the row as not being a delete, and the other marking the row as being a delete. Effective time Versioning is the most advanced best practice for managing versioned data in the IT world. Effective time Versioning actually supports a limited kind of bitemporality. The chapter discusses each of these methods by means of examples, which include sample tables and a running commentary on how inserts, updates, and deletes affect the data in those tables.

    Free Register to Access Article

  • Designing and Generating Asserted Versioning Databases
    Managing Time in Relational Databases, 2010
    Co-Authors: Tom Johnston, Randall Weis

    Abstract:

    This chapter discusses how Asserted Versioning databases can be designed and generated. An Asserted Versioning database is one that contains at least one Asserted version table. Asserted Versioning databases are generated from the combination of a conventional logical data model and a set of metadata entries. Asserted Versioning simplifies the management of temporal databases by providing maintenance encapsulation, query encapsulation, and design encapsulation. The chapter discusses how temporal design requirements are expressed in metadata associated with a conventional logical data model, how this metadata is used to convert nontemporal table schemas into bitemporal table schemas, and also how it is used to generate the code, such as stored procedures, that enforce both temporal entity integrity and temporal referential integrity on those tables. If ERwin is used as the data modeling tool, then a set of Erwin macros that have been written will do the conversion automatically. Otherwise, the conversion will be a manual process.

    Free Register to Access Article