MySQL 分库分表后跨分片查询和聚合怎么解决?
跨分片难题:① 跨分片 JOIN:不跨分片设计(冗余字段/宽表)、应用层组装(分片分别查再合并)、中间件支持部分(ShardingSphere 绑定表/广播表);② 跨分片聚合(COUNT/SUM/分页排序):中间件聚合(会合并多分片结果,深分页性能差);③ 全局查询:遍历所有分片合并(广播)——只适合低频管理查询;④ 方案:按业务设计避免(查询条件尽量带分片键)、汇总表/宽表冗余、ES 索引做搜索、分片内分页(禁止全局深分页)。设计核心:让 90%+ 查询能路由到单分片。
一起交流
分享经验,让问题更进一步
讨论,从你的观点开始
还没有回复,欢迎补充经验或分享不同的思路。