SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
実機で試す SQL Server の現状取得


         SQLTO 小澤 真之 (@Masayuki_Ozawa)
         http://engineermemo.wordpress.com
自己紹介
  •   SQLTO という SQL Server のコミュニティの運営スタッフをしています。
      –   2012/8/4 (土) に次回の勉強会を予定しています。
  •   SE の雑記というブログ で (http://engineermemo.wordpress.com)で SQL Server を
      中心とした Microsoft 製品の検証結果を誤字脱字を交えながら、つらつらと投稿しています
      ので興味のある方がいらっしゃいましたらご覧いただけると幸いです
  •   SNS のアカウント
      –   Twitter : @Masayuki_Ozawa
      –   Facebook :masayuki.ozawa
  •   なぜスピーカー名が“ムッシュ 小澤”になっているか気になった方がいらっしゃいましたらこちらを参照ください
      (気づいたらこのスピーカー名になっていたのですが面白そうだからそのままにしました)

名付け親                                                                スピーカー名を
                                                                    提出の容疑者



      –   http://togetter.com/li/169645
      –   プライバシー保護のため画像を一部モザイク化してお送りしています。




                    2012/6/9              Community Open Day 2012             2
本日のハンズオン

•   配布物の確認
    –   ハンズオンマニュアル (1 部) があるかをご確認ください


•   本日は 3 種類のハンズオンを用意しています。
    – ハンズオン 3 は時間が余った方向けのオプションとして用意しました
    – ハンズオン 1 / 2 を今回のセッションの範囲としています



•   本ハンズオンは SQL Server のメモリの使用状況やインデックスの利用状況の
    取得についての足掛かりとなる情報を取得するためのセッションとなっています。
    取得した情報を基にしたパフォーマンスチューニングには触れていませんのでご了
    承ください。




             2012/6/9   Community Open Day 2012   3
本日の Agenda


  ハンズオンの内容について (10 分)


    ハンズオン 1 : メモリ情報の取得 (15 分)


    ハンズオン 2 : インデックス使用状況の確認 (15 分)


  まとめ / 質疑応答 (10 分)

    2012/6/9   Community Open Day 2012   4
ハンズオンの内容について


2012/6/9   Community Open Day 2012   5
ハンズオン 1

•   ハンズオンの内容
    –   データを SELECT / INSERT / UPDATE するとディスクからメモリ (データキャッシュ)
        にデータがロキャッシュされます。

        また、これらのデータを取得するためのクエリを実行するとそのクエリを実行するために必
        要となる実行プランがメモリ (プランキャッシュ) にキャッシュされます。

    –   本ハンズオンではこれらのキャッシュでどの程度のサイズのメモリが使用されているかを確
        認します。


•   使用するツール
    – SQL Server Management Studio
    – パフォーマンスモニタ




               2012/6/9    Community Open Day 2012              6
参考) ざっくりとした SQL Server のメモリ管理
                                Database Cache (Buffer Cache)
                                                                ハンズオンで
                                                                  確認
                                  Plan Cache (Query Cache)

  バッファプール                                  Log Cache
  Buffer Manager /
Memory Manager が管理
 = Min / Max Server                       Lock Memory
   Memory の設定
                                 Granted Workspace Memory

                                     Connection Memory


                                 MemToLeave (MemToReserve)
  非バッファプール
  Buffer Manager /                   Worker Thread Stack
 Memory Manager の
       管理外                         SQL Server フットプリント




                     2012/6/9       Community Open Day 2012        7
ハンズオン 2

•   ハンズオンの内容
    –   データを効率よく検索するためのインデックス。
        インデックスの操作には全件を読む Scan と対象のデータをポイントで読む Seek の 2
        種類の代表的な操作があります。

    –   本ハンズオンでは設定されているインデックスで Seek / Scan が行われている回数を
        確認します。


•   使用するツール
    –   SQL Server Management Studio




              2012/6/9      Community Open Day 2012     8
参考) Scan 操作と Seek 操作
             Scan 操作                                         Seek 操作


               ルート                                            ルート
               ノード                                            ノード



      中間               中間                              中間              中間
      ノード              ノード                             ノード             ノード




