From: | Zeugswetter Andreas SB <ZeugswetterA(at)wien(dot)spardat(dot)at> |
---|---|
To: | "'Chris Bitmead'" <chrisb(at)nimrod(dot)itg(dot)telstra(dot)com(dot)au>, pgsql-hackers(at)hub(dot)org |
Subject: | AW: Storage Manager (was postgres 7.2 features.) |
Date: | 2000-07-11 13:59:31 |
Message-ID: | 11C1E6749A55D411A9670001FA687963367FF1@sdexcsrv1.f000.d0188.sd.spardat.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> Has sufficient research been done to warrant destruction of what is
> currently there?
>
> According to the postgres research papers, the no-overwrite storage
> manager has the following attributes...
>
> * It's always faster than WAL in the presence of stable main memory.
> (Whether the stable caches in modern disk drives is an approximation I
> don't know).
Yes, only if you want to be able to log changes to a txlog to be able to
rollforward changes after a restore, then that benefit is not so large any
more.
> * It's more scalable and has less logging contention. This allows
> greater scalablility in the presence of multiple processors.
Same as above, if you want a txlog you lose.
But if we could switch the txlog off then at least in that mode
we would keep all benefits of the non-overwrite smgr.
>
> * Instantaneous crash recovery.
>
> * Time travel is available at no cost.
Yes. Yes, it also solves MVCC.
An overwrite smgr would need to write the old row to some temporary storage
(Orcl: rollback segment, Ifmx: physical log) before an update.
The overwrite smgr thus needs 2 sync and one async write for one update:
1. new value to txlog (sync)
2. old value (or page) to temporary storage (rollseg) (sync)
3. new value to table (async)
(4. probably a checkpoint write)
The 7.1 implementation (non-overwrite + WAL) would only need 2 writes and no
checkpoints:
1. new value to log (sync)
2. new value to table (async)
> * Easier to code and prove correctness. (I used to work for a database
> company that implemented WAL, and it took them a large number of years
> before they supposedly corrected every bug and crash condition on
> recovery).
>
> * Ability to keep archival records on an archival medium.
It allows the use of online native OS backups that are not synchronized with
the postmaster (e.g. a tar of your datadir).
(Even if for practical production use we would probably need to add a
utility
for cleanup after a restore, the basic methodology is possible)
Imho that is a very large benefit.
> Is there any research on the level of what was done previously to
> warrant abandoning these benefits? Obviously WAL has its own
> benefits, I
> just don't want to see the current benefits lost.
I do somehow agree that this step should be well considered,
especially since WAL can work with the current non-overwrite smgr.
It seem we can have the benefit of both, at the cost of periodic vacuums, no
?
Andreas
From | Date | Subject | |
---|---|---|---|
Next Message | Michael J Schout | 2000-07-11 14:07:20 | Re: Re: postgres TODO |
Previous Message | The Hermit Hacker | 2000-07-11 13:49:08 | Re: mailing list archive dead again! |