freyja 可能会加入分库、分表功能

水平分库、分表一直都没去考虑。

如果要去实现那么大致的想法是表、库都和某个字段的值关联。

例如分库就根据userId去摸 1、2、3、4、5、6、7、8、9 个库。

并且建立1、2、3、4、5、6、7、8、9 个对应的数据源 datasource

在不请入原有的代码前提下,

 

select * from t_user where userid = 1;

 

那么根据userId = 1 得知这条sql会在db1的数据库中,那么分配datasource1 去执行查询

 

userid 则为关键字段,类似之前的Group,sql处理都会围绕这个字段来处理

 

分库的字段都必须有类似的这种字段。这样就差不多解决了分库问题。

如果没有这个字段,那么就需要多个库搜索了,然后汇总结果。

 

分表嘛还是一样。如:

select * from t_user where userId = 1

通过转换:知道userId = 1的记录存在与t_user1中。 那么最终会被转换成为select * from t_user1 where userId = 1

 

同理,如果是select * from t_user where name = '张三' 这种是肯定要把所有的表查找一遍的

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值