0

主な問題は、私のspには、パフォーマンスの低下を引き起こす可能性のあるさまざまなオブジェクトとロジックがあることです。

SPに表示されるものと、SP1-Tempテーブルで使用されているテーブルを以下に示します。(2つの一時テーブル)

CREATE TABLE #TEMP_TABLE(AB INT NOT NULL、AC INT NOT NULL、AD INT NOT NULL、AF INT NULL、AG INT NULL、REFERENCE_NUMBER INT NULL)CREATE NONCLUSTERED INDEX IX_1 ON #TEMP_TABLE(AB、AC、AD)

2-SPのTEMP1として作成一時テーブルにプロセスを挿入します

3-SPの最後にあるDROPTABLE#TEMP_TABLE DROP TABLE#TEMP_TABLE2

4-結合に使用されるテーブルは2つありますが、JOIN演算子の「on」の場合に使用されるすべてのフィールドではありません。例えば; 最初のテーブルで宣言されたクラスター化インデックスフィールドと、最初のテーブルのクラスター化インデックスグループにない日付列があります。

略して; クラスター化インデックスと非クラスター化インデックスは重要ですが、どの順序で宣言する必要があります。どのインデックスタイプから必要なのか、JOINプロセスなどをさらに使用するためのインデックスの作成順序を教えてください。

5-一時テーブルの代わりにテーブル変数を使用する必要があります。わかりましたが、テーブル変数を使用できない疑問符がたくさんあります。

*テーブル変数へのINSERTは、並列処理を利用しません。 ref->

6-論理読み取りについて聞いた。私は本当にこれらの数字に注意を払う必要があります。サンプルデータの結果の詳細を以下に示します(*)

7-実行計画...

実行計画

*出力:

テーブル'CHANNEL'。スキャンカウント0、論理読み取り2、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。テーブル'XYZ_DATE'。スキャンカウント1、論理読み取り2、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表'XYZ01'。スキャンカウント3171、論理読み取り13135、物理読み取り153、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表'XYZ02'。スキャンカウント5、論理読み取り51256、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表'#TEMP_TABLE_________________________________________________________________________________________________________000000000840'。スキャンカウント0、論理読み取り97、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表'Worktable'。スキャンカウント0、論理読み取り0、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。

(影響を受ける32行)テーブル'#TEMP_TABLE2________________________________________________________________________________________________________000000000841'。スキャンカウント0、論理読み取り64、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表''XYZ03'。スキャンカウント0、論理読み取り107、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表''XYZ04''。スキャンカウント32、論理読み取り129、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表'#TEMP_TABLE_________________________________________________________________________________________________________000000000840'。スキャンカウント1、論理読み取り1、

(影響を受ける21行)

(21行が影響を受けます)テーブル'XYZ05'。スキャンカウント0、論理読み取り87、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表「XYZ01A」。スキャンカウント21、論理読み取り147、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表「XYZ04」。スキャンカウント0、論理読み取り84、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。表'#TEMP_TABLE2________________________________________________________________________________________________________000000000841'。スキャンカウント1、論理読み取り1、物理読み取り0、先読み読み取り0、lob論理読み取り0、lob物理読み取り0、lob先読み読み取り0。

(*)

4

1 に答える 1

0

私はいくつかのインデックスを入れましたが、スキャンはシークを行っています..今は良くなっています。

まだパフォーマンステストを行っています:ここに従ってください->ストアドプロシージャのパフォーマンスのテスト

于 2010-02-24T09:01:51.487 に答える