• DocumentCode
    1411366
  • Title

    Efficient differential timeslice computation

  • Author

    Torp, Kristian ; Mark, Leo ; Jensen, Christian S.

  • Author_Institution
    Dept. of Comput. Sci., Aalborg Univ., Denmark
  • Volume
    10
  • Issue
    4
  • fYear
    1998
  • Firstpage
    599
  • Lastpage
    611
  • Abstract
    Transaction-time databases support access to not only the current database state, but also previous database states. Supporting access to previous database states requires large quantities of data and necessitates efficient temporal query processing techniques. Previously, we presented a log based storage structure and algorithms for the differential computation of previous database states. Timeslices-i.e., previous database states-are computed by traversing a log of database changes, using previously computed and cached timeslices as outsets. When computing a new timeslice, the cache will contain two candidate outsets: an earlier outset and a later outset. The new timeslice can be computed by either incrementally updating the earlier outset or decrementally “downdating” the later outset using the log. The cost of this computation is determined by the size of the log between the outset and the new timeslice. The paper proposes an efficient algorithm that identifies the cheaper outset for the differential computation. The basic idea is to compute the sizes of the two pieces of the log by maintaining and using a tree structure on the timestamps of the database changes in the log. The lack of a homogeneous node structure, a controllable and high fill factor for nodes, and of appropriate node allocation in existing tree structures (e.g., B+ trees, Monotonic B+ trees, and Append only trees) render existing tree structures unsuited for our use. Consequently, a specialized tree structure, the pointer-less insertion tree, is developed to support the algorithm. As a proof of concept, we have implemented a main memory version of the algorithm and its tree structure
  • Keywords
    query processing; temporal databases; transaction processing; tree data structures; trees (mathematics); cached timeslices; candidate outsets; current database state; database changes; differential computation; differential timeslice computation; log based storage structure; pointer-less insertion tree; previous database states; specialized tree structure; temporal query processing techniques; transaction-time databases; tree structure; Banking; Computational efficiency; Data models; Database languages; Database systems; Hardware; History; Query processing; Transaction databases; Tree data structures;
  • fLanguage
    English
  • Journal_Title
    Knowledge and Data Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1041-4347
  • Type

    jour

  • DOI
    10.1109/69.706059
  • Filename
    706059