Data storage has evolved tremendously over the past few decades. From punch cards to magnetic tape, we’ve come a long way in developing faster, smaller, and more reliable ways to store and access data. Two of the most common types of data storage devices found in computers today are hard disk drives (HDDs) and solid-state drives (SSDs). But how exactly does data get written to and read from these different mediums?
What is a Hard Disk Drive (HDD)?
A hard disk drive contains one or more rigid platters coated with a magnetizable material. These platters are arranged in a stack and spun at very high speeds of typically 5,400 to 15,000 rpm. Data is written to and read from the platters using a read/write head that hovers just above the surface of the disk on an armature. There are generally multiple platters in a HDD with read/write heads on each side of each platter, allowing data to be read from or written to both sides of the platters simultaneously.
The read/write head only moves in and out radially across the disk as the platters spin. This allows the head to access data in concentric tracks etched onto the platter’s surface. Integrated circuits on the armature control the movement of the read/write head and transfer data to and from the platter. The armature and read/write head are collectively referred to as the actuator arm.
A HDD stores data magnetically, so data is physically written by polarizing tiny magnetic domains on the platter’s surface. The domains are polarized in opposite directions to represent binary 1s and 0s. As billions of these microscopic magnetic domains are created, they form recognizable patterns that the read head can detect and convert back into data.
The main components of a HDD are:
- Platters – spinning disks coated with magnetic material for data storage
- Read/write heads – head at the end of the actuator arm that reads/writes data
- Actuator arm – metal arm that moves the read/write head
- Spindle – rod that spins the platters
- Motors – electric motors to spin the platters and move the head
- Circuit board – contains electronics that control the HDD
- Firmware – software that handles Internal operations
How Data is Stored on a HDD
When a computer writes data to the HDD, the actuator arm positions the read/write head over the correct track on the platter. As the platter spins at high speed, the head polarizes tiny magnetic domains on the platter surface, encoding the binary 1s and 0s. The magnetic domains remain polarized in place even when the HDD loses power, allowing data to be permanently stored.
When the computer needs to access the stored data, the read/write head is positioned over the same track and detects the magnetic orientations of the domains as they pass under the head. The head generates a small electrical signal based on the magnetic polarity, which is decoded into 1s and 0s by the HDD electronics. This allows the original data to be reconstructed and sent to the computer.
HDDs organize data in concentric tracks that are further broken down into sectors. Tracks located closer to the edge of the platters can store more sectors than inner tracks because they have a greater circumference. The HDD controller coordinates reads and writes between the computer and the correct track/sector location on the platter.
What is a Solid State Drive (SSD)?
A solid state drive (SSD) uses integrated circuit assemblies and flash memory to store data, instead of magnetic platters. Flash memory stores data in an array of transistors called memory cells made from silicon wafers. Each cell has a charged or uncharged state, representing 1 bit of data.
SSDs have no moving mechanical parts – all data transfers happen electronically. This makes SSDs more shock-resistant and reliable than HDDs. SSDs are typically much faster than HDDs for reading and writing data because they can access any memory location instantly.
However, SSD storage cells can wear out from repeated read/write cycles. To compensate, SSDs spread out write operations across the memory cells using algorithms like wear leveling. Modern SSDs typically last for years even with heavy everyday use.
The components of a SSD include:
- Interface – connects the SSD to the computer, usually SATA or PCIe
- Controller – processor that manages memory, interfaces, and data requests
- NAND flash memory – stores data in arrays of memory cells
- DRAM cache – stores frequently accessed data for faster access
- Firmware – software that handles drive operations and management
How Data is Stored on a SSD
To write data to the SSD, the host computer sends data over the interface to the SSD controller. The controller writes the data sequentially to available blocks of NAND flash memory cells, charging cells to store 1s or leaving them uncharged for 0s.
The controller can write to any flash cell instantly – there is no need to spin platters or move a head. However, only empty cells can be written. Full cells must be erased before new data can be written. SSD controllers organize write operations to minimize program/erase cycles.
To read data, the host computer queries the address location of the data from the SSD controller. The controller accesses the NAND flash memory cells directly and reads their charge state, outputting the binary data over the interface to the host.
Comparing HDDs vs SSDs
HDDs and SSDs use very different physical methods to store data, leading to trade-offs in performance, cost, and ideal use cases. Some key differences include:
|Storage medium||Magnetic platters||NAND flash memory|
|Data access method||Mechanical moving parts||All-electronic|
|Read/write speed||100-200 MB/s||500+ MB/s|
|Cost per GB||Around $0.03/GB||Around $0.30/GB|
|Durability||Can fail from shocks||No moving parts, more durable|
|Ideal usage||Cheap bulk storage||Performance-critical applications|
SSDs are much faster than HDDs for sequential read/write operations because they can access data electronically rather than having to physically move a head. Typical sequential read/write speeds are:
- HDD: 100-200 MB/s read, 100-200 MB/s write
- SSD: 500+ MB/s read, 200-500 MB/s write
SSD write speeds are slower than read speeds because existing data must be erased before writing new data. However, SSDs have near-instantaneous random access speeds because memory can be directly accessed without moving parts. HDDs are much slower for random access.
HDDs currently provide a much lower cost per gigabyte compared to SSDs. High capacity HDDs are available around $0.03/GB, while SSD costs are closer to $0.30/GB. The mechanical nature of HDDs means they can offer much higher maximum capacities compared to SSDs.
However, SSD prices continue to fall rapidly. And for many uses like booting an operating system or running high-performance databases, the speed benefits of SSDs justify their higher cost.
SSDs are typically more reliable and durable than HDDs because they have no moving parts. HDDs can suffer corrupted data or mechanical failure if knocked or jostled while operating. SSD memory cells don’t move, making SSDs more shock-resistant.
However, HDD reliability has also improved greatly in recent years, with mean time between failures (MTBF) over 1 million hours. Both HDDs and SSDs typically come with years-long limited warranties from the manufacturer.
Ideal Usage Comparison
Due to their lower cost and higher capacities, HDDs are better suited for general data storage needs, like storing documents, media files, backups, and archives. The lower speed is not as critical for these use cases.
SSDs provide much faster read/write speeds necessary for intensive applications like running operating systems, databases, and games. The faster speed reduces loading times and improves overall system performance.
Here are typical use cases where HDDs or SSDs work best:
Hard Disk Drives
- External backup drives
- Network attached storage (NAS)
- Bulk data storage/archives
- Non-critical applications
Solid State Drives
- Primary internal storage
- Operating system drive
- Frequently accessed programs
- Servers and high performance computers
- Critical business applications
HDDs and SSDs take radically different approaches to storing data, leading to trade-offs in performance, cost, reliability, and ideal use cases. HDDs use mechanical platters and read/write heads to store data magnetically. This allows low cost and high capacity but slower speeds. SSDs instead use flash memory chips to store data electronically, providing faster access speeds and improved durability but at a higher cost per gigabyte.
For personal computers, using both a small SSD for the operating system and apps, along with a high capacity HDD for data storage, gives the best combination of speed and capacity. Enterprise and high performance applications typically favor all-SSD storage for maximum speed and reliability. The differences between the two technologies give consumers and businesses flexible data storage options.