- PR -

SQLSERVERのリンクサーバについて

1
投稿者投稿内容
Anvi
会議室デビュー日: 2002/08/30
投稿数: 16
投稿日時: 2006-03-06 18:09
いつも参考にさせていただいております。
DB初心者でわからない点がありましてわかる方がいらっしゃればご教授お願いいたします。
内容は、SQLSERVER2000のリンクサーバを設定し、リンク先のテーブルをCOUNTするのですが、接続条件により検索スピードの違いが表示されます。なぜでしょうか?

SQLSERVERのリンクサーバ(ORACLE)A(社外)に設定しております。検索及び接続可能です。
このときSQLSERVERのクエリアナライザでパススルークエリを実行してAサーバのテーブルを検索すると2時間かかっても帰ってきません。(対象データが大きいので・・・)
しかし、一旦、SQLSERVERのリンクサーバ(ORACLE)B(社内)に設定し、B上でAのテーブルを参照するようビューを作成します。
そこでSQLSERVERクエリアナライザでパススルークエリを実行してBサーバで作成したビューを検索すると10分程度で帰ってきます。

この違いは、なぜでしょうか?
ちなみにリンクサーバには、Microsoft OLE DB Provider for ORACLE を使用しております。
TLC
大ベテラン
会議室デビュー日: 2005/05/31
投稿数: 152
お住まい・勤務地: 東京都
投稿日時: 2006-03-11 15:07
引用:

Anviさんの書き込み (2006-03-06 18:09) より:

内容は、SQLSERVER2000のリンクサーバを設定し、リンク先のテーブルをCOUNTするのですが、接続条件により検索スピードの違いが表示されます。なぜでしょうか?

SQLSERVERのリンクサーバ(ORACLE)A(社外)に設定しております。検索及び接続可能です。
このときSQLSERVERのクエリアナライザでパススルークエリを実行してAサーバのテーブルを検索すると2時間かかっても帰ってきません。(対象データが大きいので・・・)




お疲れ様です。
TimberLandChapel です。

ちなみに,「パススルークエリ」というのは Access からリモートへクエリ実行する機能ですが,何か特殊なカウントクエリを発行されていますでしょうか?

■問題解決には至らないでしょうが,INFO 程度に。。。

(感覚的には,Oracle 内でインデックスが使えるようなビューを近場においてもらえれば,分散クエリの負荷が低減できるような気もしますが。。。)

・分散クエリ
http://www.microsoft.com/japan/msdn/sqlserver/sql2000/SQL_OLEdbConn.asp

・分散クエリの最適化
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/optimsql/odp_tun_1a_6oxf.asp

・Oracle とのリンク
http://support.microsoft.com/?kbid=280106

----------
TimberLandChapel
3.21 Workshop 開催
http://blogs.timberlandchapel.com/blogs/workshop/archive/2006/02/04/649.aspx
1

スキルアップ/キャリアアップ(JOB@IT)