tidb支持两张一亿级别的数据表进行join关联数据分析?

对于分区表,底层的数据存储和组织方式,你可以理解为是“一个分区就是一个表”,所以 analyze 一个分区表其实相当于 analyze “多个表” ,所以耗时会比较久。

所以最佳实践是这样的:

  • 使用抽样方式进行采样,可以指定采样的行数或者比例

  • 只对业务需要访问的分区进行 analyze,不用对整个表进行 analyze。如 analyze table t partition p1;

  • 如果业务有需要,那就老老实实 analyze 整个表吧

官方文档参考:

1 个赞

嗯,目前这对分区选择性地进行analyze了,不然粒度细,数据变动大analyze频繁

好,那种历史流水数据,如果后面历史数据需要清除,是可以通过分区快速指定清除某一部分是吧

建议使用分区表。方便清理数据,提高查询性能

对于历史数据清理,可以直接对历史的分区执行 drop partition 或者 truncate partition操作。

这个命令对于用户来说执行是很快的,不管这个分区有多少数据,可以在几秒钟内就完成删除(是一个 DDL 操作),而且后台GC回收数据时可以直接释放空间,总体来说对用户、对TiDB集群都是非常友好的。

最新版本的 行级数据 TTL 功能出现后,这类问题就可以根本解决了,不用后续过多的运维操作介入,有兴趣也可以去了解下。

为何要用join,不能程序里面去关联吗

支持这样操作,但是不建议这么搞,结合你的业务场景,通过分区表方式来实现,提高检索下来和对数据的管理

要做实时计算分析

嗯,现在分开搞了

好的, 谢谢

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。