2017-02-08 14 views
0

私はサーバー1にあるテーブルAとサーバー2にあるテーブルBを持っています。 テーブルには約150万行が含まれています。 テーブルAをサーバBにコピーする最も速い方法は何ですか?夜間ベース。SQL Server 2012のサーバーAからサーバーBにテーブルをコピーする最も良い方法は何ですか?

テーブルAで変更されたレコードだけを持ってきて、テーブルBに持っていくのが最も速い方法は何ですか?

今まで私はHASHBYTESと一緒にMERGEと一緒に、変更されたレコードをキャプチャするように試みました。ターゲット表とソース表が同じサーバー上にある場合は、完全に機能します。 (約1分かかります)。

ターゲットがサーバーBにありますが、ソースがサーバーAにある場合、15分以上かかります。

このような操作のための最善の方法と最速のテクニックについてお聞かせください。

いくつかの種類の複製ですか?それとも、SSISがこれに最適だろうか?

+0

ターゲットサーバでテーブルを作成し、INSERT INTOを使用します – Sami

+0

でした。 'MERGE'を使うのと同じように約12分かかります。 – Oleg

答えて

1

私の2セント。あなたは "夜間ベースで"あなたの質問を認定して以来、私はSSISでこれを言うと思います。

+0

SSISが最速の方法でしょうか?それはあなたが言っていることですか? ありがとうございます – Oleg

+0

はい、これは、あなたが「夜間ベースで」この作業を行うことを検討している最速の方法です。それを一度設定して忘れてください(一度開発して毎晩実行するようにスケジュールする)。 – MarlonRibunal

0

私はSSISを使用しますが、サーバー間で高速な大容量データコピーを実行するように設計されています。

また、テーブルBを削除できる場合は、INSERT INTOではなくSELECT INTOを使用できます。

最小限しか記録されないため、SELECT INTOははるかに高速ですが、挿入が実行されている間はテーブルBがロックされることに注意してください。

また、テーブルBのインデックスを無効にしてから、後で有効にすることもできます。

関連する問題