Microsoft Interview Question

How do you design a distributed key-value store like Redis?