- 论坛徽章:
- 72
|
1.如果你的业务暴涨10倍或者100倍,你会把你得什么业务放在mysql 中
我们做的是物联网的项目,业务数据主要是一些关系数据(用户信息、公司信息、终端信息及其关系信息等)和历史数据(增量数据),目前关系数据和历史数据分别保存在不同的MySQL实例中,由于历史数据不断增多(每天上千万条,数据每天增加20GB),所以我们将历史数据分片保存在4个MySQL实例中。
如果说我们的业务暴涨10倍或者100倍,那么我们还会将关系数据保存在MySQL中,因为单表规模不会超过千万,并且这些数据需要事务型保证,即使这些表数据过亿,我们也会保存在MySQL中(可能会尝试PG),大不了采用SSD、分库分表嘛。
在业务暴涨10倍或者100倍情况下,我们的存储历史数据每天数据增长200GB或2TB(每天增长数十亿条数据),不管是从存储空间利用率(想一下MySQL的空间利用率:raid10,1M2S,index占用空间等),还是性能方面的考虑(从上亿条数据表中去查找数据),用MySQL都有点力不从心,更关键的是我们对数据的一致性要求不高(我们要的是趋势曲线,而不是曲线上的所有的点),综合考虑,历史数据会考虑采用nosql存储:hbase、mongo、cassandra等。
note:请不要被“关系数据”误导,我这里说的关系数据和关系数据库、非关系数据库没有直接关系。
2.未来我们的关系型数据库会发展成什么样子呢?
未来关系型数据库我也说不上来,从用户角度来说,我希望未来的关系型数据库支持弹性扩容、分布式事务、性能好。
3. 其实业务就是成倍的增长的,结合你的业务暴涨10倍or100倍你要怎么设计的架构。让你得系统可以抗过去
目前的情况就是改造业务后台,实现后台服务程序无状态横向扩展,解耦服务依赖,对服务进行分级,添加中间层(mq、proxy、lb等),应对业务暴涨的带来的压力。
求票求书  |
评分
-
查看全部评分
|