MYSQL假设主从复制和分库分表,势必会增加代码难度啊!这个咋解决?

WBOY
풀어 주다: 2016-06-06 20:40:58
원래의
1154명이 탐색했습니다.

比如查询吧。如果MYSQL分库分表,势必会增加逻辑代码的难度。比如一个简单的查询,分表了之后先要找到那张表,然后再查询。这样代码复杂度就会成倍增加。。。。我们该如何设计解决这个问题呢????????????
PS:我经验不足。目前的水平也就是一个mysql上面。我发现分库分表以后逻辑代码一下会变得复杂很多

回复内容:

比如查询吧。如果MYSQL分库分表,势必会增加逻辑代码的难度。比如一个简单的查询,分表了之后先要找到那张表,然后再查询。这样代码复杂度就会成倍增加。。。。我们该如何设计解决这个问题呢????????????
PS:我经验不足。目前的水平也就是一个mysql上面。我发现分库分表以后逻辑代码一下会变得复杂很多

这都被你发现了,但确实没有更好的办法...

1,分别查询,获取结果,再在内存中合并排序
2,把上述结果存储到中间表

这不就是MapReduce么

举个例子

假设有字段user_id,可以根据user_id后几位来分库分表:

|user_id |name|
|123456 |db_45.table_45_6|
|654321 |db_32.table_32_1|

很简单

你可以试试分区。。。

具体怎么分表?为什么不直接用mysql5.1后新增的分区技术。。。

难度并没有想象的那么大,只是在操作表之前多一个获取表明的操作,一个函数封装下就好。
真正的难点在于数据统计这块,就是 @vus520 说的。

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