码迷,mamicode.com
首页 > 数据库 > 详细

数据库切库、分库、分表

时间:2018-07-07 23:57:35      阅读:710      评论:0      收藏:0      [点我收藏+]

标签:不同的   速度   http   提高   基础   动态   div   href   更新   

技术分享图片

切库的基础和实际运用—读写分离:

如何方便进行读写分离,目前有两种方式:

1.动态数据源切换

它是指程序运行时,把数据源动态的织入到程序中,让指定的程序连接主库还是从库

自定义注解完成数据库切库

2.直接定义查数据源和写数据源

直接在项目里定义两个数据库连接,一个是主库连接一个是从库连接,更新数据的时候我们读取主库连接,查询数据的时候读取从库连接

 

多数据源(切库)和分库的区别:

它们都是底层是多个数据库在提供服务。

分库是属于在微服务应用拆分的时候都有自己的数据库,而多数据源是在没有进行应用拆分的时候就已经分成两个库了,根据业务使用不同的代码连接不同的数据库。

技术分享图片

多个数据源的轻松支持

 

数据库的分表:

什么时候考虑分表?

当一个数据表很大,大到我们做了sql和索引优化之后,基本操作的速度还是影响使用,我们就必须考虑分表了 

 
分表的好处:
分表后单表的并发能力提高了,写操作效率也会提高。其次是查询一次的时间短了,数据分布在不同的文件里,磁盘的io磁盘io性能也提高了,
磁盘的读写锁影响的数据量变小,插入数据库需要重新建立的索引变少。
 
分表策略:
横向分表
将表中不同的数据行按照一定规律分布到不同的数据库表中(这些表保存在同一个数据库中),这样来降低单表数据量,优化查询性能。
 
纵向分表
一般根据数据的活跃度进行划分。
 
mybatis分表插件shardbatis2.0

 

数据库切库、分库、分表

标签:不同的   速度   http   提高   基础   动态   div   href   更新   

原文地址:https://www.cnblogs.com/xiangkejin/p/9278802.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!