Databases Reference
In-Depth Information
As with CPUs, more disks is not always better. Some applications that demand low
latency need faster drives, not more drives. For example, replication usually performs
better with faster drives, because updates on a replica are single-threaded.
Solid-State Storage
Solid-state (flash) storage is actually a 30-year-old technology, but it's become a hot
new thing as a new generation of devices have evolved over the last few years. Solid-
state storage has now become sufficiently cheap and mature that it is in widespread
use, and it will probably replace traditional hard drives for many purposes in the near
future.
Solid-state storage devices use nonvolatile flash memory chips composed of cells, in-
stead of magnetic platters. They're also called NVRAM, or nonvolatile random access
memory . They have no moving parts, which makes them behave very differently from
hard drives. We will explore the differences in detail.
The current technologies of interest to MySQL users can be divided into two major
categories: SSDs (solid-state drives) and PCIe cards. SSDs emulate standard hard drives
by implementing the SATA (Serial Advanced Technology Attachment) interface, so
they are drop-in replacements for the hard drive that's in your server now and can fit
into the existing slots in the chassis. PCIe cards use special operating system drivers
that present the storage as a block device. PCIe and SSD devices are sometimes casually
referred to as simply SSDs.
Here's a quick summary of flash performance. High-quality flash devices have:
• Much better random read and write performance compared to hard drives. Flash
devices are usually slightly better at reads than writes.
• Better sequential read and write performance than hard drives. However, it's not
as dramatic an improvement as that of random I/O, because hard drives are much
slower at random I/O than they are at sequential I/O. Entry-level SSDs can actually
be slower than conventional drives here.
• Much better support for concurrency than hard drives. Flash devices can support
many more concurrent operations, and in fact, they don't really achieve their top
throughput until you have lots of concurrency.
The most important things are the improvements in random I/O and concurrency.
Flash memory gives you very good random I/O performance at high concurrency,
which is exactly what properly normalized databases need. One of the most common
reasons for denormalizing a schema is to avoid random I/O and make it possible for
sequential I/O to serve the queries.
As a result, we believe that solid-state storage is going to change RDBMS technology
fundamentally in the future. The current generation of RDBMS technology has
 
Search WWH ::




Custom Search