locked
Sync Framework in Hub Spoke Mode RRS feed

  • Question

  •  

    Hi,

     

    Its being communicated very strongly that, Sync Framework supports Hub-Spoke Topology.

     

    As far as my understanding goes, its a Central Master, which gets the data from the source(s),

    which may aggregate them as well and then send it to the respective destination(s).

     

    So, how can i achieve this with Sync Framework, how does Sync Framework do Knowledge exchange in such scenarios, reason being knowledge is relative to a pair of sorce and destination and is different for each pair. How does it achieve what is being claimed out if it.

     

    It would be great if it could be elaborated with an example.

     

    Kindly correct me if my understanding is wrong.

     

    P2P is a multi master scenario, where as Hub-Spoke is a single central master scenario.

     

    Regards,

    Sanket

     

    Thursday, April 17, 2008 6:22 AM

Answers

  • Hi Sanket,

     

    My appologies for the lack of response on this one.  It is certainly a good question and one I will try to answer as best I can. 

     

    The Sync Framework as you have mentioned does absolutely support P2P scenarios where you can have multiple masters.  It is also worth pointing out that you can still build a hub-and-spoke architecture using P2P because the hub simply would become another peer.  Some people such as Bryan Likes has put together great samples like this.  Actually this is a pretty good sample because it also shows how you can proxy the client / server components through WCF to build a hub-and-spoke architecture using the Sync Framework. 

     

    It is important to note however, that using the Sync Framework to build a hub-and-spoke topology can be somewhat "overkill".  The reason I say this is because in a hub-and-spoke scenario things like conflict detection and resolution as well as change tracking are a LOT simpler.  To support P2P you need to keep a lot more knowledge because you never know who you might end up talking to in the future (and you would hate to have deleted knowledge that you might need later on).  As such, even though the Sync Framework supports hub-and-spoke it is probably not absolutely optimized for that type of environment.  For this (and other) reason we also have a component within the Sync Framework called Sync Services for ADO.NET which is optimized for hub-and-spoke scenarios and enables sync between hub ADO.NET database and spoke SQL Server Compact databases.  In this component we have minimized the knowledge and change tracking in comparison to Sync Framework and as a result improved scalability for this topology.  The downside is that if you want to swith to a multi master or p2p topology you would need to make changes (meaning increase the knowledge) to support P2P.

     

    In any case I hope that helps clear some things up.

     

    Liam

     

    Monday, April 21, 2008 4:12 PM

All replies

  • Do we deserve any answer for this at least or are these lame questions again?

    At least let us know these are lame questions, and they do not deserve an answer

     

    Regards,

    Sanket

     

     naik_sanket wrote:

     

    Hi,

     

    Its being communicated very strongly that, Sync Framework supports Hub-Spoke Topology.

     

    As far as my understanding goes, its a Central Master, which gets the data from the source(s),

    which may aggregate them as well and then send it to the respective destination(s).

     

    So, how can i achieve this with Sync Framework, how does Sync Framework do Knowledge exchange in such scenarios, reason being knowledge is relative to a pair of sorce and destination and is different for each pair. How does it achieve what is being claimed out if it.

     

    It would be great if it could be elaborated with an example.

     

    Kindly correct me if my understanding is wrong.

     

    P2P is a multi master scenario, where as Hub-Spoke is a single central master scenario.

     

    Regards,

    Sanket

     

    Monday, April 21, 2008 5:11 AM
  • Hi Sanket,

     

    My appologies for the lack of response on this one.  It is certainly a good question and one I will try to answer as best I can. 

     

    The Sync Framework as you have mentioned does absolutely support P2P scenarios where you can have multiple masters.  It is also worth pointing out that you can still build a hub-and-spoke architecture using P2P because the hub simply would become another peer.  Some people such as Bryan Likes has put together great samples like this.  Actually this is a pretty good sample because it also shows how you can proxy the client / server components through WCF to build a hub-and-spoke architecture using the Sync Framework. 

     

    It is important to note however, that using the Sync Framework to build a hub-and-spoke topology can be somewhat "overkill".  The reason I say this is because in a hub-and-spoke scenario things like conflict detection and resolution as well as change tracking are a LOT simpler.  To support P2P you need to keep a lot more knowledge because you never know who you might end up talking to in the future (and you would hate to have deleted knowledge that you might need later on).  As such, even though the Sync Framework supports hub-and-spoke it is probably not absolutely optimized for that type of environment.  For this (and other) reason we also have a component within the Sync Framework called Sync Services for ADO.NET which is optimized for hub-and-spoke scenarios and enables sync between hub ADO.NET database and spoke SQL Server Compact databases.  In this component we have minimized the knowledge and change tracking in comparison to Sync Framework and as a result improved scalability for this topology.  The downside is that if you want to swith to a multi master or p2p topology you would need to make changes (meaning increase the knowledge) to support P2P.

     

    In any case I hope that helps clear some things up.

     

    Liam

     

    Monday, April 21, 2008 4:12 PM
  • Thanks for the reply, it meant a lot to us. Really appreciated.

     

    Also, apologies for, the rude language put up by me.

     

    Sorry again.

     

    Reagrds,

    Sanket

     

    Tuesday, April 22, 2008 4:27 PM
  • No need for an appology.  Best of luck with your technical review.  By the way, in the future, if you ever find you are not getting a timely response feel free to email me directly FirstName.LastName @ microsoft.com

     

    Liam Cavanagh

     

    Tuesday, April 22, 2008 4:39 PM
  •  

    Could you elaborate a bit on why its overkill. I am currently building a hub and spoke model and many times in the last week or so i have thought it would be easier to just roll my own solution then to use Sync Framework, but after reading this thread wondering if it really would be easier to just roll my own.

     

    Im currently trying to sync data from a web service to a sql 2005 database.

    Tuesday, September 30, 2008 10:48 PM