リーフ           リーフ            リーフ               リーフ           リーフ             リーフ
ノード           ノード            ノード               ノード           ノード             ノード




取得対象のデータの場所が特定できないため                            取得対象のデータの場所が特定できるため
  リーフノードのページをすべて確認する                             対象のリーフノードのページを取得する
       実行コストが高い                                      実行コストが低い




            2012/6/9         Community Open Day 2012                               9
ハンズオン開始

•   それでは、お手元のハンズオンマニュアルを参照して演習を実施してください
    –   開始して、しばらくしたら一度進捗を確認させていただきます


•   内容に不明な点が遠慮なくありましたらお声掛けください




            2012/6/9   Community Open Day 2012   10
まとめ / 質疑応答




2012/6/9   Community Open Day 2012   11
ハンズオン 1 (1/2)

パフォーマンスモニターでは取得が出来ない詳細なメモリの情報 (データベース別 / クエ
リの種類別) に関しては動的管理ビュー (DMV) を使用して取得することができます。


SQL Server のメモリの使用状況を確認する場合、
 –   SQL Server でメモリを ~ MB 使用している
という状態を確認するのではなく
 – SQL Server のデータのキャッシュで ~ MB メモリを使用している
 – SQL Server のクエリのキャッシュで ~ MB メモリを使用している
 – データのキャッシュの中で ~ データベースが ~ MB メモリを使用している
 – クエリのキャッシュではストアドプロシージャが ~ MB / アドホッククエリが ~ MB / プリ
   ペアードクエリが ~ MB メモリを使用している
という情報が重要になってきます。




          2012/6/9    Community Open Day 2012      12
ハンズオン 1 (2/2)

•   パフォーマンスモニターのデータはログに取得することができます。このログは CSV
    形式でエクスポートすることが可能ですので以下のようなグラフを作成することが
    できます。
    –   SQL Server 2008 以降の Enterprise Edition を使用している場合はデータコレ
        クションの機能を使用することでパフォーマンスのログを取得することができます。


                         空きメモリ




                   プランャキャッシュ



                    データキャッシュ


              2012/6/9       Community Open Day 2012         13
参考)データコレクション




    2012/6/9   Community Open Day 2012   14
ハンズオン 2 (1/2)

•   データの件数が多いテーブル (クラスター化インデックス) に非クラスター化インデッ
    クスを設定することで検索の効率が向上しますが、更新の頻度が多いテーブル
    だった場合には、更新される対象が多くなり更新のコストが上がる可能性があり
    ます。
    – 更新頻度の高いテーブルの判断
    – 更新頻度の高いテーブルに不要なインデックスを設定
    – 必要なインデックスが不足している

•   という判断の取り掛かりとなる情報を取得することが可能となります。




         2012/6/9   Community Open Day 2012   15
ハンズオン 2 (2/2)

•   動的管理ビューからデータを取得するのではなく、設定されているインデックスを
    ベースにして動的管理ビューのデータを取り出すのがポイント
    –   今回使用した動的管理ビューには 使用されたインデックス の情報が記録されているた
        め、度的管理ビューだけでは 一度も使用されていないインデックスの情報 を取得する
        ことができません。
•   再起動前にデータを取得するのが重要
    – 今回使用した動的管理ビューのデータは SQL Server を最後に起動してからの累計
      値となっています。
    – SQL Server のサービスを再起動すると初期化されてしまうため、活きたデータを取得
      するためには再起動前に取得する必要があります。




            2012/6/9   Community Open Day 2012   16
皆様ハンズオンお疲れ様でした。

 引き続き Community Open Day 2012 を
        お楽しみください!!




2012/6/9       Community Open Day 2012   17

Weitere ähnliche Inhalte

Was ist angesagt?

Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチSql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチMasayuki Ozawa
 
SQL Server パフォーマンスカウンター
SQL Server パフォーマンスカウンターSQL Server パフォーマンスカウンター
SQL Server パフォーマンスカウンターMasayuki Ozawa
 
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するdb tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するMasayuki Ozawa
 
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Masayuki Ozawa
 
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓貴仁 大和屋
 
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio KumazawaC11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio KumazawaInsight Technology, Inc.
 
