SparkSQL源码分析系列02-编译环境准备

本文主要描述一些阅读Spark源码环境的准备工作,会涉及到源码编译,插件安装等。

1. 克隆代码。

打开IDEA,在Git下的Clone中,输入 https://github.com/apache/spark ,克隆代码到本地,CheckOut到目标版本Spark3.4

2. 安装maven。

版本按照pom文件指定的版本安装,在IDEA中配置安装的路径。

3. 为IDEA安装 ANTLR 和 Scala 插件
4. 测试ANTLR的词法语法解析功能

在Spark源码项目中,搜索 SqlBaseParser.g4 文件,在 singleStatement 上右键,找到"Test Rule singleStatement",在底部对话框中输入SQL语句,观察解析出的抽象语法树。


注意:SQL语句一定要大写。

5. 编译源码

由于我们只做源码阅读,不做打包,所以只需要通过 compile 就行,package貌似报错更多,不容易打包成功,但是 compile 相对容易。多次 compile 尝试,直到 build success。

6. 运行测试类

在.../spark_branch3_4/sql/core/src/test/scala/org/apache/spark/sql目录下,打开 SQLQuerySuite 文件,在任意一个test模块上右键、运行,观察是否正常输出。

测试案例运行成功。至此,代表源码阅读环境准备完毕。

相关推荐
abcy0712132 天前
spark核心组件
flink·spark
极光代码工作室3 天前
基于Spark的日志监控与分析平台
大数据·hadoop·python·spark·数据可视化
Leo.yuan4 天前
数据仓库建设怎么做?从源数据到分析报表全流程讲清
大数据·分布式·spark
OneNobody5 天前
Spark SQL AQE工作原理源码剖析
大数据·sql·spark
humbinal6 天前
同时支持 gui & cli 的 parquet 文件查看工具,高性能小清新!
hive·python·rust·spark·开源·github·parquet
阿里云大数据AI技术6 天前
阿里云 EMR Serverless Spark 全托管 Ray 再进化:加速构建全模态数据处理新基建
人工智能·spark
LitchiCheng6 天前
轻量化微调 Qwen2.5 LoRA 训练全流程详解
大数据·人工智能·spark
董可伦7 天前
Spark 源码 | Yarn Client 模式提交流程(五)
大数据·spark
Gent_倪7 天前
万字详解:数据库、数据仓库、数据湖、湖仓一体
数据库·数据仓库·spark