Using the Same Server for a Transient Cache and a Persistent Data Store
A key goal of NoSQL is to provide seamless scaling to meet your performance and capacity demands, and to do so with minimal downtime. Neither the failure of a node nor an increase or decrease in the number of nodes to adjust capacity should require a service interruption.
Membrain™ (the smart memcached, optimized for flash memory) transforms a standard x86 server with flash memory into a super-charged server optimized for memcached and a memcached-based persistent NoSQL data store. Membrain lets one x86 server do the work of many, and runs on a vast set of x86 servers (learn more about supported platforms.)
Membrain offers great vertical scalability. We solve the problems that result when your data cannot fit fully in the available DRAM. Our software fully exploits multiple cores, flash drives, and a modest amount of DRAM to get DRAM-like speeds from the full complement of flash. With enough slots for flash drives you can easily put more than three terabytes of flash memory on each commodity server — and access it like it was DRAM.
You don't need to scale up by throwing server after server at the problem. You can scale by adding processor cores and flash memory. That way, Membrain lets you handle way bigger loads with way fewer nodes.
We also let you divide this huge high-speed flash memory capacity on each server between a cache, which by definition is transient, and a truly persistent data store. Membrain lets you organize your data into containers, which can be thought of as "virtual servers" carved from one physical server. Containers are assigned to individual server nodes and may be synchronously replicated on other nodes. During access to the Schooner distributed key-value store, keys are hashed to containers via virtual IPs (VIPs). When a node fails or a container is moved to a newly-added node, the VIP is transparently switched to the replicated container without any loss of service or any loss of data.
- Active/active replication fully utilizes all nodes.
- Synchronous replication ensures that no data is lost during outages.
- Automated failover delivers continuous service availability and eliminates the need for manual, error-prone user intervention.
- Schooner Membrain is 100% memcapable and transparent to client-side apps and requires no additional overhead.
Membrain provides seamless scalability with high capacity and industry-leading performance, availability, and datacenter productivity.
