Netlog拥有4000万活跃用户,每个月有超过5000万的独立用户访问网站,每个月有5亿多的PV。数据量应该算是比较大的。作者是Jurriaan Persyn,他从一个开发者角度而非DBA或者SA角度来谈Netlog是如何通过数据切分来提高网站
性能,横向扩展数据层的
?
第一阶段:读写同在一台数据库服务器
?
?
第二阶段:读写分离(可以解决读写比例均衡或者读居多的情况,但是带入了数据复制同步的问题)
?
第三阶段:部分数据独立部署结合读写分离。(部分数据根据其业务独立性情况,可以将所有的数据独立存储到数据库服务器,分担数据读写压力,前提是要求数据具有较高的业务独立性)
?
?
第四阶段:数据分拆结合读写分离(三阶段的增强)
?
?
?
第五阶段:问题出现,分拆也无法解决数据爆炸性增长,同时读写处于同等比例
?
?
解决问题两种方式:DB Scale up?,DB Scale out。前者投入以及后期扩展有限,因此需要进行数据切分