MFT
読み:エムエフティー
外語:MFT: Master File Table

 NTFSにおけるファイルの管理領域のこと。
目次

概要
 旧来のファイルシステムであるFATでは、ファイル名や属性情報はディレクトリエントリに、クラスターのリンク情報はFATにと、分割して保存されていた。
 これに対してNTFSでは、これらを一つの領域で一括管理する。

特徴

技術
 ボリュームをNTFSでフォーマットすると、MFT用の領域としてボリューム全体の12.5%の領域が確保される。
 MFTは、ファイルまたはディレクトリ(フォルダー)ごとに一つ以上のレコードが割り当てられる。レコードサイズは固定長で、通常は1Kiバイトである。
 レコード内には、ファイル名、タイムスタンプ(日時)、アクセス権などのファイル属性が格納される。
 なお、ファイルとディレクトリ(フォルダー)は、属性によってのみ判断され、NTFSにおいては両者は区別せず扱われる。

MFTとファイルのリンク
 更に、MFTのレコード領域の余った部分には、実際のファイルのデータ(ファイル属性にもよるが、約750バイト迄)を格納できる。つまり、小さなファイルは一度のアクセスで読み取れるため高速である。
 MFTに収まらない大型のファイルは、外部のクラスターにデータを書き込み、そのクラスターのインデックス情報をMFTレコード内に記録する。

小型ファイル管理
 そもそも、小さなファイルというのは意外に多いものである。小さなディレクトリ、インターネットショートカットやファイルへのショートカットCookieなど、その種類は多岐にわたる。
 そして、こういった小さなファイルが出来たり消えたりすることでクラスターは虫食い状態となり、断片化の原因となる。
 NTFSが採用するMFTは、そういった小さなファイルも管理領域の空き部分に入れてしまうことで無駄に外部のクラスター消費を防ぎ、フラグメントの発生をある程度予防している。

MFTの伸長
 ボリューム内にあまりにもファイルの数が多い場合は、最初に割り当てられた領域では不足することもありうる。この場合は、MFTは32レコード単位のサイズを外部のクラスターに拡張する。
 こうしてMFTが拡張された場合、ほぼ確実にMFT自体がフラグメントを起こすことになるため、ファイル入出力性能に大きな影響を与えることになる。

再検索