V1.0 单机的分库分表技术

V2.0 主从架构

V3.0 分库分表

分库分表-垂直分库

分库分表-水平分表

分库分表-水平分库:

将单张表的数据切分到不同的服务器上,每个服务器具有响应的库与表。

用户信息采用用户ID作为切分处理(按照用户ID取模,模长为数据库的个数)。

1.当用户通过手机号登录的时候,如何避免所有分库实例的用户信息?

解决方案:用户信息采用ID切分处理。同事存储用户ID和手机号的映射关系表(新增一个关系表),关系表进行手机号进行切分。可以在关系表中通过手机号查询对应用户的ID,在定位用户信息在哪个分库实例中。

2.订单信息分片,如果按照用户ID或者商户ID分片,总有一个维度的查询不方便,需要查询所有库,如何解决?

为了同时满足两端用户的业务场景,采用空间换时间,将一次的订单存为两份。C端的用户订单按照用户ID为分片建,B段商户订单按照商户ID为分片建。

03-28 11:57