数据库集群

数据库相关的东西,是最近想写的最后一个总结了。说到大数据,数据库集群,都是比较蛋疼的话题。动不动就要用Hadoop,spark,事实上mysql还是可以比较轻松支持起亿级数据的。mongodb在即时通讯上面很流行,因为有它的特殊性,node.js+mongodb是绝配,上次测session的持久化,数据比用redis还快,太神奇了。对于Hadoop,spark其实我没什么可说的,因为没有使用场景,但是更多人建议使用spark,其实Hadoop和spark的使用场景是有差异的,具体可以百度了解一下。对于mysql,之前在群里聊过,一般的架构就是读写分离,多组主从,分库分表,做好监控。数据库常用的方案:主从模式,双主模式,NDB Cluster等。无论是主从还是双主,需要客户端做好负载均衡。NDB Cluster 是个很好的方向但商业案例不多。具体 https://www.zhihu.com/question/21307639 。目前主从模式,双主模式还是比较简单易行的。通过读写分离,读的瓶颈可以得到缓解,但是写的瓶颈更加明显了,该如何解决写的瓶颈呢?大多数人提出的方案就是分库分表,但是分库分表很可能影响业务逻辑,比较蛋疼。当当开源了一个sharding-jdbc似乎挺好的解决这个问题,但是性能如何呢,我没有时间做测试。还有一个据说很牛逼的mycat,没怎么了解。如果引入cache(redis,memcached)做缓冲的,高并发需要解决很多一致性的问题,这个很心塞。简单写这个,没有什么深入的内容,只是小结一下别人生产环境中可用的方案 ,帮助我们在选择的时候做决定的。具体真的要深入的话,水比较深,交给专业的数据库工程师就好了。

你可能感兴趣的:(数据库集群)