Ever wonder what would happen if you dipped SQLite into Redis? You get Thredis, the peanut butter cup of databases:
Thredis embeds an in-memory SQLite database within Redis to enable a
sophisticated level of SQL (joins, sub-selects, etc, all supported),
as well as introduces multi-threaded processing to take advantage of
SMP systems.
This is one wild hack, check out one of the examples:
redis 127.0.0.1:6379> zadd foo_zset 1 a 2 b 3 c (integer) 3 redis 127.0.0.1:6379> sql "create virtual table zset using redis (foo_zset)" OK redis 127.0.0.1:6379> sql "select * from zset" 1) 1) "key" 2) "val" 2) 1) "1.0" 2) "a" 3) 1) "2.0" 2) "b" 4) 1) "3.0" 2) "c"
More examples are listed at http://thredis.org/, source code is available at https://github.com/grisha/thredis.