oceanbase中执行计划查看时 filter和access的区别?
1 个赞
access:通过索引/分区键 索引裁减 "直接定位"数据块(高效,走索引扫描),消耗的是IO,所谓的谓词下推就是下推到这里,效率较高,尽可能让查询条件进入access。
filter:在已读取的数据行上"逐行判断"是否满足条件(低效,全扫描后过滤),消耗的是CPU,效率较低。
1 个赞
在OceanBase数据库的执行计划中,filter
和 access
是用于描述查询处理的不同阶段的关键字。access
描述的是数据访问的过程,即如何定位和读取满足查询条件的数据。例如,通过索引访问特定范围的数据。而 filter
则是在数据访问之后应用的,用来进一步筛选已经读取的数据行,确保只有符合查询条件的数据才会被返回给用户。因此,access
主要与数据检索相关,而 filter
更多涉及数据的选择。
详情请参考: