MySQL分库分表

1、首先说明一下能不分库分表就不分库分表。因为分库分表会以后会面临很多问题,例如多表的分页查询,多表的join查询,跨库事务的问题,分布式ID,扩容问题等,势必会提高系统的复杂读。

2、基于此后续研究的学习的内容就有了,比如分布式事务、分布式id、数据库分库分表开源中间件、数据库扩容原理等。

3、当然了,为了业务正常的发展还是需要分库分表的,以此来提高io读写、数据库链接、网络吞吐等瓶颈。单表单库的情况下,单表5000W或100G以上,操作数据库性能会出现明显下降。

4、数据库分库分表分位垂直和水平两种大的方式

5、分库分表以后面临的常见问题处理

        1、分布式事务:两阶段提交2PC、补偿事务提交TCC,后续学习补充起来。

        2、跨节点join查询:表冗余、字段冗余来避免跨库join查询。

        3、跨节点分页查询:基于分库分表存储的用户单条或者多条查询以及基于Elasticsearch、Solr存储来处理其他字段查询的。

        4、全局唯一ID:uuid、redis、snowflake,以及其他的分布式id生成框架。后续学习。

        5、扩容问题:尽量使用 2 的倍数来设置表数量。当需要扩容时,也同样按照 2 的倍数来扩容,这种方式可以减少数据的迁移量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值