Dear People,
I need some help to get some good ideas for a design issue I am facing… The application will be geographically dispersed and only occasionally connected to the internet with a slow / unreliable connection. The users at remote branch offices are doing daily data entry to their own local databases (probably SQL express databases). On a periodic basis the remote branch offices need to synchronise data with head office (probably a full SQL database). Most (99%) of data will travel from the remote branch offices the head office some reference data may travel back to the remote branch office. There are a couple of design ideas that I have had: SQL Server Replication: ( http://msdn.microsoft.com/en-us/library/ms151198.aspx) I do not know how well this will work on wires that are of such poor quality. Also how easy (hard) it will be to support remotely. Program based updates: Have a program running in the background at each site attempting connection with head office transferring data. All rows would have a transferred status flag, that would be set once successful transfer has been acknowledged. File extracts: Once an hour produce a text file (with check sum) of all data entered in the last hour, background job copies file to head office server which will then apply updates to head office server. Please share with me and the group what design ideas and experiences you have had that worked well and the ones you would avoid if faced with the same design decision again today. Many thanks Greg Harris