Pika – a Redis-compatible NoSQL database
Through the previous introduction, we have learned that if the dataset size of a Redis instance is too big, it is likely that the replication and persistence can be a big problem. Specifically, it always takes quite a long time to restore the dataset from a persistence file if the dataset of a Redis instance is large. In addition, the bigger is the dataset of a Redis, the longer it takes to perform the forking when the persistence is triggered. Worst of all, if the master Redis has a large dataset and owns multiple slaves, the full synchronization is a disaster. From the perspective of the storage cost, RAM is much more expensive than the Solid State Drive (SSD).
To address these problems, Qihoo 360 developed Pika, which is a large-scale, high-performance, Redis-compatible storage system. Pika stores data on disks instead of memory, and the multithreaded design ensures considerable high performance. It supports multiple data structures and fully supports...