2010/10/24

DB:: SQLServerのメモリ・チューニング

タスク・マネージャからメモリ使用量を確認していたところ、SQLServerのメモリが1GB以上に・・・

どういうこと?と思い、調べてわかったことをメモ。
  1. まずはSQLServerというRDBSを知る
    @ITにSQL Serverというブラックボックスを開いてみるという記事がありました。
    一読して、SQLServerについて知りましょう。
  2. 使用メモリが膨大に消費される訳
    SQLServerの使用メモリが膨大に消費される訳は、データバッファキャッシュ※として利用されているからだそうです。
    ※データバッファキャッシュは、実行したSQLステートメントで扱うデータ量によって消費するメモリ容量が変動します。
    一度確保されたデータバッファキャッシュは、メモリ領域が解放されずSQL Serverが確保したままとなるようです。
    再起動やサービスを停止した時に、使用メモリが一気に下がるのは↑の分が解放されたためです。
    この辺について、詳しくかかれた記事がありました。
  3. SQLServerメモリのチューニング
    SQLServerのメモリ使用量がOS全体に影響を与えるようであれば、メモリの動的設定の最大値を減少させる。

    また、32bitOSでメモリを8GBなど大容量メモリを搭載している場合は、AWEという機能を有効にすることで4GB以上のメモリ空間を使用できるようです。
    逆に、この設定をしていないとパフォーマンスがでないということになります。
    この辺は、@ITの誰も知らないメモリ・チューニングの極意を教えようという記事を読みましょう。
Webシステムや基幹系システムなどで使うDBの特性を知る機会ってあまりないので、今回はいい勉強になりました。
スポンサーリンク

スポンサーリンク