I need to design the DB architecture for my client, the best possible approach. This is the scenario -

There would be a software running in more than 200 locations which we have called local sites, connected to Database. There is also a Central site with a BI application connected to the same Database.

The volume of data is not an issue, it is the geographical locations a problem.

What is the right approach for this kind of architecture -

1. Go for the cloud option?

Get a powerful Server. Put the BI application, the Database and the software that will run on the local sites all on the same Server ?

OR

2. Get 2 servers, one for Central site (BI application) and one for local sites software and the Database

Let the local sites software be used as Saas with the Database and the BI application on Central Site connect to the Database remotely?

OR

3. Get 5 servers, one for Central site with the Database, 4 servers for local sites distributed geographically

In this case use one Database and 5 instances one for each server? One instance for Central and 4 instances for local?

I am a bit confused. Any help, idea would be really appreciated. Thanks.