A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.
Field engineers need a local copy of the database when at remote sites.
This local copy needs syncing when they return to the office.
My idea was to make a journal-based store, so that syncing was about playing the log of changes since last sync (both to and from the 'master').
To complicate matters, it would be a good marketting win if this could be p2p instead of client-server, as a dedicated server - whilst simplifying things technically and from a backup perspective - is an expense that our customers might not want to shoulder.
Any thoughts upon the technical choices and challenges I'm facing designing this?
i like i
Wednesday, February 09, 2005
>> Any thoughts upon the technical choices and challenges I'm facing designing this?
Yes. Groove have solved this problem already and for only $189 per user. You need to see their Rapid Solutions Exchange pages to see how far along the 80%/20% path you can get for your money.
One thing that could help you A LOT is a "Last Updated" field
for each table. Make that field of type TIMESTAMP (if your DBMS supports it). If your DBMS does not support it, then write your data-accessing-software so that any update operation to a table updates the "Last Updated" field.
When the field engineers get home, write a program that compares the 'Last Updated' field for each record from database A with database B, and updates accordingly. You might just update the home database, then re-copy that database back onto the field engineer's PC. Whatever you do, make sure that you are making complete BACKUPS of database A and database B BEFORE you do any kind of synching operation (in case you did something wrong!). Keep the backups handy for at least a few months; you never know if you might need them, or might need to refer back to some old data!!! I.e., don't assume things are going to go perfectly right off the bat, there could be hidden gotchas, but keeping a stream of backups will save "your posterior" in the long run!!!
This topic is archived. No further replies will be accepted.Other recent topics
Powered by FogBugz