NoSQL Benchmarks NoSQL use cases NoSQL Videos NoSQL Hybrid Solutions NoSQL Presentations Big Data Hadoop MapReduce Pig Hive Flume Oozie Sqoop HDFS ZooKeeper Cascading Cascalog BigTable Cassandra HBase Hypertable Couchbase CouchDB MongoDB OrientDB RavenDB Jackrabbit Terrastore Amazon DynamoDB Redis Riak Project Voldemort Tokyo Cabinet Kyoto Cabinet memcached Amazon SimpleDB Datomic MemcacheDB M/DB GT.M Amazon Dynamo Dynomite Mnesia Yahoo! PNUTS/Sherpa Neo4j InfoGrid Sones GraphDB InfiniteGraph AllegroGraph MarkLogic Clustrix CouchDB Case Studies MongoDB Case Studies NoSQL at Adobe NoSQL at Facebook NoSQL at Twitter



Memcached: All content tagged as Memcached in NoSQL databases and polyglot persistence

Yahoo Patent Letter to Facebook Referring to Memcached and Other Open Source Technologies

Sarah Lacy:

The technologies in question include things like memcached which was created in 2003 by LiveJournal and has been used longer than Facebook has been alive.[…]

Other examples include Open Compute, an open hardware project started by Facebook that focuses on low-cost, energy efficient server and data center hardware; Tornado a Python-based web server used for building real-time Web services; and HPHP, a source code transformer that turns PHP into C++.

I have no other details about this patent letter Yahoo sent Facebook, but I seriously doubt it targets these technologies separately. Most probably it refers to some sort of combinations of these and one that Facebook has mentioned as part of their IP.

Original title and link: Yahoo Patent Letter to Facebook Referring to Memcached and Other Open Source Technologies (NoSQL database©myNoSQL)


In-Memory Key-Value Store in C, Go and Python

Graham King:

On paternity leave for my second child, I found myself writing an in-memory hashmap (a poor-man’s memcached), in Go, Python and C. I was wondering how hard it would be to replace memcached, if we wanted to do something unusual with our key-value store. I also wanted to compare the languages, and, well, I get bored easily!

Actually it’s very easy and doesn’t require any coding at all. Plus you’ll get a bit more than what you’d expect.

Original title and link: In-Memory Key-Value Store in C, Go and Python (NoSQL database©myNoSQL)


The Benefits of the MySQL Memcached Plugin

Mario Beck:

But the memcached plugin to MySQL is a replacement or addition to the SQL interface to MySQL. So instead of using SQL queries in your application to persist or retrieve data from MySQL you can use the memcached interface. And what are the benefits?

  • Much higher performance (nb: reduced latency, higher throughput) Easier scalability via sharding Simpler application coding

Plus Baron Schwartz’s cogent addition:

I think a huge benefit you’re discussing, but not naming separately, is consistently. With memcached, you have two copies of the data, and the man with two watches never knows what time it is. With a memcached interface to MySQL, you have only one copy — and it is consistent. This is a huge win.

Original title and link: The Benefits of the MySQL Memcached Plugin (NoSQL database©myNoSQL)


Is Memcached a Dinosaur in Comparison to Redis?

Interesting comments on StackOverflow:

So, honestly - Is memcache really that old dinousaur that is a bad choice from a performance perspective when compared to this newcomer called Redis?

Here’s mine: feature-wise Redis has already overpasssed Memcached in almost all aspects. Redis 3.0 will bring Redis Cluster a distributed implementation of a subset of Redis standalone—check this for an detailed explanation of Redis Cluster. Production-wise though, Memcached will not be replaced so easy as so many services rely on it for quite some time.

Original title and link: Is Memcached a Dinosaur in Comparison to Redis? (NoSQL database©myNoSQL)


Cache Warm-Up: Redis vs Memcached vs Microsoft AppFabric

The traffic of our football news syndicating website (Kick News) has been steadily growing a lot since it launched. When we redeveloped it a couple of years ago, we used an in-process cache, by creating an IQueryable extension method that uses an md5 hash of the underlying SQL query as the key. This worked reasonably well, but has it’s obvious problems, such as the caches needing to be refilled when the app pool recycles or when the server is restarted. On our busy site, this means we had to wait until the caches are full before we serve any requests or it would overload our database server, which is unacceptable. Before the site gets any busier we’re going to move to an out-of-process cache and the are 3 main options we’ve considered are Redis, Memcached and Windows Server AppFabric 

From these 3 solutions, only Redis will help address the cache warm-up issue.

Original title and link: Cache Warm-Up: Redis vs Memcached vs Microsoft AppFabric (NoSQL database©myNoSQL)


