tidb支持两张一亿级别的数据表进行join关联数据分析?tiflash可以不,如果要分区支持友好不
支持的,而且建议使用Tiflash,可以加速查询。
分区表的使用需要结合业务来评估,如果有清理历史过期数据的需求,建议使用分区表。
如果where条件不能去掉太多数据,可能还是会oom
支持。。。
最新的 TTL可不可以取代分区表数据删除的作用?
当然可以,不过也要看具体场景,聚合查询效果最好
功能特性看起来是可以的,具体还没有试用过。
有了行级数据的TTL,这块数据维护工作就可以完全自动化了,对用户而言是一大利好
我两张一亿的数据表象做OLTP,多个查询性能不太友好
SQL,explain analyze的执行计划发下
这种查询主要还是看你where条件筛选出的数据量大小,和全表有多少条记录关系不大
SELECT * FROM middle_das_shop_item_effect_day_part PARTITION (p17_202205
, p135_202301
, p349_202302
) a
LEFT JOIN middle_das_shop_item_effect_day_part PARTITION (p17_202205
, p135_202301
, p349_202302
) b
ON a._partition_key
= b._partition_key
AND a.day
= b.day
and a.num_iid
= b.num_iid
and a.is_live
= b.is_live
limit 100
这个是做test的sql,表数据8千万,我们现在还有商品的十五个维度,不太想冗余到这张表里去,如果做join关联,用tiflash效率高?
执行计划能上传下全的吗? tiflash有MPP能力 具体效果还得测试,tiflash并发太高的话可能受不了。 看你explain analyze结果才0.01秒 速度还行啊
嗯,我们有个看板展示,一下有上百个小sql去查同一个商品维度表,各种子查询,现在考虑要不要冗余商品的维度到一张表去做查询效率高点
单个的很快
现在有啥压力吗?
100多个小sql同时走一张表关联查询响应慢,单个sql还好
支持的,但是不建议
就是同一时间查询同一张大表很频繁,单个的很快
分区后,我们要对每个分区表进行analyze?之前我们分区了,每个分区表分析一次要30多s
https://docs.pingcap.com/zh/tidb/stable/partitioned-table#range-interval-分区
tidb管理range分区不要太轻松。从建立分区到,添加分区,删除分区,有Range INTERVAL的支持都很方便的。
https://docs.pingcap.com/zh/tidb/stable/sql-statement-analyze-table#mysql-兼容性
大表的全表分析虽然不及MySQL快,不过多数的大表是日志表,是可以增量分析的。只分析某些分区也是支持的。