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

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

WBOY
WBOYOriginal
2016-06-06 20:40:581153Durchsuche

比如查询吧。如果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 说的。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn