RDBMS能否实现与NoSQL相当的读扩展能力?
结论
你描述的场景下,使用RDBMS加从节点的方案完全可以获得非常优秀的读扩展性。
核心原因
- 你的业务特征完全匹配RDBMS主从架构的最优适用场景:读多写少、查询逻辑为简单主键KV查询无关联操作,主流MySQL/PostgreSQL单实例跑单主键查询可以轻松达到数万到十万级QPS,新增从节点的读能力几乎是线性提升的,只要网络没有瓶颈,加多少从节点就能加多少读吞吐量。
- 你明确可接受写入性能受损、不需要高写入可用性的前提,刚好避开了RDBMS主从架构的最大短板:单主库写入瓶颈、从库数量增加带来的主库binlog同步开销。普通单主实例挂载十几台从库只会带来个位数百分比的写入性能损耗,完全在你可接受的范围内,足以支撑绝大多数业务的读规模需求。
- 如果后续读规模进一步增长,还可以在业务层按Key做哈希分库拆分,每个分片主库挂载对应从节点,扩展上限可以进一步抬升,完全不输专门的分布式KV数据库的读扩展能力。
- 额外收益是你可以直接复用现有RDBMS的运维、备份、事务能力,不需要额外投入成本适配分布式KV的开发和运维逻辑,落地成本低很多。
注意事项
如果你的业务对读一致性有强要求,需要额外处理主从同步延迟问题,可根据场景选择强制读主、校验从库同步位点等方案适配,这部分的开发成本远低于引入新架构的开销。
内容的提问来源于stack exchange,提问作者user1701840
相关产品推荐
相关产品推荐

