By Alan R. Earls
NorthScale, a company that provides commercial support for the Memcached in-memory key-value store, has recently turned to addressing a problem with Memcached – its susceptibility to data loss.
“Some of the people who were using Memcached were coming to us when a server went down and asking how they could get their data back – the answer is, you can’t,” explains James Phillips, a company co-founder. To address this vulnerability, NorthScale designed Membase, a new product that aims to build on the flexibility and speed inherent in Memcached but with an added layer of persistence for the data.
Phillips explains that with Membase the data-in-system memory is written to a multi-tier storage model that includes SSDs, spinning media, and online storage like Amazon S3. “That means, as data comes in you can cache it and persist it to a durable media and it can be protected if there is a problem. In addition, we have added replication capability so Membase is fully replicated like a database management system,” Phillips explains. Furthermore, since Membase allows you to replicate to any number of nodes you can use that capability to provide automatic failover in a cluster. Membase also supports rebalancing to provide elastic characteristics, he says.
All of this, according to Phillips, is a step toward a new way of looking at handling data. “You hear a lot of talk about Big Data, which focuses on being able to crunch large data sets and provide analytics in a cloud environment. We make the point that the “big” data came from a Big Audience or user base,” says Phillips.
Phillips says in a real time system, with large numbers of concurrent users, it is best to have data spread widely rather than concentrated because that allows the web-based application to request data from many servers at the same time. “Membase is a database that is optimized for real time storage,” and large numbers of users, he says.