多表join关联查询,每个表有多个region,且region分布在多台tikv
请问
1、各表的region,分别从不同tikv传输到tidb,在tidb中进行数据关联,即条件过滤数据不在tikv节点执行
2、通过条件下发,各tikv按条件过滤数据,把符合条件的数据传输到tidb进行关联
join都是在tidb进行的,有些过滤条件或聚合函数是可以下推到tikv,减少到tidb的数据量
多个上亿的表关联查询,tidb的内存需求不是很大,且每条sql最大内存参数配置32G都不够啊
对,有可能oom ,具体还得看SQL和执行计划
我最近也遇到了这种情况,hash join特别慢,index join就非常快
https://docs.pingcap.com/zh/tidb/stable/explain-joins
能下推尽量下推,不能下推的AP查询就推给TiFlash
下推的场景不多,一般都是范围过来,不是聚合类的
能在tikv定位到数据的,肯定是下发,不能定位的只能到tidb去过滤
where条件中有筛选过滤条件基本都是tikv做的,能不在tidb做就不在tidb做
我看了半天没看明白问的是什么,问题看起来是在陈述,也没看出错误来。底下各位在回答啥?
可以找一个例子,发一下explain analyze,大家一起看一看
kong老师,这个问题在问什么?好像就我没有get
他应该问的是查询逻辑,是1还是2
TiDB 使用查询条件向 TiKV 发起请求,获取符合条件的数据
一般都是tikv先过滤数据,然后,将过滤出的数据返回tidb,在tidb进行关联
为啥不进行渭词下推,分担一下计算压力嘛,dbserver压力好大啊
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。