2010-11-23 11 views
1

ユーザーの詳細を取得してWebページに表示するために、3種類のデータベース (SQL Server)と対話する必要があるアプリケーションがあります。リンクされたサーバーを使用するのは良い選択ですか、またはユーザーの詳細を(何らかの日常的な仕事を通じて)アプリケーションデータベースにコピーする必要がありますか?リンクサーバーvs統合

+0

別のアーキテクチャがありますか?サービスレイヤー/ビジネスレイヤーを使用して、DBから3セットのデータを取得し、サービス/ビジネスメソッド内のデータに結合し、結果を返すのでしょうか? – Kane

答えて

1

リンクサーバーを使用すると、データを照会するたびに往復遅延が発生します。 1日1回またはセッションごとに1回のみデータを照会すると、これが受け入れられる可能性があります。しかし、これらのサーバーに多くのクエリを発行している場合、パフォーマンスが非常に悪くてアプリケーションが使用できなくなることがあります。

SQLレプリケーションを使用して、各サーバーのデータをアプリケーションサーバー上のローカルコピーにプッシュ(プル)できます。これにより、最新のデータを確実に取得しながら、より優れたクエリパフォーマンス(往復遅延なし)が提供されます。 SQLレプリケーションには多くのオプションがあります。ニーズに合ったものを見つけることができるはずです。

SQLレプリケーションの詳細については、リンクサーバーが唯一のデータベースがお互いに話をすることができるように起こっているhttp://technet.microsoft.com/en-us/library/ms151198.aspx

0

を参照してください。アプリケーションが3つの個別のデータベースと対話している場合は、個別の接続が必要です。私はではありません。は、多くのデータを移動しない限り、リンクされたサーバーを頻繁に使用することをお勧めします(アプリケーションにデータを取り込んで別のデータベースに格納するのに時間がかかります)。

関連する問題