Which Replication do I need ---

  • Here is my situation:

    We have a desktop (winforms) application connected to a database in the USA. However, the users in the global location (UK, BRUSSELS) are experiencing slowness with the application because the database server is in the U.S. (they do have some network bandwidth issues as well).

    What I am essentially looking to do is setup a database server down there as well, but both the US and the global users need to share the same data, so I presume I need some replication setup to do this. There are various implementation options and I was hoping someone with expertise in this situation can offer me guidance.

    This is how I envision the process to work, speaking abstractly. The global users create/edit records on the global sql database, those changes get propagated to a 'publisher' database and in return that data gets propagated to the US database.

    There is merge replication, peer to peer replication, transactional replication, etc. Btw, I have sql server 2008. Also, when setting this up, can I just have 2 'Servers' and one of the servers (in the US) just have 2 databases (publisher and subscriber?)

  • Will the data in any specified table be updated in both locations or only on one side?

    CEWII

  • Both locations can update the data, however, by application design, they cannot update the same report at the same time. If a report is open, I do not allow anyone else to open it for editing.

    One other potential problem, the schema in the database uses INTs as primary keys. Do I need to change it to Guids? My concern is that both locations create a report and it has the same ID. Does SQL Server handle this?

    It suks, i am just starting to learn all this DBA stuff (since we do not have one and have a hiring freeze). I am a .net developer and I never took into consideration that we would need replication - I did build the database).

  • One other important note,

    We do not have enterprise edition, thus I do not think we can use peer to peer.

  • patrick ryan (7/24/2009)We have a desktop (winforms) application connected to a database in the USA. However, the users in the global location (UK, BRUSSELS) are experiencing slowness with the application because the database server is in the U.S. (they do have some network bandwidth issues as well).

    What kind of connectivity are you relying on?... is it a point-to-point pipe or are users just connecting over public internet?... what kind of SLA is your provider giving you?... if you ping the database server from different client locations e.g. domestic, UK, Brussels -what response time do you get?

    Here is the issue... if you are working over a crappy ... oops, sorry... better saying "poor performing" network and you implement merge replication, merge replication will have to endure the very same poor performing network and guess what?... chances are it wouldn't work.

    Last but not least, the application as described might not work in a merge replication environment -better double check with the vendor.

    _____________________________________
    Pablo (Paul) Berzukov

    Author of Understanding Database Administration available at Amazon and other bookstores.

    Disclaimer: Advice is provided to the best of my knowledge but no implicit or explicit warranties are provided. Since the advisor explicitly encourages testing any and all suggestions on a test non-production environment advisor should not held liable or responsible for any actions taken based on the given advice.

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply