I am looking at deploying a bunch of nodes all over the world that each replicate the exact same data.

These are all active-active and let's say the probability of a given node going down in given time period t is p.

How do I figure out then, the minimum number of nodes (n) I need to deploy, to achieve a global availability v, with these parameters t and p?

This may or may not be a math question but I am certain this is something someone has dealt with.

For example, with 99.99% ("four nines") availability, my network only is unavailable for a max of 52.60 minutes a year, which is 4.38 minutes per month, 1.01 minutes per week, or 8.64 seconds per day.



There's no exact answer - but you should at least read up on CAP theorem to design your network so it can handle a global scale fault. I'd hazard to guess that if you are asking this question, it would be best to keep the architecture simple and local to a given region to minimize latency impact.

Keep in mind that stateful geo-distribution is incredibly complex - there's a reason why many major sites (Reddit, Imgur, etc.) are single core location only. It took us many years of planning and execution for us to activate Speedtest.net in Active/Active mode globally.

Not the answer you're looking for? Browse other questions tagged or ask your own question.