老男孩教育Mysql数据库学习之Mycat分片分库原则

    2018-10-16发布, 次浏览 收藏 置顶 举报
  • 上课班制:

    周末班

  • 授课时间:

    每周末一天课

  • 授课对象:

    有Linux基础

  • 网报价格:电询    课程原价:电询
  • 咨询热线:400-998-6158
  • 授课地址:北京市昌平区沙河镇松兰堡村
  • 课程详情

  • 机构简介
  • 地图信息
  • 预约试听

课程关键词:MySQL数据库 数据库培训 老男孩MySQL

老男孩教育都有哪些课程?

1 全日制:Linux云计算运维、python全栈开发+人工智能、java全栈开发、大数据开发

适合于:0基础学习,对IT感兴趣,想要在IT行业发展的朋友们

2 周末班MySQL周末班,阿里云架构师、GO开发、Linux架构师、python自动化开发、python自动化架构师、Linux云计算运维

适合于:本身IT行业内的朋友们,有一年以上行业经验

3 网络班


Mycat分表分库虽然能解决大表对数据库系统的压力,但也有一些不利,因此Mycat分表分库要先解决的问题是,分不分库,分哪些库,什么规则分,分多少分片。那么究竟是怎么分的呢?

1、能不分就不分,1000万以内的表,不建议分片,通过合适的索引,读写分离等方式,可以很好的解决性能问题。

2、分片数量尽量少,分片尽量均匀分布在多个DataHost上,因为一个查询SQL跨分片越多,则总体性能越差,虽然要好于所有数据在一个分片的结果,只在必要的时候进行扩容,增加分片数量。

3、分片规则需要慎重选择,分片规则的选择,需要考虑数据的增长模式,数据的访问模式,分片关联性问题,以及分片扩容问题,近的分片策略为范围分片,枚举分片,一致性Hash分片,这几种分片都有利于扩容。

4、尽量不要在一个事务中的SQL跨越多个分片,分布式事务一直是个不好处理的问题

5、查询条件尽量优化,尽量避免Select * 的方式,大量数据结果集下,会消耗大量带宽和CPU资源,查询尽量避免返回大量结果集,并且尽量为频繁使用的查询语句建立索引。

总体上来说,分片的选择是取决于频繁的查询SQL的条件,因为不带任何Where语句的查询SQL,会便利所有的分片,性能相对差,因此这种SQL越多,对系统的影响越大,所以我们要尽量避免这种SQL的产生。

互联网企业大多用的数据库是MySQL的,想要众多的IT工作者中脱颖而出,就需要拥有高深的技术,学习增值是必不可少的。学习之路,是贵在坚持的。老男孩教育MySQL DBA课程,几经更新课程,杜绝纸上谈兵,全企业真实案例结合理论授课,想深入的学习MySQL DBA的知识,可以关注下老男孩教育。

更多培训课程,学习资讯,课程优惠等学校信息,请进入 北京老男孩教育 网站详细了解,免费咨询电话:400-998-6158

预约试听
  • 姓名: *
  • 性别:
  • 手机号码: *
  • QQ:
  • 微信:
  • 其它说明:
  • 验证码: *  看不清,请点击刷新
相关课程