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

spark-Catalyst 优化器和 Tungsten 执行引擎介绍

目录

  • 一、Catalyst 优化器是什么?
      • 1.定义
      • 2. 作用
      • 3. 工作流程
      • 4. 特点
  • 二、Tungsten 执行引擎是什么?
      • 1. 定义
      • 2. 作用
      • 3. Tungsten 主要优化点
      • 4.代码生成示例
  • 三、两者关系总结
  • 四、举个简单例子

Catalyst 优化器Tungsten 执行引擎 是 Spark SQL 的两个核心组件,理解它们对深入掌握 Spark SQL 的性能优化非常关键。

一、Catalyst 优化器是什么?

1.定义

Catalyst 是 Spark SQL 的查询优化框架,负责将用户的 SQL 查询或者 DataFrame 操作转换成高效的执行计划。它是一个基于规则的、可扩展的查询优化器

2. 作用

  • 解析后的逻辑查询计划(Logical Plan)进行优化生成更高效的逻辑计划和物理计划
  • 支持多种优化策略,包括谓词下推、列裁剪、常量折叠、子查询消除、连接重排序等。
  • 通过规则和策略的组合,自动优化查询,无需用户手动干预。
    • 常量折叠(Constant Folding):将表达式中常量计算提前。
    • 谓词下推(Predicate Pushdown):将过滤条件尽可能早地应用,减少数据量。
    • 投影剪裁(Projection Pruning):只读取和处理必要的列。
    • 子查询消除连接重排序等。
  • </
http://www.xdnf.cn/news/8082.html

相关文章:

  • AI之光,点亮星途 :揭秘“智语心桥”,如何用科技为孤独症儿童架起沟通的桥梁
  • (第95天)OGG 微服务搭建 Oracle 19C 到 MySQL 8 双向同步
  • 可信计算是什么?可信逻辑:计算系统安全的形式化分析框架
  • 【brpc】安装与使用
  • AGI大模型(32):LangChain实现RAG
  • NSSCTF-[陇剑杯 2021]webshell(问6)
  • 关于如何在Springboot项目中通过excel批量导入数据
  • Flask vs. Django:如何选择最适合你的 Web 框架?
  • 基于Scikit-learn与Flask的医疗AI糖尿病预测系统开发实战
  • 蓝桥杯 3. 涂色
  • OceanBase数据库全面指南(基础入门篇)
  • C# 实现轻量化数据库SQLite在工业中上的应用
  • TensorFlow深度学习实战(17)——主成分分析详解
  • 鞋服行业数据防泄露——企业解决方案
  • NFS服务器实验
  • 深入了解linux系统—— 文件系统
  • 物联网、云计算技术加持,助推楼宇自控系统实现智能高效管理
  • 机器学习与深度学习算法:从决策树到 GAN 的原理与 PyTorch 实现
  • 数智读书笔记系列033《软件设计的哲学(第2版)》:复杂性管理的艺术
  • Qt C++图书管理系统
  • 在Linux debian12系统上使用go语言以及excelize库处理excel数据
  • CQF预备知识:一、微积分 —— 1.2.2 函数f(x)的类型详解
  • 【力扣题目分享】二叉树专题(C++)
  • Spring开发系统时如何实现上传和下载文件
  • Java转Go日记(五十四):gin路由
  • P1833 樱花
  • 端口号详解(技术向)
  • Java之函数式接口、lambda表达式、stream流操作、Optional容器、方法引用
  • 企业级调度器LVS
  • Java读写分离实战