Redis. It's a very different kind of database - being able to perform 80,000 set or list operations a second enables a whole bunch of solutions to otherwise difficult problems (real time stats stuff, writing in to activity streams etc). SRANDMEMBER on its own is invaluable since picking a random item from a regular relational database using ORDER BY RAND() tends to kill it stone dead under load.