分库分表水平切分注意事项
2016-05-14 16:01
302 查看
水平切分注意事项
1. 在做水平切分后,我们的部分业务实现方式或是开发方式可能需要随着改变;以下是我们再做水平切分时需要注意的点,主要是针对水平切分的弱点而言的:
2. 根据业务场景确定切分字段;业务中根据什么字段去查询,就用什么字段去分表;
3. 避免热点数据问题;通常切分时采用的hash算法理论上可以保证数据的分散性,但在实际应用中,仍可能遇到数据热点问题;理论是理论,实际归实际,没有绝对的,不要以为分了表就万事大吉了。
4. 分表宜多不宜少;这样做主要是为了尽量避免后期可能遇到的二次拆分,因为前面我们说过,拆成1024张表和拆成4096张表的操作成本是一样的。
5.避免分表上的join操作;在分表的缺点中我们就提到过,join在水平切分场景下会很困难,所以在业务实现中,对这种情况能避免就避免,哪怕牺牲一些简洁性,多绕几步。
6. 避免非分表字段查询;道理也是一样的,切分后只能按照切分字段进行查询;如果非要按其他字段查询,那就冗余数据吧。
相关文章推荐
- java线程通信
- const理解之一
- 归并排序——一步一步算法篇
- 分类的作用
- java异常处理
- Maven最佳实践:划分模块
- 理解RESTful
- initWithCoder: 与initWithFrame:的区别[转]
- onmouseover 和onmousemove的区别
- iOS微博项目(五)- 实现超链接和时间,下拉,未读数,微博正文,评论
- 利用Abot爬虫和visjs 呈现漫威宇宙
- Maven项目下update maven后Eclipse报错:java.lang.ClassNotFoundException ContextLoaderL
- PHP单例模式是什么 php实现单例模式的方法
- POJ 1789 Truck History
- ubuntu中的/etc/apt/sources.list.d
- 14. Longest Common Prefix
- PHP邮件服务器设置
- 互联网友谊成长记:那些年一起疯过的才子佳人
- PAT L2-1 紧急救援 (SPFA + 多条最短路)
- hadoop-2.6.0 完全分布式安装