On 6/11/2012 10:36 AM, Ananda Kumar wrote:
> Master-master allows load balancing.
Why do people keep replication rings as if they are the best possible
configuration? A master-slave relationship also permits load balancing
and is easier to maintain and recover in the event of a node failure.
Any MySQL replication topology cannot, in a generic sense, allow load
balancing. Careful precautions must be maintained in your load balancer
and in your application code to avoid data collisions (adding or
modifying the same PK on the same table on two or more nodes at the same
For continuous uptime, you do need redundancy. For the 'limited
downtime' scenario that the customer proposed, this includes
geographical redundancy as well as physical duplication and should also
include sharding his data so that the loss of one sharded set (due to
extreme disaster or comms failure) does not knock all of his users
offline at the same time.
"realtime" data is also a variable definition. For hydrologic monitoring
data 'realtime' could mean within the last 15 minutes. For some
applications (such as telecommunication) 'realtime' is measured in
microseconds. It may be that the customer's requirements can tolerate a
normal variance in duplication time provided by MySQL's native
replication. If not, then rewriting (notice I did not say "porting")
their application to use MySQL Cluster may be the way to meet their
Yes, master-master replication can be useful (in an active-passive
setup) for rapid failover and recovery if you take the appropriate
precautions. It is not recommended for the newest administrators because
recovery can become complicated. One should really understand basic,
top-down master-slave replication before attempting to create a
Active-Active (dual master) configuration is even more complicated and
is suited only for specific application purposes. This is definitely an
advanced technique and requires careful planning and engineering to
MySQL Principal Technical Support Engineer
Oracle USA, Inc. - Hardware and Software, Engineered to Work Together.
Office: Blountville, TN