Using SQL Replicataion to merge data in two tables

Posted on 2011-03-22
Medium Priority
Last Modified: 2012-05-11
I have a sql server 2005 stanadard edition.

I have a series of tables staging and lve table with around 5-6 million records in each.

The staging tables represent data improted weekly via SSIS now my problem is that i want to migrate / merge the 5 million records from the staging table to the 5million records in the live table.

I've tried doing this via ssis and simple stored procedures but it just hangs the server and kills the server /db,

I've had a consultant to come in and opimise these tables but were still no were near solving this problem. However the consultant has since advised that we use sql replication to do this instead, as its designed for this type of job, and will avoid any server hangs.

I not familiar with this myself and as such wanted to get a 2nd opinion and ask is this advisable and how would this work?

Question by:Webbo_1980
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 17

Expert Comment

ID: 35197445
Different types of replication exist but mostly applied at table level between databases or servers.

Here are 2 high level article on different types of replication in SQL Server.


How do I... Configure transactional replication between two SQL Server 2005 systems?

SQL Server 2005 - Configuring Replication

Cry How to... SQL Server Replication

One good idea will be to setup bcp export and import to merge the 5 million records from the staging table to the 5million records in the live table. Even you can try bulk insert. The data will be contained in a non delimited/delimited text/csv/excel file. You can automate/schedule these activities using windows scheduler.  

Author Comment

ID: 35197514
Thank you for the reply, but non of the links above use replication in the way suggested to me i.e. using it to merge data found in two tables on the same db ?

I've already imported this data from a csv files and imported all the tables into the staging table, its the merge which is taking the time.

Is this advisable? and is this the best way?

LVL 17

Expert Comment

ID: 35204406
"i want to migrate / merge the 5 million records from the staging table to the 5million records in the live table."

The best way to do this should be using bcp or bulk insert which is automated via task scheduling. It is simple to implement and pretty fast unlike "I've tried doing this via ssis and simple stored procedures but it just hangs the server and kills the server /db, ".
LVL 10

Accepted Solution

TAB8 earned 2000 total points
ID: 35204918
Replication is not your solution ..   ONe table will have to be considered the publisher and one the subscriber ...   to set up replication all the data from the publisher overwrites all the data in the subscriber ...   it will not merge the data together !!!

What you need to do in create a new table with no constraints ....  bcp both sets of data into the new table then select the unique data from that table into your prod table ..

Or you can use a database comparison tool "like the one form redgate" this will compare two sets of data and can update tables so you have one unique set of data

Author Closing Comment

ID: 35361534
Thank you everyone but despite weeks of trying ive given up come to the conclusion replication want meant tobe used this way

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction: When running hybrid database environments, you often need to query some data from a remote db of any type, while being connected to your MS SQL Server database. Problems start when you try to combine that with some "user input" pass…
Data architecture is an important aspect in Software as a Service (SaaS) delivery model. This article is a study on the database of a single-tenant application that could be extended to support multiple tenants. The application is web-based develope…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question