I'm designing a system that will have a lot of data, which can be in JSON format easily. The system will do a lot of reading, a lot of writing but very little updating. ACID and relational type joins are not super important, but HA and scalability are.
From reading MondoDB it seems that MongoDB uses a master-slave replication system where all nodes have all the data and writes can only be accomplished on the master. If I use sharding, it seems I get scalability but lose out on HA.
It occurs to me that I may be able to have two or more shards, each of which is a replicant, but I have not found that configuration in the docs and it seems this would be complex.
My questions are:
1 - Can I have HA and horizontal scalability?
2 - Is the single server write requirement a performance bottleneck?
Thanks very much.