99designs: Powered by Amazon RDS, Redis, MongoDB, and Memcached

While the authoritative storage is Amazon RDS, 99designs is using Redis, MongoDB, and Memcached for transient data:

We log errors and statistics to capped collections in MongoDB, providing us with more insight into our system’s performance. Redis captures per-user information about which features are enabled at any given time; it supports our development stragegy around dark launches, soft launches and incremental feature rollouts.

It’s also worth noting the nice things they say about using Amazon RDS:

An RDS instance configured to use multiple availability zones provides master-master replication, providing crucial redundancy for our DB layer. This feature has already saved our bacon multiple times: the fail over has been smooth enough that by the time we realised anything was wrong, another master was correctly serving requests. Its rolling backups provide a means of disaster recovery. We load-balance reads across multiple slaves as a means of maintaining performance as the load on our database increases.

Original title and link: 99designs: Powered by Amazon RDS, Redis, MongoDB, and Memcached (NoSQL database©myNoSQL)


History of Couch Projects

Just in case you thought someone made up the whole thing about the status of CouchDB being confusing:

History of Couch Projects

Found in Koji Kawamura‘s Introduction of CouchDB JP slides .

On the other hand I’m still trying to figure out if things in CouchDB land were more confusing than the various Hadoop versions out there. If you compare the two genealogy trees you’ll notice a reversed pattern.

Original title and link: History of Couch Projects (NoSQL database©myNoSQL)

Memcached as a Service for Cloud Foundry

After giving its source code a look-over, I noticed that the important component is missing - Memcached. Memcached is the de facto standard free & open source, high-performance, distributed memory object caching system, as you know. The other PaaS also supports Memcached (ex. Google App Engine, Heroku, Amazon Web Service, and so on) in various way. I believe that a lot of PaaS users want to use Memcahced, therefore, I decided to implement Memcached as a Service for Cloud Foundry.

The Java world isn’t so big into Memcached. But that’s not a good excuse for not having support for Memcahed in Cloud Foundry.

Original title and link: Memcached as a Service for Cloud Foundry (NoSQL database©myNoSQL)


Nmap Scripts for Riak, Redis, Memcached

If you take a look at the topic of security in the NoSQL context, you’ll notice that things are far from being perfect. So, any contributions in this area are welcome. Patrik Karlsoon added a couple of network exploration Nmap scripts for Riak, Redis, and Memcached. And while these will not help much with security they might proove useful for managing your NoSQL deployments:

  • Added the script riak-http-info that lists version and statistics information from the Basho Riak distributed database.

  • Added the script memcached-info that lists version and statistics information from the distributed memory object caching service memcached

  • Added the script redis-info that lists version and statistic information gathered from the Redis network key-value store.

  • Added the redis library and the script redis-brute that performs brute force password guessing against the Redis network key-value store.

Original title and link: Nmap Scripts for Riak, Redis, Memcached (NoSQL database©myNoSQL)

MySQL MEMORY as Poor Man’s Memcached Replacement

ServerFault Q&A:

Q: Copy MySQL to RAM as a poor man’s memcached replacement?

A: Use the the MEMORY storage engine on a read only slave to do your reads from, is exactly what you really want and a sane setup. Forget “dumping it to disk” (?!) or other strange things.

You can even put the slave as another instance on your existing server if you can’t afford to setup a dedicated slave, but properly tuning the MySQL parameters for mostly read workloads will bring a significant performance enhancement too!


Original title and link: MySQL MEMORY as Poor Man’s Memcached Replacement (NoSQL database©myNoSQL)

Membase Cluster on EC2 or Amazon ElastiCache?

While there are some advatanges for using a Membase cluster on EC2 instead of an ephemeral Memcached-based service like Amazon ElastiCache, one question remains: self-managed vs managed? Answering it is essential to undertand the final OPEX.

Advantages of using a Membase cluster instead of ElastiCache:

  • persistent vs ephemeral data
  • backup & restore
  • SASL authentication
  • using reserved instances
  • cluster elasticity with automatic rebalancing and no need to cache warming

When calculating the OPEX for each of these solutions, one would need to account for:

  • licensing fees [1]
  • monitoring, maintenance, repairs
  • salary and wages

In terms of service fees here is a quick comparison:

Membase Amazon EC2 vs Amazon ElastiCache

  1. Membase has both a Community and Enterprise editions  

Original title and link: Membase Cluster on EC2 or Amazon ElastiCache? (NoSQL database©myNoSQL)


Memcached Stats Explained

Von Sebastian explains all 38 of them.

Memcached Stats Explained

Original title and link: Memcached Stats Explained (NoSQL database©myNoSQL)