Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9210371
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 18, 20262026-06-18T01:03:45+00:00 2026-06-18T01:03:45+00:00

My client, a financial services provider, has their software deployed at 500+ clients. Their

  • 0

My client, a financial services provider, has their software deployed at 500+ clients.

Their application is written in C# and uses SQL Server as the database backend. They would like to collect data from all their clients databases and also send back a smaller amount of data back to the clients. There are a couple of requirements:

  1. Data synchronization is against 500+ clients with 7 slightly different database schemas across 7 different versions of their software

  2. There can be new versions of their software with different schemas over time which cannot be delayed for waiting to update this data sync mechanism. Basically the data sync needs to be flexible to support any schema and controlled from a central location instead of changes to it being tied to the release of their application

  3. Needs to be written in .Net since all their software runs on Windows

  4. There can be a special data sync client deployed together which has access to each clients SQL Server database – but updating the client is not guaranteed to happen often.

Is there already a framework ( other than Microsoft Sync Framework which uses triggers on the database ) which would help with developing this data synchronization system?

Are there any good books/articles to read on multi-tenant systems or data synchronization which provide some good points on how to create a system like this?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-18T01:03:46+00:00Added an answer on June 18, 2026 at 1:03 am

    Not sure if there are existing framework other than sync, I had similar requirement a while back but couldn’t use MS Sync as I wasn’t using mssql.

    This is what I did, some custom code,

    Going to make some assumptions on schema change means

    • new fields/attribute can be added
    • existing fields will not be deleted (i.e. you don’t have to migrate
      existing data)
    • the clock on client and server are using UTC and synced.

    You can create a schema history table with following attributes,

    • table name
    • version
    • last sync date

    Then with all the table requiring syncing each value has a date change and last changed user attribute, e.g.

    • item1, 1/1/13, server
    • item2, 2/2/13, client1

    When you sync,

    1. check the schema table, if the client’s version < server version ==>
      update schema (running update schema scripts)
    2. Get the server updates, new data to be pushed to client, where owner = server and datechanged > clientchangedate
    3. compare each table for sync’s last change date against schema
      table’s last sync date for each table

      if change date > sync date and user = client => sync to server (either update or insert)

    also check out the ms syncing concept http://msdn.microsoft.com/en-us/sync/bb821992.aspx if you want to replicate it.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am working in a client server application in which multiple clients and server
Client + Server are both written in Javascript. I don't have a master game
I'm very interested in how financial data is streamed from server to client. I
Client/server desktop application using C#, WCF, WPF. Since pretty much every action is going
When we use SSL(Secured Socket Level) Server has private key whereas client has public
I'm working on a real-time application with the following characteristics: Hundreds of clients will
I'm making an application that gives clients and approximate loan offer (they are later
We have a web based client-server product. The client is expected to be used
All we know that sending raw binary instead of JSON between client and server
As the title says, I´m using entity framework 4.0 for a financial application. I

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.