none
複数のファイルグループに分けた場合のメリットについて RRS feed

  • 質問

  • MCPの模擬問題で以下のようなものがありました。

     

    DBに対して定期的なinsert,updateがある。そのDBには複数のスキーマがあり、そのスキーマのひとつには

    大量のread-onry reference dataが含まれる。

    DBの構成はバックアップパフォーマンスを最適化するようにデザインされないといけない。何をすべきか?

     

    答え、 DBを作成するのにひとつのログファイルと複数のファイルグループを利用する。

     

    http://msdn.microsoft.com/ja-jp/library/ms189563.aspx

    データファイルを複数のディスクに分けて保存してパフォーマンスをあげるのはわかるのですが、

    複数のファイルグループを作成することによってパフォーマンスを向上させたり、何かメリットがあったりするのでしょうか?

    2011年4月21日 2:49

回答

  • 私はDB管理は素人レベルですが、バックアップ パフォーマンスの問題なので、シンプルに

    • 大量の読み取り専用データを別ファイルグループにすればバックアップ対象外にできる。

    ということかな?と思います。また、nodame2010 さんはデータファイルの分割でパフォーマンスが上がると書かれていますが、データファイルの分割は回答には含まれていませんよね。
    素人的には、データファイルを分割することでバックアップ処理時に並列読み出しされてパフォーマンスが上がるかどうかは少し疑問です。データファイル分割では、運用中の複数のトランザクションに対して物理ディスクの読み出し速度や書き込み速度が分散して向上するのに対して、バックアップ処理における全体的な処理の読み出し処理を想像すると、データファイル1個と比較して影響があるほど変化するようには思えません。(RAID でスループットを向上させている場合との差がでるのではないかと想像します)

     


    • 回答としてマーク nodame2010 2011年4月25日 0:16
    2011年4月21日 6:05
  • 私が読み違いをしていました。。。バックアップパフォーマンスを最適化するんですね。
    そうであればご認識の通り、読み取り専用のファイルグループは日々のバックアップ運用とは
    別に考え、読み取り専用になって以降1回だけバックアップを取得すれば良いだめですね。
    日々のバックアップはInsert,Updateが入る部分だけで良いことになります。

    http://msdn.microsoft.com/ja-jp/library/ms175578.aspx

     

    • 回答としてマーク nodame2010 2011年4月25日 0:16
    2011年4月21日 9:03
    モデレータ

すべての返信

  • 私はDB管理は素人レベルですが、バックアップ パフォーマンスの問題なので、シンプルに

    • 大量の読み取り専用データを別ファイルグループにすればバックアップ対象外にできる。

    ということかな?と思います。また、nodame2010 さんはデータファイルの分割でパフォーマンスが上がると書かれていますが、データファイルの分割は回答には含まれていませんよね。
    素人的には、データファイルを分割することでバックアップ処理時に並列読み出しされてパフォーマンスが上がるかどうかは少し疑問です。データファイル分割では、運用中の複数のトランザクションに対して物理ディスクの読み出し速度や書き込み速度が分散して向上するのに対して、バックアップ処理における全体的な処理の読み出し処理を想像すると、データファイル1個と比較して影響があるほど変化するようには思えません。(RAID でスループットを向上させている場合との差がでるのではないかと想像します)

     


    • 回答としてマーク nodame2010 2011年4月25日 0:16
    2011年4月21日 6:05
  • オブジェクトはファイルグループ単位に配置できるので、例えばアクセスの激しいテーブルはFileGroup1に配置し、
    アクセス頻度が少ないテーブルをいくつかまとめFileGroup2に配置する、といったことができます。
    FileGroup1とFileGroup2を物理的に違うディスクに配置すればI/O負荷が分散されます。
    2011年4月21日 7:00
    モデレータ
  • ありがとうございます。^^

    読み取り専用データは1度バックアップすればその後はバックアップが不必要ということでディスクを分けるという

    事でしょうか?

     

    2011年4月21日 7:27
  • 私が読み違いをしていました。。。バックアップパフォーマンスを最適化するんですね。
    そうであればご認識の通り、読み取り専用のファイルグループは日々のバックアップ運用とは
    別に考え、読み取り専用になって以降1回だけバックアップを取得すれば良いだめですね。
    日々のバックアップはInsert,Updateが入る部分だけで良いことになります。

    http://msdn.microsoft.com/ja-jp/library/ms175578.aspx

     

    • 回答としてマーク nodame2010 2011年4月25日 0:16
    2011年4月21日 9:03
    モデレータ
  • ありがとうございました。^^
    2011年4月25日 0:16