×

Early commit timestamp computer database protocol

  • US 5,530,851 A
  • Filed: 04/28/1994
  • Issued: 06/25/1996
  • Est. Priority Date: 04/28/1994
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method for computer database construction and use comprising the steps of:

  • organizing data items into atomic data sets;

    breaking down transactions containing a plurality of statements operating on said data into projections having statements which operate on only one said atomic data set;

    issuing commands by said projections, said commands comprising read commands, write commands, and projection delimiting commands;

    allowing multiple transactions and projections to access said atomic data set;

    generating a timestamp for a projection upon initial issuance of either a read command or a write command to the atomic data set;

    maintaining a read timestamp for each data item in said atomic data set which indicates the timestamp of the projection which last issued a read command for the data item;

    maintaining a write timestamp for each data item in said atomic data set which indicates the timestamp of the projection which last issued a write command to the data item;

    read comparing said issuing projection timestamp with said maintained write timestamp on issuance of a read command, said read comparing step indicating a conflict with an other projection if said issued projection timestamp is earlier in time than said maintained write timestamp;

    write comparing said issuing projection timestamp with said maintained write timestamp and said maintained read timestamp on issuance of a write command, said write comparing step indicating a conflict with an other projection if said issued projection timestamp is earlier in time than one of said maintained write timestamp and said maintained read timestamp;

    executing said issued command when said read comparing step and write comparing step both indicate that there is no conflict between said issuing projection and said other projection;

    updating said maintained read timestamp for said data item in said atomic data set after execution of said issued read command affecting said data item;

    updating said maintained write timestamp for said data item in said atomic data set after execution of said issued write command affecting said data item;

    aborting said issuing projection when one of said read comparing step and write comparing step indicates that there is a conflict between Said issuing projection and said other projection;

    restarting said aborted projection after commit of said other projection, said restarted projection receiving a new timestamp;

    committing said projection upon issuance of a projection delimiting command; and

    recording all changes to said atomic data set in a stable store until commit of said projection.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×