Sql database その裏側に迫る
Sql database その裏側に迫るSql database その裏側に迫る
Sql database その裏側に迫るMasayuki Ozawa
 
SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能Masayuki Ozawa
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版elanlilac
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたMasayuki Ozawa
 
C13 SQL Server2012知られざるTips集 by 平山理
C13 SQL Server2012知られざるTips集 by 平山理C13 SQL Server2012知られざるTips集 by 平山理
C13 SQL Server2012知られざるTips集 by 平山理Insight Technology, Inc.
 
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようSql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようMasayuki Ozawa
 
Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Masayuki Ozawa
 
Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Masayuki Ozawa
 
A25 sql server data page structure deep dive
A25 sql server data page structure deep diveA25 sql server data page structure deep dive
A25 sql server data page structure deep diveMasayuki Ozawa
 
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)Masayuki Ozawa
 
Sql server data store data access internals
Sql server data store data access internalsSql server data store data access internals
Sql server data store data access internalsMasayuki Ozawa
 
Data consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンスData consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンスMasayuki Ozawa
 

Was ist angesagt? (20)

Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチSql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
 
Sql server 運用 101
Sql server 運用 101Sql server 運用 101
Sql server 運用 101
 
SQL Server パフォーマンスカウンター
SQL Server パフォーマンスカウンターSQL Server パフォーマンスカウンター
SQL Server パフォーマンスカウンター
 
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するdb tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
 
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果
 
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
 
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio KumazawaC11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
 
Sql database その裏側に迫る
Sql database その裏側に迫るSql database その裏側に迫る
Sql database その裏側に迫る
 
SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみた
 
SQL Server 入門
SQL Server 入門SQL Server 入門
SQL Server 入門
 
C13 SQL Server2012知られざるTips集 by 平山理
C13 SQL Server2012知られざるTips集 by 平山理C13 SQL Server2012知られざるTips集 by 平山理
C13 SQL Server2012知られざるTips集 by 平山理
 
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようSql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
 
Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介
 
Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)
 
A25 sql server data page structure deep dive
A25 sql server data page structure deep diveA25 sql server data page structure deep dive
A25 sql server data page structure deep dive
 
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
 
Sql server data store data access internals
Sql server data store data access internalsSql server data store data access internals
Sql server data store data access internals
 
Data consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンスData consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンス
 

Ähnlich wie COD2012 T2/T3 : 実機で試す SQL Server の現状取得

20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会Takahiro Iwase
 
gumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについて
gumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについてgumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについて
gumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについてgumilab
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4shingo suzuki
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4shingo suzuki
 
経済学のための実践的データ分析 4.SQL ことはじめ
経済学のための実践的データ分析 4.SQL ことはじめ経済学のための実践的データ分析 4.SQL ことはじめ
経済学のための実践的データ分析 4.SQL ことはじめYasushi Hara
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06Mikiya Okuno
 
20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)Takahiro Iwase
 
20110708 dist_study okuyama
20110708 dist_study okuyama20110708 dist_study okuyama
20110708 dist_study okuyamaTakahiro Iwase
 
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスAzure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスMicrosoft
 
Snowflake Architecture and Performance
Snowflake Architecture and PerformanceSnowflake Architecture and Performance
Snowflake Architecture and PerformanceMineaki Motohashi
 
Seas で語られたこととは?
Seas で語られたこととは?Seas で語られたこととは?
Seas で語られたこととは?Masayuki Ozawa
 
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)Insight Technology, Inc.
 
Cloud os techday_0614
Cloud os techday_0614Cloud os techday_0614
Cloud os techday_0614Takano Masaru
 
Mongo dbを知ろう devlove関西
Mongo dbを知ろう   devlove関西Mongo dbを知ろう   devlove関西
Mongo dbを知ろう devlove関西Ryuji Tamagawa
 
自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみようMasahiko Hashimoto
 
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC EnterpriseYusukeKuramata
 
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawaInsight Technology, Inc.
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介Midori Oge
 

Ähnlich wie COD2012 T2/T3 : 実機で試す SQL Server の現状取得 (20)

