home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!haven.umd.edu!darwin.sura.net!spool.mu.edu!agate!rsoft!mindlink!a269
- From: Mischa_Sandberg@mindlink.bc.ca (Mischa Sandberg)
- Newsgroups: comp.databases
- Subject: Re: looking for record locking techniques
- Message-ID: <15114@mindlink.bc.ca>
- Date: 14 Sep 92 09:22:21 GMT
- Organization: MIND LINK! - British Columbia, Canada
- Distribution: world
- Lines: 54
-
- > James H. Coombs writes:
- >
- > Msg-ID: <1992Sep13.012730.9579@cs.brown.edu>
- > Posted: Sun, 13 Sep 1992 01:27:3
- >
- > Org. : IRIS - Brown University
- >
- > In article <15077@mindlink.bc.ca> Mischa_Sandberg@mindlink.bc.ca (Mischa
- > Sandberg) writes:
- >
- > >Would you consider moving into the 90's with a non-locking database?
- > >Perhaps you've heard of chronological databases, such as (old and hairy)
- > >LOGIX and of late, InterBase. My company does custom distributed
- > >wide-area networks, with frequent interruptions, and non-locking
- > >schemes beat locking ones, for performance and reliability. The
- >
- > Could you give us references? Or a description of the techniques? You
- > know, in the spirit of the Internet and not advertising?
- >
- > --Jim
-
- Sorry, wasn't advertising. Last ref I have for Interbase is (408)431-5120.
- Last ref I have for LOGIX is (617)864-0137. Last major batch of articles
- I saw on it was in IEEE Reliable Systems Symposium (conf. proc) 1990.
- Sorry not to have more specifics on hand; go to your nearest univ. library
- and hit the IEEE journals on distributed databases, or SIGMOD proceedings.
-
- Description of techniques? Every record has an absolute timestamp.
- You keep old versions (think of the timestamp as an extension of
- the primary key) back at least as far as the oldest pending reference.
- All transactions are allowed to proceed; at the end of a transaction,
- the timestamps as of the start of the transaction are all compared with
- the current timestamps of each row. If they differ, the transaction
- rolls back and restarts; and "tough luck what now?"
- is sent back to the client, after (n) restarts. In any case,
- high-activity queries and low-activity updates don't interfere with
- one another; "select count(*) from TABLE" can merrily chug along
- searching for rows with timestamps no greater than asof the start
- of the query, while new versions (and deletion markers) with fresher
- timestamps are inserted.
-
- Depends upon how you implement it, but your transaction log and your
- pending versions can be the same thing. Consistent backups can be running
- while the database is being updated. Also depends on how version
- garbage-collection is done, but you can request a view of a table "asof" a
- given timestamp. This was true for LOGIX; not sure what depth of versions
- is kept in Interbase (Nigel?)
- --
- Mischa Sandberg ... Mischa_Sandberg@mindlink.bc.ca
- or uunet!van-bc!rsoft!mindlink!Mischa_Sandberg
- *-*-*-*-*-*-*-*-*-*-*
- Engineers think equations are an approximation of reality.
- Physicists think reality is an approximation of the equations.
- Mathematicians never make the connection.
-