2つのリンクされたサーバー間にインポートがあります。私は基本的に、複数の結合からデータを自分の側のテーブルに取得する必要がありました。
現在のクエリは次のようなものです。
select a.*
from db1.dbo.tbl1 a
inner join db1.dbo.tbl2 on ...
inner join db1.dbo.tbl3 on ...
inner join db1.dbo.tbl4 on ...
inner join db2.dbo.myside on ...
db1=リンクサーバー
db2=自分のデータベース
この後、db2にあるテーブルにこのデータを追加するために+selectへの挿入を使用しています。(通常、数百レコード-このインポートは1分に1回実行されます)
私の質問はパフォーマンスに関連しています。リンクサーバー上のテーブル(tbl1、tbl2、tbl3、tbl4)は巨大なテーブルであり、数百万のレコードがあり、インポートプロセスの速度が低下しています。たとえばストアドプロシージャで「反対側」(db1-リンクサーバー)で結合を行うと、クエリが同じように見えても、実行速度が速くなると言われました。そうですか?これをテストするのはちょっと難しいです。結合には私のデータベースのテーブルも含まれていることに注意してください。
また。これをより速く実行するために使用できる他の「トリック」はありますか?ありがとう