When you install a Windows OS (e.g., Windows .NET Server—Win.NET Server—2003, Windows 2000, or Windows NT 4.0), you can choose between two types of logical disks: basic and dynamic. The type you select has huge implications for your Windows server and the software that runs on it. Let's look at these two types of logical disks and why you need to understand the differences between them.
Before Win2K, Windows OSs used only basic disks, which date back to Windows 9x and have a fairly respectable past. Microsoft designed the basic disk to support future Windows products. In essence, a basic disk contains basic volumes, such as primary partitions, extended partitions, and logical drives. When you use basic disks, you're limited to creating four primary partitions per disk or three primary partitions and one extended partition with unlimited logical drives. Although these limitations are real, they aren't as severe as you might think. Basic and dynamic disks differ in the number of partitions (on basic disks) and volumes (on dynamic disks) that each can contain. Basic disks also use the partition tables (stored in the Master Boot Record—MBR—at the beginning of the disk) that Windows XP, Win2K, NT 4.0, Windows Me, Win9x, and MS-DOS support. To make matters more confusing, basic disk volumes also include support for multidisk volumes—such as volume sets, stripe sets, mirror sets, and stripe sets with parity—created in NT 4.0 or earlier. (XP doesn't support these multidisk basic volumes but Win2K does.)
As a Win2K and NT 4.0 administrator, you've used basic disks and probably have had occasion to "get fancy" by using volume sets, mirror sets, or stripe sets. However, you might have noticed some limitations with basic disks, such as having to reboot the system after you make changes to an NT 4.0 disk configuration.
The limitations of basic disks and other inconveniences drove the creation of a new type of disk definition for Windows systems—the dynamic disk. XP Professional Edition and Win2K support dynamic disk storage. When you initialize a physical disk as dynamic, it's called a dynamic disk and contains dynamic volumes, such as simple volumes, spanned volumes, striped volumes, mirrored volumes, and RAID 5 volumes. Dynamic disk storage is divided into volumes instead of partitions. Dynamic storage lets you manage disks and volumes without restarting Windows.
Differentiating storage types (i.e., basic and dynamic disks) from file-system types (i.e., FAT, FAT16, FAT32, and NTFS) and from partitions and volumes is important. Storage types are different from file-system types. On a basic disk, a partition is a portion of the disk that functions as a physically separate unit. A physical disk unit can contain any combination of storage types. However, all volumes on the same disk must use the same storage type. A volume is a storage unit derived from free space on one or more dynamic disks. You can format both partitions and volumes with a file system (such as NTFS) and assign a drive letter. Volumes also have different layouts (e.g., simple volumes, spanned volumes, striped volumes) and characteristics, as Table 1, page 28, shows. Basic disks used to provide different layout types (e.g., spanned, mirrored, RAID 5) with partitions. However, XP Pro, Win2K, and Win.NET Server provide these layouts in dynamic disk volumes. Unfortunately, laptop computers and XP Home Editionbased computers don't support dynamic disks. Other dynamic disk limitations include lack of support for removable storage devices (i.e., IEEE 1394 FireWire and USB-attached disks) and an irritation when using Windows Cluster Service (as I discuss later).
Dynamic disks introduce the concept of disk groups. VERITAS Software has performed a lot of storage-management work for Microsoft, and VERITAS's Logical Disk Manager (LDM) Pro for Windows heavily uses disk groups. Disk groups (collections of disks organized as entities) help administrators prevent data loss by organizing dynamic disks. All dynamic disks within a disk group store configuration data for the entire group (this data is stored in a 1MB region at the end of each dynamic disk). All configuration information for simple, spanned, mirrored, striped, or RAID 5 volumes within a disk group is stored on each disk in the group. This "database" of configuration information is replicated and kept up-to-date across all dynamic disks in the group. If you lose a dynamic disk or you move the disk group to another system, the OS maintains the configuration information for the disk group. Win2K systems allow only one disk group (Disk Group 0—DG0) per computer (unless you use LDM Pro). Microsoft will probably extend this disk-group functionality in future Windows releases.
Selecting a Storage Type
As a Windows administrator, you might think this information is too confusing and find it difficult to decide whether to use basic or dynamic disks. The following information might help.
First, if you're struggling with what to do about disk fault tolerance and you want to use mirrored (RAID 1) or RAID 5 volumes on a dynamic disk, stop. You don't have to sweat this decision. You should never use the OS (whether or not it's Windows) or software to provide disk fault tolerance, which is much better suited to the capabilities of hardware-storage subsystems. Vendors of these products (e.g., EMC, Hewlett-Packard—HP—IBM) spend a huge amount of R&D dollars figuring out ways to make disk fault tolerance better, faster, and more robust. In contrast, in Windows, disk fault tolerance consists of a simple check box option that Microsoft developed with a minimal investment of time and money. Why ask your OS to manage disk-fault-tolerance overhead? Those precious processor and memory resources the OS and software-based solutions use for that overhead could be better used by real applications. When it comes to disk fault tolerance, support your local hardware-storage vendor.
If Windows Cluster Service is on your radar screen, you don't have much of a choice between dynamic and basic disks. Because of the way Windows Cluster Service manages resources and handles failover, it can't accommodate dynamic disk layout types. Because Windows Cluster Service doesn't support dynamic disks, it doesn't even recognize them. Therefore, if you've configured dynamic disks, you won't be able to set up Windows Cluster Service unless you have at least one basic disk available as a shared cluster disk (i.e., available on a shared storage medium such as a Storage Area Network—SAN—or SCSI bus). If you set up your cluster with basic disks, the option to upgrade cluster disks to dynamic disks—by right-clicking the disk device in the Disk Administrator (in NT 4.0) or the Microsoft Management Console (MMC) Disk Management snap-in (in Win2K)—isn't even available when Windows Cluster Service manages the basic disks. For Windows Cluster Service, the choice is clear: Basic disks are your best (and only) option.
From a Windows storage-administration perspective, dynamic-disk management offers more options and better flexibility. In Win2K and later, only dynamic disks let you span or add fault tolerance. Only dynamic disks let you make disk-configuration changes without rebooting the system (most of the time). Dynamic disks are the only option that supports disk groups; if you're using products such as LDM Pro, this fact might be a key consideration. Barring the use of clusters or backward-compatibility for other OSs or applications, dynamic disks are the best choice for Windows administrators.
If you deploy increasingly complex systems and applications, you must make the choice between basic and dynamic disk with a thorough understanding of the options and caveats associated with each. The worst thing you can do is decide that you want to change your Windows storage type after your server is already in production.