You mention hashes for your data, is that because you plan to follow the model that Instagram described some years ago in
this blog post?
The most significant question is whether you will have enough RAM to hold your data. In a non-sharded Redis configuration, all the keys must fit into a single Redis server process. In a sharded Redis configuration, the keys are distributed around your group of servers, so each server has only a portion of the total. Your clients can decide which keys are kept on which Redis servers, or with Redis Cluster, the Redis server processes can decide.
So the questions about this are:
Non-sharded or sharded?
If non-sharded:
What cpu and ram will you have available to the Redis server process(es)?
If sharded:
How many servers will you spread your data across?
What cpu and ram will each server have available to Redis server process(es)?
For both types:
How many bytes will the key names be?
How many bytes will the values be?
The answers to these questions will be the first determinants of the feasability of keeping your data in Redis.