PAGE 4
Flash and Network Management
The flash and network management layer provides highly parallel, reliable flash-access and
network-messaging facilities, optimized to exploit the full I/O capacity of the flash and
networking hardware for high performance and highly available caching services. The flash-
and network-management layer functions include:
Highly concurrent, low latency network and flash access;
RAID 5 across parallel flash devices, enabling device failure tolerance and hot swap while
minimizing capacity overhead for redundancy; and
High-performance, inter-server messaging enabling failure tolerance and live upgrade
through synchronous replication.
Administration
The administration services make Membrain easy to deploy, manage, and scale. The administra-
tion layer functions include:
Full-featured graphical user interface for easier management and monitoring of the
Membrain instances
Support for monitoring instances of stock memcached, which are often used in conjunction
with flash-optimized Membrain
Compatibility with existing tools and applications;
Hot-key monitoring providing visibility into frequently used keys and highly active clients;
Full and incremental backup and restore of cached data; and
Remote presence, predictive failure analysis, and automatic restart.
Key Capabilities
Using Flash Memory to Increase Capacity, Reduce Power, and Provide Persistence
Membrain integrates DRAM and flash to meet the throughput and scaling requirements of
Memcached and key-value store deployments at much lower cost than a DRAM-only solution,
in terms of both capital expense and power and space consumption. SanDisk’s flash-memory
subsystem also enables the following new capabilities with Memcached:
Order-of-magnitude increase in capacity per server;
Order-of-magnitude reduction in power consumption per Memcached or key-value store
operation;
The ability to persist data across shutdowns/power failures.
As shown in Figure 2, SanDisk’s highly parallel, optimized flash-memory subsystem increases
Memcached capacity by an order of magnitude over a traditional Memcached server. This is
especially significant because many Memcached installations are capacity limited. For example,
an application may require a total of 1 TB of memory to achieve a targeted hit rate. If a typical
Memcached server has 64 GB of DRAM, this application would require 16 nodes to get the
required capacity. Spreading the client workload across 16 nodes results in poor processor and
network utilization (<10%). Flash memory allows the entire working set of the application to be
hosted on a single node, enabling balanced use of processor and networking resources through
the SOE.