Groups | Blog | Home
all groups > sql server replication > september 2006 >

sql server replication : Which replication will fit in this structure


Hilary Cotter
9/20/2006 9:02:05 AM
With all due respect to Paul I would not use updatable subscribers as
immediate updating will require that the publisher always be online, if it
goes off line the subscriber will be read only. If you use queued updating
it is not scalable as dml originating on the subscriber will have added
latency and queued can support only a small amount of the total dml
originating on the subscriber.

Merge replication uses triggers to track changes which will mean all dml on
the subscriber and publisher will have added latency, which may not offer
the performance you need for a web application.

Which leaves two alternatives bi-directional transactional replication or
peer to peer replication. Bi-directional transactional replication is ideal
but difficult to set up. Peer to peer is simple to set up, but is not
resilient to conflicts. Updates to the same row occurring simultaneously
will lead to one of the updates being overwritten by the other. Microsoft
recommends that all updates occur on one node in your peer to peer topology
to minimize any chance of data loss.

Peer to peer offers much greater performance than merge replication.

--
Hilary Cotter
Director of Text Mining and Database Strategy
RelevantNOISE.Com - Dedicated to mining blogs for business intelligence.

This posting is my own and doesn't necessarily represent RelevantNoise's
positions, strategies or opinions.

Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html

Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com



[quoted text, click to view]

Gary Lou
9/20/2006 2:58:18 PM
Hi All,

We are going to upgrade to SQL 2005 in the next couple months. We are
not sure which version (either standare or enterprise) yet.

Here is the situation. We have two servers, SQLSERVER1(internal user)
and SQLSERVER2(web user). Both servers have the exact same data. We
want to configure both servers to replicate data in real time, and
allow insert/modify in both servers. The goal here is to load balance
the workload.

We also want to implement a fault tolerant solution on the Web DB
(SQLSERVER2). What are the options here? Thanks.

-Gary
Gary Lou
9/20/2006 3:50:44 PM
Hi Paul,

Thanks for the fast response. How does Peer-to-Peer recplication work
compare to merge replication? Does Peer-to-Peer Replication handle
record update conflicts automatically? Thanks.

Gary

[quoted text, click to view]
Paul Ibison
9/20/2006 11:21:49 PM
Gary,
I'd recommend merge replication or transactional with updating subscribers.
Merge has a greater array of conflict resolution options, which might be a
factor in determining which to use, as well as it can cope with BLOB
datatypes. Immediate updating transactional will need a constant connection
to work. For queued updating and merge, you'll need to consider partitioning
the identity ranges.
For the fault-tolerant part, RAID level 1 for the transaction log and raid 5
or 1+0 for the data files are pretty normal. For full server
high-availability, you can consider a cluster and you might consider
database mirroring as an alternative
Cheers,
Paul Ibison SQL Server MVP, www.replicationanswers.com .






[quoted text, click to view]

Paul Ibison
9/21/2006 12:00:00 AM
Difficult to say. If connectivity can be guaranteed then immediate updating
would be viable. And a loss of connectivity might invalidate the setup
anyway - I have systems like this.
Agree that Queued updating is not scalable, but we are only talking about
one node here, so this shouldn't be a problem here at this stage, but the
issues with BLOBs would be a showstopper.
Of the other alternatives, merge, bi-directional and peer-to-peer, I'd say
the main deciding factor is "can there be updates?" ie can the same row be
updated on both publisher and subscriber. If this is possible, then I'd go
for merge, and if not then opne of the laternatives for the reasons you
mention - greater performance.
Cheers,
Paul Ibison SQL Server MVP, www.replicationanswers.com

Gary Lou
9/21/2006 9:16:18 AM
Thanks for all the replies. I appreciate your thought and comments.
Merge Replication is slower. We have two servers that are connected in
a local LAN with 1 gbs speed. What is the estimate latency in second
for merge replication to replicate data between two servers? Many
thanks.

Gary

[quoted text, click to view]
Paul Ibison
9/21/2006 5:52:40 PM
Gary - why not set up a trial system, which then will give data particular
to your setup. Minimise the POLLINGINTERVAL parameter and run the merge
agent continuously then you can measure the latency by query. In
transactional replication there are tracer tokens especially for this but in
merge it's not too difficult to check the latency manually.
Cheers,
Paul Ibison SQL Server MVP, www.replicationanswers.com

hh
9/25/2006 11:40:01 AM
Yes.
"merge" is better. It just needs to tune its configuration a little.
"updatable subscribers as immediate updating" also needs DTC.

[quoted text, click to view]
AddThis Social Bookmark Button