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模块上右键、运行,观察是否正常输出。

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

相关推荐
阿里云大数据AI技术2 天前
EMR Serverless Ray:让 AI 推理融入数据处理
人工智能·spark
freejackman6 天前
【架构篇】双遍历 + 多栈协同:手撸 SQL 血缘引擎的架构思考
java·大数据·数据库·hive·sql·架构·spark
陈年老古董6 天前
Spark 3.1.3 集群搭建 + Spark-SQL 整合 Hive 记录
hive·sql·spark
乌恩大侠7 天前
「AI-RAN」Aerial,使用ORAN C1模式
人工智能·5g·spark·o-ru·ai-ran
测试盐7 天前
spark作业日志定位过程
java·hadoop·spark
IT研究室7 天前
最新大数据毕业设计选题推荐-基于大数据的Kaggle竞赛团队协作模式与效能可视化分析-大数据-Spark-Hadoop-Bigdata
大数据·spark·课程设计
棣廷9 天前
初识Spark Core
大数据·分布式·spark
磁场转动100万匹12 天前
Spark Core 核心原理:从 RDD 到分布式计算
大数据·分布式·spark
ha_lydms14 天前
AnalyticDB MySQL 技术架构
大数据·hadoop·mysql·adb·spark·dataworks·1024程序员节