如何深入探究 TiDB SQL 优化器的优化策略?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3580个文字,预计阅读时间需要15分钟。
分享嘉宾:张建+PingCAP TiDB优化器与执行引擎负责人+编辑整理:Druid中国用户组第6次大规模MeetUp+平台:DataFunTalk+导读:本次报告张老师主要从原理上深入讲解了TiDB SQL优化。
分享嘉宾:张建 PingCAP TiDB优化器与执行引擎技术负责人
编辑整理:Druid中国用户组第6次大数据MeetUp
出品平台:DataFunTalk
导读: 本次报告张老师主要从原理上带大家深入了解 TiDB SQL 优化器中的关键模块,比如应用一堆逻辑优化规则的逻辑优化部分,基于代价的物理优化部分,还有和代价估算密切相关的统计信息等。
本文将从以下几个方面介绍:首先讲一下TiDB的整体架构,接下来就是优化器的两个比较重要的模块,一个是SQL优化,做执行计划生成;另一个模块就是统计信息模块,其作用是辅助执行计划生成,为每一个执行计划计算cost提供帮助。最后介绍下优化器还有哪些后续工作需要完成。
--
01 TiDB的整体架构TiDB架构主要分为四个模块:TiDB、TiKV、TiSpark和PD,TiKV是用来做数据存储,是一个带事务的、分布式的key-value存储,PD集群是对原始数据里用来存储key-value里每一个范围的的k-v存储在每一个具体的k-v元数据信息,也会负责做一些热点调度;如热点 region调度。在Tikv中做数据复制和分布式调度都是rastgroup做的,每一个读写请求都下放到Tikv的leader上去,可能会存在某些Tikv的server或者机器的region leader特别多,这个时候PD集群就会发挥热点调度功能,将一些热点leader调度到其他机器上去。
本文共计3580个文字,预计阅读时间需要15分钟。
分享嘉宾:张建+PingCAP TiDB优化器与执行引擎负责人+编辑整理:Druid中国用户组第6次大规模MeetUp+平台:DataFunTalk+导读:本次报告张老师主要从原理上深入讲解了TiDB SQL优化。
分享嘉宾:张建 PingCAP TiDB优化器与执行引擎技术负责人
编辑整理:Druid中国用户组第6次大数据MeetUp
出品平台:DataFunTalk
导读: 本次报告张老师主要从原理上带大家深入了解 TiDB SQL 优化器中的关键模块,比如应用一堆逻辑优化规则的逻辑优化部分,基于代价的物理优化部分,还有和代价估算密切相关的统计信息等。
本文将从以下几个方面介绍:首先讲一下TiDB的整体架构,接下来就是优化器的两个比较重要的模块,一个是SQL优化,做执行计划生成;另一个模块就是统计信息模块,其作用是辅助执行计划生成,为每一个执行计划计算cost提供帮助。最后介绍下优化器还有哪些后续工作需要完成。
--
01 TiDB的整体架构TiDB架构主要分为四个模块:TiDB、TiKV、TiSpark和PD,TiKV是用来做数据存储,是一个带事务的、分布式的key-value存储,PD集群是对原始数据里用来存储key-value里每一个范围的的k-v存储在每一个具体的k-v元数据信息,也会负责做一些热点调度;如热点 region调度。在Tikv中做数据复制和分布式调度都是rastgroup做的,每一个读写请求都下放到Tikv的leader上去,可能会存在某些Tikv的server或者机器的region leader特别多,这个时候PD集群就会发挥热点调度功能,将一些热点leader调度到其他机器上去。

