Replication/Synchronization?

We have what is likely a fairly typical scenario:  an office with a Windows domain and an intranet where much of the work takes place, and field workers, who collect data in the field and come back to the office occasionally, but are not nearly always connected.  All PCs are in a domain, including the field laptops (they use cached credentials when not in the office).  We need to replicate data to the field laptops in such a way that each time they connect to the office intranet, they get refreshed.  The data consists of two different things:  simple reference files and some SQL CE databases.  There seem to be so many possible solutions, but no perfect one.  I'm sure we're not unique:  how have other people solved this?

Some of the possible solutions we've pondered:

  • Login script:  no good if users don't log out/in.
  • Icon on the desktop:  requires user interaction.
  • Microsoft System Center:  overkill - seems like a sledge-hammer on a finishing nail (i.e. too much setup and maintenance).
  • SQL replication:  just for databases - won't help with other files.
  • Azure Mobile Services:  would require writing an application.
  • A replication app like "Second Copy":  requires too much setup and maintenance (individual configuration on each laptop), and is not event-driven.
  • Custom app:  too much work/will take too long.

There are probably a plethora of other options as well.

Whereas initially we only care about pushing data to the field laptops, an option to do a true synchronization would be preferable.  Any thoughts/ideas/suggestions?

As an aside, since SQL CE is dead, we are considering moving this to a different store.  Given the above, what would people recommend?  Both SQL Express and SQL LocalDB seem like a large footprint for what we need.  Essentially, the local database is just a cache.  However, the software accessing the database needs to do so transparently, without knowing whether or not it is online/connected.  Yes, this seems an ideal use of Azure Mobile Services, but 1) we want to host it ourselves (and setting up/maintaining the Azure services in-house feels like too much work), and 2) it would likely require too much of a retrofit for our older software.

Any help would be appreciated!

Thanks!

Brad.

April 1st, 2015 11:28am

Hi Pletzky,

According to your description, I am afraid there might be no perfect way to get all your needs except a Custom app because these features were designed for Generic natures, specific needs always mean more setup and maintenance.

Unfortunately regarding to database and System Center question our help might be limited, but we still could give you some suggestion about file Synchronization and scripting.

If you work with files on a network, you can make the files available offline so you can access them even when your computer is not connected to the network. This is especially useful if you use a laptop to connect to a workplace network.

When you make a file available offline, Windows creates a copy of the file on your computer. This is called an offline file. The next time you disconnect from the network, you'll still be able to open, modify, and save the file the same way you would if you were still connected. And when you do connect to the network again, Windows will automatically sync the offline file on your computer with the corresponding file on the network.

http://windows.microsoft.com/en-us/windows/understanding-offline-files#1TC=windows-7

This feature also apply to Windows 8.1

For the scripting, I thought task scheduler is good for your case, you could create a script running event when workstation connect to certain network.

To create a task script

Open the Task Scheduler. You can find it by typing Task Scheduler into the start menu search box.

In the Task Scheduler library, create a new task by clicking Create Task in the Actions panel on the right side.

Give the task a name like "detect network connect" or whatever you choose

On the Triggers tab, click New... and select On an Event from the dropdown box

Choose the following settings:

Log: Microsoft-Windows-NetworkProfile/Operational

Source: NetworkProfile

Event ID: 10000

Click OK, then go to the Conditions tab.

Check the box for Start only if the following network connection is available and choose the network you want to run the script with

Under the Actions tab, click New... and select Start a program. Enter the location of the script file you want to run, then click OK. Then you good to go

If you still need further support about SQL database or system center, we suggest you post your issue to relevant Forum and ask for relevant advices.

https://social.technet.microsoft.com/Forums/en-US/home?category=servicemanager

https://social.technet.microsoft.com/Forums/en-US/home?category=sqlserver

The reason why we recommend posting appropriately is you will get the most qualified pool of respondents, and other partners who read the forums regularly can either share their knowledge or learn from your interaction with us. Thank you for your understanding.

Also we will keep this thread open so other users who have similar practice might give more suggestion.

Regards

D. Wu

Free Windows Admin Tool Kit Click here and download it now
April 6th, 2015 9:45pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics