I deal with dozens of systems, all doing cross-country or cross-ocean replication. The
only viable approach (that we have deployed in production) is
* Dual-master, single writer -- That is, all 49 clients write to one machine
* The two masters are geographically separate.
* Failover involves switching to the 'other' master. It is _not_ fully automated.
* Slaves, as needed, scattered around the world -- This provides read scaling.
1M writes per day -- that is an average of 12/sec. Yawn.
Replication delay -- you probably will almost never see any.
Network outages -- one of many things that can cause trouble. The sooner you write the
data _and_ copy it to a _remote_ site, the sooner you are immune to floods, tornados,
cyclones, power outages, motherboard death, etc.
> -----Original Message-----
> From: Anupam Karmarkar [mailto:sb_akarmarkar@stripped]
> Sent: Thursday, May 24, 2012 3:39 AM
> To: Nigel Wood
> Cc: mysql@stripped
> Subject: Re: Architectural Help
> Dear Nigel,
> Thank for reply..
> See my comments below
> From: Nigel Wood <nwood@stripped>
> To: Anupam Karmarkar <sb_akarmarkar@stripped>; "mysql@stripped"
> Sent: Thursday, 24 May 2012 3:35 PM
> Subject: RE: Architectural Help
> A few questions:
> which is more or a problem: network outages, network capacity or query
> >>Network Outages is problem, between data centres
> When you say "near real-time" do you need transactional consistent view
> on all 49 servers or can some lag be tolerated?
> >>Some lag can be tolerated considering network outage
> Can any one of the 49 local servers potentially update/delete the same
> rows or data?
> >>Yes central server can update same row or local server but not at
> same time, Few data will be updated in central location and others
> majorly in local.One Application Writes in Centeral and Others in
> local, Local app and central app shares some data.
> Is there any natural segmentation point within the data?
> Do the data centers have diverse networks so that connections to some
> data centers may remain when others?
> >>Yes, we have diverse nework , so connectivity will be avaiable in
> other data centers.
> In the event that a local data centre is totally isolated from the
> others what data should it be allowed to update?
> >>Loca application should always write in local database, Central
> Application Updated will not be available to local.
> Do your applications produce/examine large data set querying by
> secondary keys or using tull text search?
> >>We dont have text search or we dont query large data
> Are you in a position to modify the applications?
> >>No, Micro changes ok
> From: Anupam Karmarkar [sb_akarmarkar@stripped]
> Sent: Thursday, May 24, 2012 10:17 AM
> To: mysql@stripped
> Subject: Architectural Help
> Hi All,
> I need architectural help for our requirement,
> We have nearly 50 data centre through out different cities from these
> data center application connect to central database server currently,
> there are conectivity and nework flcutions issues for different data
> center, so we comeup with solution each data center we should have
> local database server which will keep syncing with other server so that
> application doesnt fail , User data can be updated in any of server and
> should reflect in every server. Application consists of
> write/read/delete operations,
> Current writes each day central server 1million.
> Only 1/1000 need to be distrubuted acrross servce rest need to be in
> central server.
> How can we achive this ? solution needs very much real time data
> accepting nework lags.
> Collect all changes in other 49 server into 1 central server(How can we
> collect data)
> 49 keeps updating data into local database from central server(Using
> Repliation Can be done)
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql To unsubscribe: