Re: Informix versus oracle
Posted in 2003
Topics: Logging & Checkpoints
"Brice Avila" <briceavila@hotmail.com> wrote:- > Informix was also working on eliminating the physical log (Oracle's > rollback segment). If I understand correctly, Informix physical log bares little resemblance to Oracle's rollback segement. The physical log stores the pre-updated image of a page only ONCE per checkpoint duration. Once a page is retrieved from the disk for the first time after a checkpoint, a copy of it goes to physical log and it stays there till next checkpoint. All futher updates to that page is done in memory and logical logs only. OTOH Oracle's rollback segment stores the pre image of a block for EVERY update, because it is also used to retrieve pre update image when other users try to query the same row. This is what they call Multiversion Read Consistency.
rkusenet wrote: > "Brice Avila" <briceavila@hotmail.com> wrote:- > > > Informix was also working on eliminating the physical log (Oracle's > > rollback segment). > > If I understand correctly, Informix physical log bares little resemblance > to Oracle's rollback segement. The physical log stores the pre-updated image > of a page only ONCE per checkpoint duration. Once a page is retrieved from > the disk for the first time after a checkpoint, a copy of it goes to physical > log and it stays there till next checkpoint. All futher updates to that page > is done in memory and logical logs only. OTOH Oracle's rollback segment stores > the pre image of a block for EVERY update, because it is also used to retrieve > pre update image when other users try to query the same row. This is what they > call Multiversion Read Consistency. You are correct. Oracle's log files are ideally on raw devices and are used in a circular fashion with one member of the log file group filing up and then subsequent transactions going to the next log file member and eventually back to the first completing the circle. The logs contain the transactions prior to their being written to the datafile. Rollback segments, no with 9i undo where the architecture is different, contain the information necessary to perform two different functions. The first and most obvious to rollback transactions completely or to savepoints. Secondly to suport multiversioning so that reads never block writes and writes never block reads. For more information on any of this if you wish to do some exploring go to http://tahiti.oracle.com and choose the 9.2 version for the latest. -- Daniel Morgan http://www.outreach.washington.edu/extinfo/certprog/oad/oad_crs.asp damorgan@x.washington.edu (replace 'x' with a 'u' to reply)