当使用Maven构建好项目后,现在要开始学习Spark的设计及具体实现,就是源码了。
在Google上查到的比较多的IDE就是Scala + Eclipse , Scala + NetBeans和Scala + IntelliJ Idea. 因为以前一直使用的Eclipse,所以Scala + Eclipse当然是优选了。
下了一个ScalaIDE,它的Eclipse的Scala订制版(http://scala-ide.org/),把构建好的Spark maven项目导进去, 一直有错误,大概就是一些类找不到的错误,在工作区查了一下,都是一些.scala对应的类。我猜想可能的原因就是那些Scala文件没有正确被编译, 于是Google,最后有一个方案是把spark-assembly-1.1.0-hadoopXXX.jar添加进来(这个文件可以从Spark的预编译包里获取),试了一下,类找不到的问题就不见了,但是修改了一下scala文件,那个scala文件就显示一堆错误,无法编译了。搞了好久,无果。查了Google,说Scala语言太灵活,现在的IDE都不能很好的支持,说是IntelliJ Idea对Scala语言的支持要好点,所以果断换IntelliJ Idea试一下,现在的版本是13.1.
以前JBuilder时代,IntelliJ Idea就是其中的主要竞争者,不过以前试用了n次,每次都放弃。究其原因,可能有几个:
1. 操作习惯与JBuilder及Eclipse有很大的不同,总之不顺手,
2. 另外一个原因就是处理大的项目速度慢,完全没办法和JBuilder和Eclipse比。Eclipse虽然有时候也"发发脾气",但整体来说,还是比较好用的,不过现在的版本是又大又不好用。说远了,
3. 功能太过强大,这样也给用户带来太多的复杂性。
导入项目以后,还要添加Scala和SBT的支持,具体的方法是:
File -> Setttings -> Plugins -> Browse Repositories , 在查找框里输入Scala,找到Scala,点右边窗口的Install Plugin, 找到SBT,并安装它,这个是用来构建Scala的工具。
这样我们就大功告成了。因为没有使用过IntelliJ Idea,所以我要花一点时间用一下,同时Spark是用Scala写的,另外听说Scala的学习曲线很陡,所以要学习Spark源代码,学习Scala也是必不可少的了。后面我会两至三天写一篇关于Spark学习的文档,希望大家一起来学习,探讨。
IntelliJ Idea 关于Scala相关的参考:
http://confluence.jetbrains.com/display/IntelliJIDEA/Scala+Development
Scala Console 使用: .scala -> Ctrl + Shift + D --> Ctrl + Enter执行
分享到:
相关推荐
`spark-2.4.7-bin-hadoop2.tgz` 包含了Spark的2.4.7版本,预编译为与Hadoop 2.x兼容,包含了Spark的所有核心模块,如Spark Core、Spark SQL、Spark Streaming和MLlib(机器学习库)等。 **WinUtils** 在Windows环境...
Spark在大数据处理中以其快速、通用和易于使用的特点而闻名,它提供了数据处理的API,如Spark SQL、Spark Streaming、MLlib(机器学习库)和GraphX等,支持批处理、交互式查询、实时流处理以及图计算。 **Scala基础...
在这个模板中,`spark-gradle-template-master` 文件夹很可能包含了示例代码和配置文件,供开发者参考和学习。你可以通过运行 `gradle build` 命令来编译项目,或者使用 `gradle run` 来直接执行应用程序。 在 IDE ...
2. **新建 Scala 工程**:打开 Scala IDE for Eclipse,选择 `New` -> `Scala Project`,在弹出的窗口中输入项目名称(如 `SparkDemo`),然后点击 `Finish` 完成创建。 ##### 3.2 导入 Spark 依赖包 1. **添加 ...
开发者可以下载并解压,通过IDE导入项目,然后按照项目结构和代码来学习和理解Spring Boot的实现细节。 总之,Spring Boot极大地简化了Java应用程序的开发流程,使得开发者能够更专注于业务逻辑,而非基础设施的...
2. **跟踪执行流程**:创建一个简单的Spark程序,通过IDE的断点和调试功能,逐步理解任务的提交、调度和执行过程。 3. **研究特定功能**:选择一个你感兴趣的Spark特性,如DataFrame的SQL查询或Spark Streaming的...
- **本地运行**:可以在Linux、Windows或IDE环境下运行Spark程序,适合调试和小规模测试。 - **分布式运行**:通过将程序提交到集群上实现分布式执行。 - **Standalone集群**:Spark自带的资源调度系统,简单易用。...
同时,还可以通过诸如IntelliJ IDEA、PyCharm等集成开发环境(IDE)进一步提高开发效率,利用它们提供的Spark插件进行代码调试和项目管理。 总之,搭建Spark环境涉及安装JDK、获取Spark源码、配置环境变量、构建...
### Spark+Scala 学习知识点概述 #### 一、Scala语言基础 **1. Scala语言简介** Scala是一种融合了面向对象编程与函数式编程特性的现代编程语言。它旨在简化编程,提供更简洁、强大的代码编写方式。Scala运行在...
2. **创建Spark项目**: 在IDE中创建新项目,并配置Spark和相关库依赖。 3. **编写Spark程序**: 使用Spark API创建RDDs、DataFrames或DStreams,并实现数据处理逻辑。 4. **构建和运行**: 使用sbt、Maven或IDE内置...
在ECLIPSE这样的IDE中,开发者需要配置正确的Scala版本和Spark版本的依赖。例如,这里的"spark-1.3.0-bin-hadoop2.4"表示Spark 1.3.0版本,该版本已经包含了Hadoop 2.4的兼容性,这意味着它可以处理HDFS等Hadoop相关...
例如,查看`src/main/java`目录下的类文件,可以学习如何使用Sparkjava创建REST端点,如何利用Jooq进行数据库交互,以及如何通过Guice实现依赖注入。此外,通过阅读`pom.xml`文件,可以理解项目的依赖关系和构建流程...
2. **配置IDE与Spark的连接**: - 在IDE中配置Scala SDK路径。 - 设置Spark Home,以便IDE能识别Spark相关的类库。 3. **开发示例程序**: - 创建一个简单的Spark应用程序,例如Word Count。 - 测试程序是否能...
这个"spark学习资料.rar"压缩包显然包含了关于Spark的学习资源,可能包括教程文档、示例代码、实战项目等,对于想要深入理解和掌握Spark技术的初学者或者开发者来说,是一份宝贵的资料。 在大数据领域,Spark的核心...
在分布式计算环境中,Apache Spark作为一款高性能的数据处理框架,被广泛应用于大数据分析与机器学习场景之中。然而,在开发和维护Spark应用的过程中,不可避免地会遇到各种各样的问题。为了提高开发效率和定位问题...
- **MLlib**:Spark提供的机器学习库,支持分类、回归、聚类等多种机器学习算法。 #### 实战案例 - **案例分析**:本书提供了多个实际案例,涵盖不同领域的数据处理任务,如日志分析、社交网络分析、推荐系统等。 ...