当前位置: 首页 > news >正文

Apache Doris 使用 CBO 和 RBO 结合的优化策略

Apache Doris 在查询优化方面通过结合 RBO 和 CBO,实现了对简单和复杂查询的高效优化。RBO 负责处理常量折叠、子查询改写和谓词下推等基础优化操作,而 CBO 则在 Join Reorder 等复杂场景中发挥作用。这种结合策略使得 Apache Doris 能够在面对各种查询场景时,既能保证优化过程的效率,又能在必要时进行深入的代价评估,以选择最优的执行计划。

1. 基于规则的优化器(RBO)

RBO 是基于一组预定义的规则进行优化的查询优化器。这些规则通常是通用的、独立于数据的、可以在生成查询执行计划时快速应用的。RBO 的优点在于它速度快,适用于简单、常见的查询优化场景。Apache Doris 的 RBO 主要支持以下优化策略:

  • 常量折叠(Constant Folding)

    • 概念:常量折叠是一种编译时优化技术,它将表达式中可以提前计算的部分进行计算,从而减少运行时的计算量。例如,将 3 + 5 这样的表达式直接计算成 8
    • 应用场景:在 SQL 查询中,类似 SELECT 2 * 3 FROM table 这样的表达式会被优

http://www.mrgr.cn/news/12134.html

相关文章:

  • 此站点的连接不安全,解决方法
  • Sentinel-1 Level 1数据处理的详细算法定义(七)
  • 基于Vue3和Node.js的完整增删改查项目实现教程:从后端封装到前端调用
  • WHAT - 通过 react-use 源码学习 React
  • 配电房挂轨机器人巡检系统的主要优点包括
  • 足球数据分析-基于机器学习的足球比赛角球数预测模型构建
  • 前端:html+css:伪类画箭头(实心)
  • 中资优配:金融审计进入“主审+参审”新模式
  • 使用go实现TCP服务器
  • 【算法进阶2-动态规划】最长公共子序列、欧几里得算法-分数、RSA算法-密码于加密
  • Python3.11使用labelimg
  • [Jsprit] Jsprit学习笔记-核心算法VehicleRoutingAlgorithm
  • 代码随想录第十九天 | 110.平衡二叉树,257. 二叉树的所有路径,404.左叶子之和,222. 完全二叉树的节点个数
  • API网关之Kong
  • 【Electron】桌面应用开发启动直接打开一个网址或者浏览器打开一个网址
  • 【CSS】border-image 样式不生效 - 和谷歌浏览器版本有关系 - 谷歌 80 版本边框图片样式失效问题
  • pgsql导入导出数据
  • (C语言) stdlib 程序终止
  • 搭建面向切面编程项目
  • QT常用UI控件