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

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

相关推荐
梦里不知身是客1115 小时前
spark读取table中的数据【hive】
大数据·hive·spark
赞奇科技Xsuperzone17 小时前
DGX Spark 实战解析:模型选择与效率优化全指南
大数据·人工智能·gpt·spark·nvidia
更深兼春远19 小时前
Spark on Yarn安装部署
大数据·分布式·spark
涤生大数据1 天前
日均亿级数据的实时分析:Doris如何接过Spark的接力棒?
大数据·spark·doris·实时计算·大数据开发·实时分析·实时技术
Hello.Reader2 天前
Spark RDD 编程从驱动程序到共享变量、Shuffle 与持久化
大数据·分布式·spark
梦里不知身是客113 天前
sparkSQL读取数据的方式
spark
少废话h3 天前
Spark 中数据读取方式详解:SparkSQL(DataFrame)与 SparkCore(RDD)方法对比及实践
大数据·sql·spark
大千AI助手3 天前
分布式奇异值分解(SVD)详解
人工智能·分布式·spark·奇异值分解·svd·矩阵分解·分布式svd
Hello.Reader3 天前
用 Spark Shell 做交互式数据分析从入门到自包含应用
大数据·数据分析·spark
梦里不知身是客113 天前
Spark介绍
大数据·分布式·spark