トップ回答者
SQL Serverのデフラグについて

質問
-
SQL Server機のデフラグについて。
SQL Serverの導入に当たり、他社製のデフラグツール(Diskeeperなど)について調べていたのですが、そもそもSQL Serverはスケジューリングされたデフラグを実行しても良いものなのでしょうか? デフラグツールメーカのサイトを確認する限り、断片化を解消することで早くなるというような最もな説明はあるのですが、実運用時にインデックスの再構築や再編成、バックアップなどが実施されている場合に、OS側のデフラグツールが実行されても大丈夫なものなのかどうか少し不安になりました。
お分かりになりましたら、よろしくお願いします。
回答
-
データベースのデーターページのフラグメントの解消に、一般的なディスクデフラグツールは利用できませんよ。diskeeper でもデフラグ対象ではないことも明記されています。diskeeper はデフラグ以外にディスク I/O パフォーマンスの向上機能をもっていて、その結果としてデーターページのデフラグにかかる時間を減らせることは売りにしていますが、その機能を持つわけではないです。
レコードの追加削除で発生するSQL Serverのデータページのフラグメントと、ディスク上のフラグメントは全く別物なので、それぞれ別に対応を考える必要があると思います。
- 回答としてマーク lixy 2012年7月31日 0:45
すべての返信
-
ご回答、ありがとうございます。
データベースを破壊するデフラグツールですか。。 何のためのツールなのかわからなくなってしまいますね。
今回、実際にデフラグツールを導入することになった場合には、トライアル版での仮インストール、及び検証をした上での実運用となる予定です。takaoka様、ご返信内の「デフラグなしにフラグメント0%を維持できるように設計」というのは、FillFactorを使用して最初からページの余裕を持たしておくということでしょうか? それとも何か別の方法で断片化が発生しないようにすることができるのでしょうか。。
今回当方で検討中のデータベースではレコードの「追記」、「削除」が頻繁に行われる為、断片化は避けられないものだと考えていたのですが、フラグメントを軽減できる方法があるなら試してみたいと思います。
よろしくお願いします
-
データベースのデーターページのフラグメントの解消に、一般的なディスクデフラグツールは利用できませんよ。diskeeper でもデフラグ対象ではないことも明記されています。diskeeper はデフラグ以外にディスク I/O パフォーマンスの向上機能をもっていて、その結果としてデーターページのデフラグにかかる時間を減らせることは売りにしていますが、その機能を持つわけではないです。
レコードの追加削除で発生するSQL Serverのデータページのフラグメントと、ディスク上のフラグメントは全く別物なので、それぞれ別に対応を考える必要があると思います。
- 回答としてマーク lixy 2012年7月31日 0:45