web-dev-qa-db-ja.com

NTFSで2MBのアロケーションユニットサイズを使用するのは悪い考えですか?

これは、仮想マシンイメージのみを備えたサイズ200GBのドライブ用です。追加のファイルには、いくつかのxmlファイルが含まれる場合があります。画像自体のサイズは5GBから40GBの範囲です。

2MBは良いアイデアですか、それともひどいアイデアですか?ロジックでは、ユニットが大きいほど追跡するユニットが少なくなると指示されていますが、注意すべきパフォーマンスへの影響はありますか?

特に、小さいAUSを使用すると断片化するため、VM内のパフォーマンスが低下することに言及しています。 AUSが大きいほど、シーク時間が短くなり、パフォーマンスがわずかに向上することを期待していました。

私はWin10を使用しており、2Mが利用可能な最大のAUSオプションです。

この質問がすでに存在する場合は申し訳ありません。64Kを超えるユニットの話はあまり見つかりませんでした。メガバイト単位であるため、続行する前に確認する必要がありました。

1
RiA

クラスタサイズが大きいということは、$Cluster MFT内のファイルは小さく、ボリューム全体でデータを追跡するために必要なインデックスが少なくて済みます。

これはディスク容量の増加につながりますが、これはもはや90年代半ばではないため、おそらくそれだけの価値はありません。少なくとも200GBドライブの場合はそうではありません。

パフォーマンスに関しては、データが順次アクセスされる傾向がある場合(ビデオ/音楽の再生など)、またはクラスターのサイズ程度のチャンクで、わずかに改善されるか、少なくとも影響を受けない場合があります。

これはVMには当てはまらない場合があります。 vmdksも2Mのクラスターサイズでなく、ディスククラスターと整列していない場合、1つの4096バイトまたは512バイトのときにNTFSに2Mのデータをロードするように要求しているため、ランダムアクセスは大きなクラスターサイズによって損なわれる可能性があると思います。そのセクターのブロックが必要になる場合があります。

新しい「4K」フォーマットのハードドライブでも同様の状況にあります。内部では4096バイトのチャンクで読み取り/書き込みが可能ですが、OSは512バイトのチャンクを要求できます。データが4096バイトにアラインされていない場合、多くのリクエストで二重に読み取られます。 OSは現在データを調整しているので、おそらく考える必要はありませんが、上記のVMの状況とクラスターサイズの変更により、同様の問題が発生する可能性があると言っています。

1
LawrenceC