20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会20110517 okuyama ソーシャルメディアが育てた技術勉強会
20110517 okuyama ソーシャルメディアが育てた技術勉強会
 
gumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについて
gumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについてgumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについて
gumiStudy#1 キーバリューストアのご紹介と利用時の設計モデルについて
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
 
経済学のための実践的データ分析 4.SQL ことはじめ
経済学のための実践的データ分析 4.SQL ことはじめ経済学のための実践的データ分析 4.SQL ことはじめ
経済学のための実践的データ分析 4.SQL ことはじめ
 
TogoRecipes 120907
TogoRecipes 120907TogoRecipes 120907
TogoRecipes 120907
 
Flume
FlumeFlume
Flume
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
 
20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)20120913 nosql@hikarie(okuyama fuse)
20120913 nosql@hikarie(okuyama fuse)
 
20110708 dist_study okuyama
20110708 dist_study okuyama20110708 dist_study okuyama
20110708 dist_study okuyama
 
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスAzure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL Poolベストプラクティス
 
Snowflake Architecture and Performance
Snowflake Architecture and PerformanceSnowflake Architecture and Performance
Snowflake Architecture and Performance
 
Seas で語られたこととは?
Seas で語られたこととは?Seas で語られたこととは?
Seas で語られたこととは?
 
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
[INSIGHT OUT 2011] B27 SQL Anywhereの先進のセルフヒーリング技術について(glenn paulley)
 
Cloud os techday_0614
Cloud os techday_0614Cloud os techday_0614
Cloud os techday_0614
 
Mongo dbを知ろう devlove関西
Mongo dbを知ろう   devlove関西Mongo dbを知ろう   devlove関西
Mongo dbを知ろう devlove関西
 
自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう
 
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
 
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
 

Mehr von Masayuki Ozawa

db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!Masayuki Ozawa
 
Sql database managed instance overview and internals
Sql database managed instance overview and internalsSql database managed instance overview and internals
Sql database managed instance overview and internalsMasayuki Ozawa
 
Power apps formula cheat sheet
Power apps formula cheat sheetPower apps formula cheat sheet
Power apps formula cheat sheetMasayuki Ozawa
 
K8s install (single cluster)
K8s install (single cluster)K8s install (single cluster)
K8s install (single cluster)Masayuki Ozawa
 
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tipsde:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux TipsMasayuki Ozawa
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシートMasayuki Ozawa
 
Pacemaker 操作方法メモ
Pacemaker 操作方法メモPacemaker 操作方法メモ
Pacemaker 操作方法メモMasayuki Ozawa
 
Windows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデートWindows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデートMasayuki Ozawa
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Masayuki Ozawa
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Masayuki Ozawa
 
Sql server 2016 always on 可用性グループ new features
Sql server 2016 always on 可用性グループ new featuresSql server 2016 always on 可用性グループ new features
Sql server 2016 always on 可用性グループ new featuresMasayuki Ozawa
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供Masayuki Ozawa
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Masayuki Ozawa
 
SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料Masayuki Ozawa
 
SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料Masayuki Ozawa
 
Sql server 構築 運用 tips
Sql server 構築 運用 tipsSql server 構築 運用 tips
Sql server 構築 運用 tipsMasayuki Ozawa
 
Always on 可用性グループ 構築時のポイント
Always on 可用性グループ 構築時のポイントAlways on 可用性グループ 構築時のポイント
Always on 可用性グループ 構築時のポイントMasayuki Ozawa
 
和牛をおいしく食べるには
和牛をおいしく食べるには和牛をおいしく食べるには
和牛をおいしく食べるにはMasayuki Ozawa
 

Mehr von Masayuki Ozawa (18)

db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
 
Sql database managed instance overview and internals
Sql database managed instance overview and internalsSql database managed instance overview and internals
Sql database managed instance overview and internals
 
Power apps formula cheat sheet
Power apps formula cheat sheetPower apps formula cheat sheet
Power apps formula cheat sheet
 
K8s install (single cluster)
K8s install (single cluster)K8s install (single cluster)
K8s install (single cluster)
 
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tipsde:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシート
 
