2

当社では、2 つの異なるサーバー上にある 2 つの SQL Server 2008 データベースを同期する必要があります。

  1. データベース スキーマは約 50% 異なるため、変換が必要です。
  2. 同期はリアルタイムで行う必要があります。
  3. 同期は双方向である必要があります。

この目的のために使用されるいくつかの良い慣行は何ですか?

次の解決策を分析しましたが、うまくいきませんでした

Microsoft 同期フレームワーク. このオプションは、フレームワーク (特に、フレームワークが使用するメタデータ テーブル/トリガー/sproc) のセットアップに時間がかかるため、機能しません。また、これは新しいフレームワークであるため、ドキュメントやサンプルが不足しており、製品が他のソリューションほど安定していない可能性があります。

SQL Server 統合サービス. このソリューションには学習曲線があり、障害が発生する可能性があります。また、この目的には多すぎるようです。

どんな助けでも大歓迎です。

4

1 に答える 1

2

SQL Server のレプリケーション。

両方のデータベースにビューを作成して、異なる側の 50% をエミュレートします。これらは、まだ一致するテーブルと共に、パブリケーション ソースとしてサーバーに送信されます。一致するテーブルについては、双方向のレプリケーションをセットアップするだけです。

一致しないテーブルについては、エミュレーション ビューをパブリケーション ソースとして使用します。ベース テーブルに "SourceID" を追加して、最初に作成されたサーバーを特定し、レプリケーション フィルターをセットアップして、最初に作成された行をサーバーが受信しないようにします。これらのビューを他のサーバーに一方向のみ公開します。機能させるには、これらをインデックス付きビューとして作成する必要がある場合があります (申し訳ありませんが、思い出せません)。

于 2009-06-17T01:41:07.583 に答える