spark开发环境搭建(idea和maven)
来源:互联网 发布:中国联通软件开发待遇 编辑:程序博客网 时间:2024/06/05 23:58
spark idea maven开发环境的安装网上有很多教程,笔者在此就不过多阐述了,可以参考spark idea maven开发环境配置。
结合网友整理的资料,简单总结一下搭建这套开发环境的主要步骤,以及项目中用到的一些不一样的地方:
1.下载,安装idea,spark,scala,maven等;
2.在idea中安装scala插件;
3.新建一个maven工程,在project structure里面设置jdk(project选项里面)和scala sdk(global libraries里面),另外,右击工程名称添加scala框架支持(可以创建scala类等);
4.由于项目需求,需要在spark中部署实时处理和离线处理两个工程,故在工程下再创建两个maven module,命名为streaming和offline,一个用于实时计算,一个用于离线计算,在生产环境中,使用maven单独打两个包提交到spark执行任务;
5.随便挑选一个module,如offline,在src/main/下创建scala目录,并make directory as sources root。在pom文件中引入spark-core相关的依赖,然后新建一个scala的Main Object类 ,编写hello world demo,本地直接运行,成功。
object Main { def main(args: Array[String]) { val conf = new SparkConf().setAppName("mySpark") //setMaster("local") 本机的spark就用local,远端的就写ip //如果是打成jar包运行则需要去掉 setMaster("local")因为在参数中会指定。// conf.setMaster("local") val sc =new SparkContext(conf) val rdd =sc.parallelize(List(1,2,3,4,5,6)).map(_*3) val mappedRDD=rdd.filter(_>10).collect() //对集合求和 println(rdd.reduce(_+_)) //输出大于10的元素 for(arg <- mappedRDD) print(arg+" ") println() println("math is work") }}6.将offline模块单独使用maven打包jar。在新建的工程pom文件中,还需要额外引入maven和scala的打包相关插件,
<build> <plugins> <plugin> <groupId>org.scala-tools</groupId> <artifactId>maven-scala-plugin</artifactId> <version>2.15.2</version> <executions> <execution> <goals> <goal>compile</goal> <goal>testCompile</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.0</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.19</version> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </build>在offline模块下,mvn clean package,打包,上传到spark集群,执行spark-submit命令,如下
spark-submit --class com.xysy.boss.Main --master spark://master:7077 /opt/offline-1.0-SNAPSHOT.jar
运行成功。至此,基本开发环境搭建完毕。
注意:将工程或module打成jar包时,spark相关依赖jar包不需要包含在内,因为spark集群本身已经提供了jar包,打进去文件会变得很大,故在spark相关依赖中加入<scope>provided</scope>
阅读全文
0 0
- spark开发环境搭建(idea和maven)
- spark Idea Maven开发环境搭建
- Spark Idea Maven 开发环境搭建
- Intellij IDEA使用Maven搭建spark开发环境(scala)
- Spark Streaming+IntelliJ Idea+Maven开发环境搭建
- Spark 生产开发环境搭建 Git + Maven + IDEA
- Winows7下搭建Spark Streaming+IDEA+Maven开发环境
- Spark 开发环境搭建(3)IDEA +Maven 方式导出jar包
- Spark(八) -- 使用Intellij Idea搭建Spark开发环境
- Spark(八) -- 使用Intellij Idea搭建Spark开发环境
- 8,数据挖掘环境搭建-IDEA MAVEN搭建Spark开发环境
- 9,数据挖掘环境搭建-IDEA MAVEN搭建Spark开发环境,2个问题
- 分别用Eclipse和IDEA搭建Scala+Spark开发环境
- hadoop spark环境搭建及idea scala maven集成开发spark任务
- 使用IDEA构建Spark开发环境(支持maven)
- 使用IDEA构建Spark Scala开发环境(支持maven)
- 如何使用IntelliJ IDEA搭建spark开发环境(上)
- Spark Scala IntelliJ IDEA开发环境搭建(入门)
- 利用模板类迭代器实现链表
- 60. Permutation Sequence
- dedecms登录后台是白板的问题
- PHP配置,PHP模块安装
- [Python数据分析-01]Pandas数据结构之Series
- spark开发环境搭建(idea和maven)
- Django网站建设-GMOOC-后台管理系统
- h5学习笔记:flex
- 20171114
- 10.4单链表基本运算
- 【docker】简介
- Node遍历目录中的文件
- django用户注册登陆点赞思路2017/11/13日记录
- Android-App工程结构