home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.databases
- Path: sparky!uunet!microsoft!hexnut!dant
- From: dant@microsoft.com (Dan Tyack)
- Subject: Re: Oracle and discrete transactions
- Message-ID: <1992Dec16.162917.26950@microsoft.com>
- Date: 16 Dec 92 16:29:17 GMT
- Organization: Microsoft Corporation
- References: <1514@uniware.dk> <1992Dec15.131240.13670@progress.com>
- Distribution: comp
- Keywords: tpc, transcations, benchmark, Oracle
- Lines: 63
-
- You didn't mention the prime benefit for 'descrete transactions:
- maximizing tpc-b numbers! :) ( no flames please)
-
- In article <1992Dec15.131240.13670@progress.com> gus@progress.COM (Gus Bjorklund) writes:
- >oles@uniware.dk (Ole Skanning) writes:
- >
- >>I've heard that Oracle has implemented somthing called 'discrete transactions',
- >> in version 7, which are supposed to give better tpc-ratings.
- >
- >>Could someone send me a brief explanation of what a discrete transaction is and
- >>how it is implemented. What user benefits should there be ?
- >
- >Oracle's "Discrete Transactions" is similar to a mechanism called
- >"Field Calls" in IMS. They are useful for short update transactions
- >that access a small number of rows.
- >
- >The basic idea is this:
- >
- >During forward processing of the transaction, data updated by the
- >transaction are locked and the updates are deferred by spooling
- >log records to a private, in memory log buffer. When the transaction
- >commits, the updates are applied by processing the log records which
- >are also written to the redo log. Then the locks are released.
- >
- >The main goals are to minimize lock duration and the number of
- >instructions executed.
- >
- >Some advantages:
- >
- >No undo information has to be generated or written to the log.
- >If the transaction rolls back, all you have to do is throw away
- >the spooled log records and release the locks.
- >
- >Discrete transactions are short and fast, so high concurrency is
- >possible.
- >
- >Some disadvantages:
- >
- >The transaction can't see its updates because they are not performed
- >until commit time. If the transaction attempts to access the same row
- >twice, it will fail.
- >
- >Conflicting transactions cannot achieve read consistency because
- >no previous versions of the rows updated by the discrete transaction
- >are available. So the conflicting transactions have to be rolled back.
- >
- >Discrete transactions cannot modify both tables involved in a
- >referential integrity constraint. This is because the transaction
- >cannot see its own updates.
- >
- >Discrete transactions cannot be distributed.
- >
- >Hard to program.
- >
- >
- >
- >--
- >Gus Bjorklund uucp: ...mit-eddie!progress!gus
- >Progress Software Corp. internet: gus@progress.com
- >14 Oak Park phone: 6172804361
- >Bedford, MA 01730 fax: 6172804095
-
-
-