Pacemaker 操作方法メモ
Pacemaker 操作方法メモPacemaker 操作方法メモ
Pacemaker 操作方法メモ
 
Windows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデートWindows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデート
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
 
Sql server 2016 always on 可用性グループ new features
Sql server 2016 always on 可用性グループ new featuresSql server 2016 always on 可用性グループ new features
Sql server 2016 always on 可用性グループ new features
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能
 
SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料
 
SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料
 
Sql server 構築 運用 tips
Sql server 構築 運用 tipsSql server 構築 運用 tips
Sql server 構築 運用 tips
 
Always on 可用性グループ 構築時のポイント
Always on 可用性グループ 構築時のポイントAlways on 可用性グループ 構築時のポイント
Always on 可用性グループ 構築時のポイント
 
和牛をおいしく食べるには
和牛をおいしく食べるには和牛をおいしく食べるには
和牛をおいしく食べるには
 

COD2012 T2/T3 : 実機で試す SQL Server の現状取得

  • 1. 実機で試す SQL Server の現状取得 SQLTO 小澤 真之 (@Masayuki_Ozawa) http://engineermemo.wordpress.com
  • 2. 自己紹介 • SQLTO という SQL Server のコミュニティの運営スタッフをしています。 – 2012/8/4 (土) に次回の勉強会を予定しています。 • SE の雑記というブログ で (http://engineermemo.wordpress.com)で SQL Server を 中心とした Microsoft 製品の検証結果を誤字脱字を交えながら、つらつらと投稿しています ので興味のある方がいらっしゃいましたらご覧いただけると幸いです • SNS のアカウント – Twitter : @Masayuki_Ozawa – Facebook :masayuki.ozawa • なぜスピーカー名が“ムッシュ 小澤”になっているか気になった方がいらっしゃいましたらこちらを参照ください (気づいたらこのスピーカー名になっていたのですが面白そうだからそのままにしました) 名付け親 スピーカー名を 提出の容疑者 – http://togetter.com/li/169645 – プライバシー保護のため画像を一部モザイク化してお送りしています。 2012/6/9 Community Open Day 2012 2
  • 3. 本日のハンズオン • 配布物の確認 – ハンズオンマニュアル (1 部) があるかをご確認ください • 本日は 3 種類のハンズオンを用意しています。 – ハンズオン 3 は時間が余った方向けのオプションとして用意しました – ハンズオン 1 / 2 を今回のセッションの範囲としています • 本ハンズオンは SQL Server のメモリの使用状況やインデックスの利用状況の 取得についての足掛かりとなる情報を取得するためのセッションとなっています。 取得した情報を基にしたパフォーマンスチューニングには触れていませんのでご了 承ください。 2012/6/9 Community Open Day 2012 3
  • 4. 本日の Agenda ハンズオンの内容について (10 分) ハンズオン 1 : メモリ情報の取得 (15 分) ハンズオン 2 : インデックス使用状況の確認 (15 分) まとめ / 質疑応答 (10 分) 2012/6/9 Community Open Day 2012 4
  • 6. ハンズオン 1 • ハンズオンの内容 – データを SELECT / INSERT / UPDATE するとディスクからメモリ (データキャッシュ) にデータがロキャッシュされます。 また、これらのデータを取得するためのクエリを実行するとそのクエリを実行するために必 要となる実行プランがメモリ (プランキャッシュ) にキャッシュされます。 – 本ハンズオンではこれらのキャッシュでどの程度のサイズのメモリが使用されているかを確 認します。 • 使用するツール – SQL Server Management Studio – パフォーマンスモニタ 2012/6/9 Community Open Day 2012 6
  • 7. 参考) ざっくりとした SQL Server のメモリ管理 Database Cache (Buffer Cache) ハンズオンで 確認 Plan Cache (Query Cache) バッファプール Log Cache Buffer Manager / Memory Manager が管理 = Min / Max Server Lock Memory Memory の設定 Granted Workspace Memory Connection Memory MemToLeave (MemToReserve) 非バッファプール Buffer Manager / Worker Thread Stack Memory Manager の 管理外 SQL Server フットプリント 2012/6/9 Community Open Day 2012 7
  • 8. ハンズオン 2 • ハンズオンの内容 – データを効率よく検索するためのインデックス。 インデックスの操作には全件を読む Scan と対象のデータをポイントで読む Seek の 2 種類の代表的な操作があります。 – 本ハンズオンでは設定されているインデックスで Seek / Scan が行われている回数を 確認します。 • 使用するツール – SQL Server Management Studio 2012/6/9 Community Open Day 2012 8
  • 9. 参考) Scan 操作と Seek 操作 Scan 操作 Seek 操作 ルート ルート ノード ノード 中間 中間 中間 中間 ノード ノード ノード ノード リーフ リーフ リーフ リーフ リーフ リーフ ノード ノード ノード ノード ノード ノード 取得対象のデータの場所が特定できないため 取得対象のデータの場所が特定できるため リーフノードのページをすべて確認する 対象のリーフノードのページを取得する 実行コストが高い 実行コストが低い 2012/6/9 Community Open Day 2012 9
  • 10. ハンズオン開始 • それでは、お手元のハンズオンマニュアルを参照して演習を実施してください – 開始して、しばらくしたら一度進捗を確認させていただきます • 内容に不明な点が遠慮なくありましたらお声掛けください 2012/6/9 Community Open Day 2012 10
  • 11. まとめ / 質疑応答 2012/6/9 Community Open Day 2012 11
  • 12. ハンズオン 1 (1/2) パフォーマンスモニターでは取得が出来ない詳細なメモリの情報 (データベース別 / クエ リの種類別) に関しては動的管理ビュー (DMV) を使用して取得することができます。 SQL Server のメモリの使用状況を確認する場合、 – SQL Server でメモリを ~ MB 使用している という状態を確認するのではなく – SQL Server のデータのキャッシュで ~ MB メモリを使用している – SQL Server のクエリのキャッシュで ~ MB メモリを使用している – データのキャッシュの中で ~ データベースが ~ MB メモリを使用している – クエリのキャッシュではストアドプロシージャが ~ MB / アドホッククエリが ~ MB / プリ ペアードクエリが ~ MB メモリを使用している という情報が重要になってきます。 2012/6/9 Community Open Day 2012 12
  • 13. ハンズオン 1 (2/2) • パフォーマンスモニターのデータはログに取得することができます。このログは CSV 形式でエクスポートすることが可能ですので以下のようなグラフを作成することが できます。 – SQL Server 2008 以降の Enterprise Edition を使用している場合はデータコレ クションの機能を使用することでパフォーマンスのログを取得することができます。 空きメモリ プランャキャッシュ データキャッシュ 2012/6/9 Community Open Day 2012 13
  • 14. 参考)データコレクション 2012/6/9 Community Open Day 2012 14
  • 15. ハンズオン 2 (1/2) • データの件数が多いテーブル (クラスター化インデックス) に非クラスター化インデッ クスを設定することで検索の効率が向上しますが、更新の頻度が多いテーブル だった場合には、更新される対象が多くなり更新のコストが上がる可能性があり ます。 – 更新頻度の高いテーブルの判断 – 更新頻度の高いテーブルに不要なインデックスを設定 – 必要なインデックスが不足している • という判断の取り掛かりとなる情報を取得することが可能となります。 2012/6/9 Community Open Day 2012 15
  • 16. ハンズオン 2 (2/2) • 動的管理ビューからデータを取得するのではなく、設定されているインデックスを ベースにして動的管理ビューのデータを取り出すのがポイント – 今回使用した動的管理ビューには 使用されたインデックス の情報が記録されているた め、度的管理ビューだけでは 一度も使用されていないインデックスの情報 を取得する ことができません。 • 再起動前にデータを取得するのが重要 – 今回使用した動的管理ビューのデータは SQL Server を最後に起動してからの累計 値となっています。 – SQL Server のサービスを再起動すると初期化されてしまうため、活きたデータを取得 するためには再起動前に取得する必要があります。 2012/6/9 Community Open Day 2012 16
  • 17. 皆様ハンズオンお疲れ様でした。 引き続き Community Open Day 2012 を お楽しみください!! 2012/6/9 Community Open Day 2012 17