"filter"的下推

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介: "filter"的下推

在PolarDB中,"filter"的下推确实只能下推到Exchange和Join算子之下。这是因为PolarDB的设计目标是在保证查询性能的同时,尽量减少网络开销。在分布式数据库中,数据节点(Data Node, DN)负责存储数据,计算节点(Compute Node, CN)负责处理查询。当一个查询涉及多个表时,PolarDB会将这些表分发到不同的计算节点上进行处理。在这个过程中,PolarDB会将过滤条件(即Filter算子)下推到数据节点上,这样可以避免在计算节点之间传输大量不需要的数据,从而降低网络开销。

然而,PolarDB并没有实现将Filter下推到Aggregate(聚合)、Projection(投影)、Sorting(排序)或者Set Operations(集合操作)等算子之下。这是因为在这些算子中,Filter的下推可能会带来一些负面影响。例如,在一个大型表上进行聚合操作时,如果将过滤条件下推到每个数据节点上,可能会导致每个数据节点都需要处理大量的数据,从而增加计算负担。此外,在某些情况下,将过滤条件下推到这些算子之下可能会导致查询性能下降,因为这意味着更多的数据需要在计算节点之间传输。

总的来说,PolarDB的Filter下推主要是为了降低网络开销,提高查询性能。在设计和实现这个功能时,PolarDB的开发者们需要在保证查询性能和降低网络开销之间取得平衡。在这个过程中,他们可能会选择不去实现某些算子的下推,以便更好地满足PolarDB的设计目标。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
1月前
|
算法 编译器 数据处理
什么叫下推
`下推`在计算机科学中涉及多种应用:1) 在编译器的下推自动机用于语法分析;2) 栈操作在函数调用与递归中管理返回地址和局部变量;3) 索引下推优化数据库查询性能;4) 事件下推在异步编程和事件驱动架构中处理事件;5) 下推算法在流处理中实现接近数据源的计算,提升流式数据处理效率。
20 2
|
5月前
|
C++
83 C++ - 谓词
83 C++ - 谓词
17 0
|
1月前
|
消息中间件 缓存 算法
Bloom Filter在Hudi中的应用
Bloom Filter在Hudi中的应用
13 0
|
4月前
|
SQL 算法 关系型数据库
MySQL查询优化之order by 、 group by与分页查询优化
MySQL查询优化之order by 、 group by与分页查询优化
57 0
|
SQL HIVE
hive:条件查询、join关联查询、分组聚合、子查询
hive:条件查询、join关联查询、分组聚合、子查询
623 0
hive:条件查询、join关联查询、分组聚合、子查询
|
API 开发者 索引
过滤 filter|学习笔记
快速学习过滤 filter。
57 0
过滤 filter|学习笔记
|
开发者 索引
过滤 filter | 学习笔记
快速学习过滤 filter
58 0
|
SQL 存储 分布式计算
spark outer join push down filter rule(spark 外连接中的下推规则)
spark outer join push down filter rule(spark 外连接中的下推规则)
216 0
spark outer join push down filter rule(spark 外连接中的下推规则)
|
机器学习/深度学习 缓存 NoSQL
布隆(Bloom Filter)过滤器——全面讲解,建议收藏
布隆(Bloom Filter)过滤器——全面讲解,建议收藏
623 0
布隆(Bloom Filter)过滤器——全面讲解,建议收藏