- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQLserver2000のレプリケーションについて)
SQLserver2000のレプリケーションについて
このQ&Aのポイント
- SQLServer2000のレプリケーションにはトランザクションとマージの2つの方法があります。
- トランザクションはデータの変更を逐次的に転送するため、DBの差分を転送するのに向いています。
- 一方、マージはデータの変更を一度にまとめて転送するため、更新処理のタイミングに制約がない場合に適しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
同期の実行は 連続して実行の場合これは通常トランザクションレプリケーションの場合です。 要求時に実行の場合これは通常マージレプリケーションの場合です。 トランザクションレプリケーションの同期はディストリビューションエージェントが更新・挿入・削除などの変更をディストリビューションデータベースからサブスクライバに転送することでマージレプリケーションの同期はマージエージェントがサブスクライバからパブリッシャに変更をアップロードしパブリッシャからサブスクライバに変更をダウンロードすることでデータは集約されて最終的にパブリッシャとすべてのサブスクライバでデータ値が同じになります。 この辺が違うところです。 >どちらが適しているのでしょうか レプリケーションのパブリッシングにローカルディストリビュータを使用するのかリモートディストリビュータを使用してパブリッシングを構成するのかを考えれば良いかと思うのですが・・。 リモートディストリビュータはマージレプリケーションよりトランザクションレプリケーションでよく使用されると思います。 トランザクションではレプリケートされたすべてのトランザクションの書き込みと読み取りがディストリビューションデータベースに対して行われるのでディストリビュータが果たす役割が大きくなりマージでは普通プルサブスクリプションが使用されるのでディストリビュータですべてのエージェントが実行されるのではなくて各サブスクライバでエージェントが実行されます。 この二つの観点から判断しても良いと思いますが。
お礼
回答ありがとうございます。 大変参考になります!