在上周六北京举办的 Infra Meetup No.92 上,我司 TiDB 开发工程师谢海滨老师为大家介绍了 TiDB 中统计信息的原理及细节。以下是视频 & 文字回顾,enjoy!
讲师介绍:谢海滨,TiDB 研发工程师,目前主要负责统计信息以及优化器相关工作。
本次分享首先介绍了统计信息的作用以及 TiDB 统计信息的基本组成部分,接下来围绕着统计信息的估算、收集以及更新 3 个部分具体展开:
在估算方面,介绍了直方图和 Count-Min Sketch 的适用场景以及估算方法,以及 TiDB 是如何利用索引的统计信息来减少多列估算时的独立性假设。
在收集方面,介绍了 analyze 语句的具体流程以及相关参数,以及 auto analyze 的触发条件。
在更新方面,介绍了 TiDB 是如何更新 row count 和 modify count,以及是如何利用查询结果更新直方图和 Count-Min Sketch 的。