I'm building a POS (point-of-sale) application that will include a local Windows application (the POS) and a central web application (for configuration and reports). I want to find out if Microsoft Sync Framework is the right technology to sync the data across the local and central databases.
Components
- Central configuration database (SQL Server 2012 Standard) - all brands and stores
- Local on-site SQL Server 2014 Express - single store
- Central reporting database (SQL Server 2012 Standard) - all brands and stores
Sync
- Sync changes (e.g. new sale item or price change) made on the Central configuration database to the store database (but just data for that store's brand). Changes downloaded after they have been saved.
- Upload transactions from the store to the Central reporting database. Changes uploaded after they have been saved.
Concerns
- Is it likely that Sync Framework becomes discontinued or we need to start paying for a license?
- Will Sync Framework handle the load of 1000-2000 stores sync'ing with a central server?
- Will Sync Framework handle schema changes? And can those schema changes be staggered, so not all stores update at once?
Is Sync Framework handle the right tool for this job?
Will it handle my concerns?
What gotchas should I be aware of?
Should I consider anything else?