![background image](http://html1.mh-extra.com/html/sandisk/membrain-software/membrain-software_user-manual_3878905010.webp)
PAGE 8
Using Containers to Manage Consolidation
Membrain supports the creation of multiple virtual storage domains called “containers”, provid-
ing fine-grained control over cached and stored resources. The container paradigm enables:
Isolation of separate applications or datasets based on usage patterns;
Policy specification and control for capacity, replacement, persistence, and availability; and
Dynamic sharing of processor, DRAM, flash, and network resources.
Containers are created and managed through the SOE administrative services, with the
container attributes being dynamically enforced by the SanDisk data fabric. A single Membrain
node hosts multiple configurable containers. The TCP/IP addresses are shared by all containers
within a Membrain node.
Each container has distinct attributes: the port through which it accepts client requests; evic-
tion policy; storage capacity; and persistence. Each container has distinct ports for accepting
Memcached requests so behaves like an independent instance of Memcached. However, since
the processors, DRAM, flash, and networking are all dynamically shared across containers, the
result is a much more balanced and efficient use of resources than with multiple traditional
Memcached instances.
One container attribute is persistence. Using legacy Memcached, volatile DRAM is used to
cache data. Membrain has introduced the ability to make cached data durable. With Persistent
Caching, the cached data is retained in the flash memory and is available even after a power
outage, allowing Membrain to instantly recover to its peak performance, avoiding performance-
degrading, multi-hour or multi-day cache warm-up periods. Another container attribute is Store
Mode. Store Mode allows client-side applications to have control over eviction of data from the
cache. Data will not be evicted without the application initiating it. See Figure 7.
Figure 7: Membrain Node with Multiple Configurable Containers
The SOE, with its advanced processor, DRAM, flash and interconnect management algorithms,
enables access to highly-available terabyte-scale flash memory at DRAM-like speeds. Persistent
Caching in conjunction with Store Mode allows Membrain to be used as a persistent object
store, enabling powerful new applications using the Memcached API and protocol.
Using Cloning to Rapidly Deploy and Warm Identical Membrain Nodes
“Cloning” is the process of copying the contents of an existing Memcached server to a new one
before putting the new one into service. It is an efficient way of warming a Memcached server
in an installation where multiple servers hold the same data. The server that is cloned from can
remain active while the cloning is in progress, with all new writes propagated to the new server.
A clone operation can also be performed as a backup followed by a restore, though it may not
be as efficient.
Container
TCP/
UDP Port
TCP/
UDP Port
TCP/
UDP Port
TCP/
UDP Port
TCP/
UDP Port
Cap:
128GB
Non-Persistent
Cache Mode
Container
Cap:
64GB
Persistent
Cache Mode
Container
Cap:
64GB
Persistent
Store Mode
Container
Cap:
64GB
Non-Persistent
Store Mode
Data:
Photos
Container
Cap:
64GB
Non-Persistent
Store Mode
Data:
Session ID
Container