I'm building a Q&A site. Would like to use a distributed DB for data store.
Requirements:
1) Elastic: add nodes and scale out automatically
2) HA: automatically & transparently provides replication & failover
3) Locality: I'd like to group all answers to the same question together and put them in the same shard. That way when retrieving answers to a question I won't need to query all nodes
4) Good single-node performance
5) Secondary index (?) - each answer has a score. I'd like to sort answers by their scores. Something like a secondary index in RDBMS
Most NoSQL I know are K/V stores that don't support (3). What would you recommend?