Hi all. I've got what I thought would be a basic question, but I'm struggling to answer it.
Lets say I have three locations, each running an instance of an application that utilizes an SQLExpress database. For example:
Let SQLX1 = an installation of SQLExpress, running at a store in San Francisco, CA
Let SQLX2 = an installation of SQLExpress, running at a store in New York, NY
Let SQLX3 = an installation of SQLExpress, running at a store in Chicago, IL
In the simplest terms, what I need is the information gathered at the three locations to show at all the locations.
My requirements are:
1) Information resides locally at the locations so if/when the internet connection dies, the store continues to process
2) Upon reconnect of the information, the local information is synchronized to the other locations
3) Were not talking seconds for updates here. 15 minutes would be fine, an hour would be fine, daily would be not fine, but it would be acceptable
4) Whatever I come up with needs to be extensible, for example I might have a "customer" that has 3 locations as in the above example. Next year, lets say, he adds 4 more locations. All 7 locations need to sync. Also I need to support multiple customers who might have multiple locations.
I can handle all the database design and make sure that the data is properly segregated and what not. This question is explicitly about (A) how would I go about setting up my SQL Server licensing and (B) what kind of hardware is required to make this work? Is there a "big brain" box that is running SQL Server Standard, that grabs from the Expresses and pushes down the changes, back to those Expresses? Do the Express licenses need to go away at all locations?
Thanks for your time.