Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint

In the discussion that follows, we'll lump both types of storage into one acronym-- SAN--and you should keep that in mind as you read. The primary difference is whether you access your storage as files or as blocks. A SAN permits a server to access a very large number of hard drives--often 50 or more--and typically has large, intelligent caches to buffer writes. The block-level in- terface appears to the server as logical unit numbers (LUNs), or virtual volumes (unless you're using NFS). Many SANs also allow multiple nodes to be "clustered" to get better performance or to increase storage capacity. The current generation of SANs are different from those available a few years ago. Many new SANs have hybrid flash and hard drive storage, not just hard drives. They often have flash caches as large as a terabyte or more, unlike older SANs, which had relatively small caches. Also, the older SANs couldn't help "enlarge the buffer pool" with a larger cache tier, as new SANs can sometimes do. The newer SANs can thus provide better performance than older ones in some types of comparisons. SAN Benchmarks We have benchmarked a variety of products from many SAN vendors. Table 9-3 shows a selection of typical results at low concurrency. Table 9-3. Synchronous single-threaded 16 KB operations per second on a 4 GB file Device SAN1 with RAID 5 SAN1 with RAID 10 SAN2 over NFS 10k RPM hard drives, RAID 1 Intel SSD Sequential write 2428 1765 1768 7027 3045 Sequential read 5794 3427 3154 4773 6266 Random write 629 1725 2056 2302 2427 Random read 258 213 166 310 4397 The exact SAN vendors and configurations shall remain a secret, although we can reveal that these are not low-budget SANs. We ran these benchmarks with synchronous 16 KB operations, which emulates the way that InnoDB operates when configured in O_DIRECT mode. What conclusions can we draw from Table 9-3? The systems we tested aren't all directly comparable, so it's not a good idea to pore over the finer points. However, the results are a good illustration of the general performance you can expect from these types of devices. SANs are able to absorb lots of sequential writes because they can buffer and combine them. They can serve sequential reads without trouble, because they can pre- dict the reads, prefetch them, and serve them from the cache. They slow down a bit on random writes because the writes can't be combined as much. And they are quite poor at random reads, because the reads are usually cache misses, so they must wait for the hard drives to respond. On top of that, there is transport latency between the server Storage Area Networks and Network-Attached Storage | 423