我正在设置Sharded群集。
我还想在群集中配置只读副本。
假设碎片为3,1个主要和2个次要。写入将转到碎片的主要成员,但我可以将所有读取发送到Secondaries吗?
答案 0 :(得分:3)
建议不要在分片群集中读取辅助节点。这是因为与初选不同,辅助设备不知道碎片应包含哪些数据。因此,当块从一个碎片迁移到另一个碎片时,从辅助节点读取可能会导致重复或丢失结果。
一般来说,从辅助数据中读取也意味着失去一致性保证,因为只要写入没有从初选中传播,辅助数据就会看到并返回陈旧数据。
最后,你应该记住,辅助语言基本上接受与初选相同的写入负载,因此从辅助语言中读取不太可能提供很多性能优势。
获得更多读取吞吐量的推荐方法通常是添加更多分片,而不是从辅助分析中读取。