views:

100

answers:

2

Both replication and clustering are terms for servers setups with physical (real) servers, usually implemented on a DB or AS level.

Now the question: In a virtualized environment with "easy" scalable servers (touching clustering) and a higher availability (DB replication) through the means of high availability of the virtual server by the cloudserver provider, do we really need replication and clustering (as in covering the problems of traditional servers) ? Question is asked from a soultion/application provider viewpoint.

Please exclude the need of replication with a business requirement background, eg. the need to replicate a DB at 2 different geographical locations to ensure performance and data.

Thanks for your insights !

+1  A: 

While having HA in a dedicated server production environment is next to godliness in most cases, the same applies to the cloud. The host machine your cloud server is on can have issues just as a dedicated server would. While most "good" cloud hosts will immediately work to migrate your server to a new host machine, that's still cutting in to downtime...unless you have a HA setup. In which case, you would already be covered by other systems in your network.

The question is, are you handling the HA setup, or is your host?

In regards to your exclusion, think of it on a smaller scale. Think on the level that if you had a server in California, it could be picked up in Nevada if there was an outage. Ideally, you would want to have a small cluster in one geographic location, a small cluster in another, etc. so if one goes down in one host machine in a certain datacenter, it could be picked up by another server in that same datacenter.

...And if the datacenter goes down, another datacenter's cluster takes the load. If the US goes down, EU servers pick up, and so on.

I hope that answers your question.

sublimegeek
A: 

It isn't just about availability, it's also about performance. If your database server is in the cloud, it doesn't mean you have infinite performance reserves. Replication is often used as a means of scaling performance. Running the database in the cloud is really no different than having your own hardware. It can be running on a virtual server (or servers) but that's something you could do with your own hardware as well.

Alex - Aotea Studios