...

SQL パフォーマンスチューニング - AG-TECH

by user

on
Category: Documents
2

views

Report

Comments

Transcript

SQL パフォーマンスチューニング - AG-TECH
SQL パフォーマンス チューニング
〜 パフォーマンス改善 最初の⼀歩 〜
1
概要
 パフォーマンスに関する悩み
 デモ
 シナリオ 1: インデックスの設定
 シナリオ 2: 統計情報の更新
 シナリオ 3: 断⽚化の解消
 まとめ
2
パフォーマンスに関する悩み
開発においてパフォーマンスが向上しない
→ 適切なインデックスの設定
運⽤においてパフォーマンスが低下してきた
→ 統計情報の更新
→ 断⽚化の解消
3
デモ シナリオの流れ
Management Studio からクエリを実⾏
下記オプションを使⽤して実⾏時の情報を確認
 SET STATISTICS IO
 SET STATISTICS PROFILE
 SET STATISTICS TIME
対処を実施
4
シナリオ 1: インデックスの設定
クラスタ化インデックス未設定 (ヒープ)
Table Scan
読み取りページ数 : 多い
データページ
クラスタ化インデックスの設定
Clustered Index Seek
読み取りページ数 : 少ない
リーフノード
5
シナリオ 1: インデックスの設定
1. クエリを実⾏
2. 実⾏プランを確認
3. インデックスを設定
4. クエリを実⾏して効果を確認
6
シナリオ 2: 統計情報の更新
古い統計情報
統計情報更新
Clustered Index Seek
読み取りページ数 : 多い
Clustered Index Scan
読み取りページ数 : 少ない
7
シナリオ 2: 統計情報の更新
1. 統計情報の⾃動更新を OFF にしてデータ挿⼊
2. クエリを実⾏
3. 統計情報を確認
4. 統計情報を更新
5. クエリを実⾏して効果を確認
8
シナリオ 3: 断⽚化の解消
断⽚化
Clustered Index Scan
読み取りページ数 : 多い
断⽚化解消
Clustered Index Scan
読み取りページ数 : 少ない
9
シナリオ 3: 断⽚化の解消
1. 断⽚化を作成
2. クエリを実⾏
3. 断⽚化情報を確認
4. 対処策としてインデックスの再構築
5. クエリを実⾏して効果を確認
10
まとめ
インデックスの設定
 create clustered index
 データベース エンジン チューニング アドバイザ
統計情報の更新
 update statistics
断⽚化の解消
 alter index reorganize
 alter index rebuild
11
参考情報
パフォーマンスの監視およびチューニングの概要
http://msdn.microsoft.com/ja-jp/library/ms189303.aspx
データベース エンジン チューニング アドバイザの使⽤
http://msdn.microsoft.com/ja-jp/library/bb500296.aspx
クエリのパフォーマンスを向上させるための統計の使⽤
http://msdn.microsoft.com/ja-jp/library/ms190397.aspx
インデックスの再編成と再構築
http://msdn.microsoft.com/ja-jp/library/ms189858.aspx
12
13
Fly UP