SQL Serverエラーは30日、9日目のデータベースのファイル収縮は性能に影響しないと語った。


誤認認⼹9:データベースファイルの収縮は性能に影響しません。
エラー
        収縮データベースファイルが唯一性能に影響しない場合は、ファイルの末尾に空きスペースがある場合、収縮ファイルはTruncateOnlyオプションを指定します。
    ファイルを収縮する過程は性能に非常に影響します。この過程は大量のデータを移動して、IOを大量に発生させます。この過程はログに記録され、ログが暴騰することになります。
    収縮の過程で性能に影響を与えるだけでなく、ファイルが収縮した後も同様にエネルギーに影響を与え、収縮によって発生した大量のログは事務ログによって転送され、鏡像、複製は繰り返し実行される。スペースが足りない場合、ファイルは0を初期化して性能に影響を与えます。
    これは最悪とは言えません。最悪の結果、ファイルの収縮によってインデックスの破片が大量に発生し、scan操作にとってこの破片は性能に影響を与えます。
    残念なことに、データベースを収縮するコードは私が書いたものではありません。(もし私が書いたら、最初からこのような仕組みは許されません。)ですから、私達が唯一できるのはこのような操作を受け入れることです。
    データベースファイルの代わりに収縮する方法を見つけたいなら、このブログを見てください。Why You shuld not shrink your data files、または最初からファイルに対して計画を立ててください。これもあります。Importance of data file size management.
    この点を覚えてください。
  •     データファイルの収縮は邪悪です。
  •     データベースをより邪悪に縮小
  •     自動収縮はまったくの悪行です。
        簡単に収縮にNOを言えば、私たちはいつまでもその悩みから離れられます。