Reliability
In addition to its extensive memory and application protection features,
NTFS is a reliable file system. When storing data to disk, NTFS records file I/O
events to a special transaction log. If the system crashes or encounters an
interruption, NT can use this log to restore the volume and prevent corruption
from an abnormal program termination or system shutdown. NTFS doesn't commit an
action to disk until it verifies the successful completion of the action. This
precaution helps prevent corruption of an NTFS volume and makes NTFS especially
solid for data storage on standalone systems and network file servers.
NTFS also supports hot-fixing disk sectors, where the OS automatically
blocks out bad disk sectors and relocates data from these sectors. This
housecleaning happens in the background. An application attempting to read or
write data on a hot-fixed area will never know the disk had a problem.
Performance
NTFS is also built for speed. NTFS provides impressive disk I/O performance
on large volumes such as those on file servers or advanced workstations and is
the best file system for such machines. This performance gain applies only to
volumes larger than 400MB because of NTFS's overhead from its security and
reliability features.
NTFS uses a binary tree structure for all disk directories, which reduces
the number of times the system has to access the disk to locate files. This
system is best for large directories, and NT easily outperforms FAT in these
situations. In addition, NTFS automatically sorts files in a folder on the fly.
Another performance-related feature is NTFS's resistance to file
fragmentation. NTFS uses a special process of writing files to disk. This
process minimizes file fragmentation by making intelligent choices about where
to store file data on the disk. In contrast to FAT's first-available method,
NTFS's method of writing files reduces, but does not eliminate, the problem of
file fragmentation on NTFS volumes.
NT also gains an edge over FAT by using relatively small disk allocation
units (cluster sizes) for NTFS volumes. Smaller clusters prevent wasted disk
space on volumes, especially those with numerous small files. Table 2 lists the
default cluster sizes for various NTFS volumes sizes.
As Table 2 shows, the largest NTFS cluster size is 4KB, even on volumes
larger than 2GB. Because NTFS uses small clusters better and has a more
efficient design, its performance doesn't degrade with large volumes, in
contrast to FAT's.
When you format an NT volume, NT chooses a cluster size to fit the volume
size. With NTFS, you can select the cluster size for the volume when you use the
FORMAT command from the NT command prompt (this solution is not possible from
Disk Administrator). To set the cluster size, use the /A switch with the FORMAT
command as follows: FORMAT <drive>/FS:<filesystem /A: <unitsize>
Despite the flexibility this feature provides, you generally won't need to
specify manual NTFS cluster sizes. NT can automatically configure them for you.
NT works best with volumes at the settings it specifies, and changing these
settings can adversely affect your system's performance.
File and Folder Compression
Another important NTFS feature, which was new with NT 3.51, is the ability
to selectively compress individual files and folders on a disk. You can also
compress an entire NTFS volume by compressing the volume's root folder. With NT
3.5x, you compress files and folders through File Manager. In NT 4.0, you select
a file's or folder's Properties dialog by right-clicking the file or folder and
choosing Properties. You can also compress a file or folder with the
command-line utility compact.exe.
No one file system is perfect for all situations. To choose a file system
for a given volume, you have to consider how you will use the volume and what
the security needs will be for information on the volume. Will the volume
require NTFS's file-level security? Do you need to access the volume under DOS
or OS/2? With the information in this article, the information in the sidebar, "Choosing
an NT File System,"
can help you answer these and other questions.
--Jay Benson,<br><br>
<i>Jay, thank you for pointing out an area that needs clarification. The reason why the first value is 4KB is that up to 16MB, the value is for a 12-bit FAT; for more than 16MB, the FAT is 16-bit. The source for this information is NT 3.51 MS Knowledge Base article Q140365.<br>
--Sean Daily</i>
Jay Benson August 12, 1999