Subject | Re: [Firebird-Architect] Re: (Near to) 0 down time? (with ease I hope...) |
---|---|
Author | Jim Starkey |
Post date | 2006-02-03T18:31:08Z |
m_theologos wrote:
mechanism between the working thread and the shadow thread that
preserves page write order, and a lock must be held on the buffer to
prevent page changes until the page has been sent to all shadows. On
the other hand, there is only one class involved, PageCache. I'd call
it a two or three day project for anyone who understands the subtleties
of PageCache.
Practically speaking, however, I'm not the one to do it.
writing a number of data pages (many if garbage collection is involved),
a pointer page, a number of index pages, maybe a couple of index bucket
splits, the page management page, etc. So an insert that may require
only a 100 bytes of in the replication log could, for a 4K data page,
result in 40K bytes of miscellaneous page writes over 10 NFS/RPC round
trips.
--
Jim Starkey
Netfrastructure, Inc.
978 526-1376
>>If shadow propogation were delegated to a separate thread rather thanEasy? No, I doubt think it is easy. There needs to be a communication
>>performed inline, the overhead would disappear provided the network
>>bandwidth was up to the effect disk write bandwidth.
>>
>>
>>
>
>Is easy for you to do it?
>
>
mechanism between the working thread and the shadow thread that
preserves page write order, and a lock must be held on the buffer to
prevent page changes until the page has been sent to all shadows. On
the other hand, there is only one class involved, PageCache. I'd call
it a two or three day project for anyone who understands the subtleties
of PageCache.
Practically speaking, however, I'm not the one to do it.
>I proposed the shadow sollution because is easy to implement (AFAIK).I think this is undoable for shadows.
>Of course, better, IMHO is to have on the main server let's say S1 a
>client for the shadow server S2 and to send to him only the commands
>which changes the data (ie. not SELECTs) and let the fbserver from S2
>to manage the shadow db. (in fact a middleware on the server side).
>
>What do you think?
>
>
>A single insert is a single message for replication, but may require
>
>P.S.: Why do you say that the replication is more efficient on net
>b/width? On the shadow file the server doesn't propagate (apply) the
>changes only?
>
>
writing a number of data pages (many if garbage collection is involved),
a pointer page, a number of index pages, maybe a couple of index bucket
splits, the page management page, etc. So an insert that may require
only a 100 bytes of in the replication log could, for a 4K data page,
result in 40K bytes of miscellaneous page writes over 10 NFS/RPC round
trips.
--
Jim Starkey
Netfrastructure, Inc.
978 526-1376