OceanBase OBServer节点的SQL层将用户的SQL请求转化成对一个或多个Tablet的数据访问。SQL层会按照以下顺序经过一系列组件来处理一个SQL:
Parser -->Resolver-->Transformer-->Optimizer-->CodeGenerator-->Executor。
视频讲解如下:
其中:
1. 本地执行计划:只访问本服务器的数据。 2. 远程执行计划:只访问非本地的一台服务器的数据。 3. 分布式执行计划:会访问超过一台服务器的数据,执行计划会分成多个子计划在多个服务器上执行。
下图展示了SQL层执行SQL的过程。
在标准的SQL流程之外,SQL层还有Plan Cache能力,将历史的执行计划缓存在内存中,后续的执行可以反复执行这个计划,避免了重复查询优化的过程。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。