配置文件:

pom.xml

  <properties>
<scala.version>2.11.8</scala.version>
<spark.version>2.2.0</spark.version>
<hadoop.version>2.6.0-cdh5.7.0</hadoop.version>
</properties> <repositories>
<!--添加cloudera仓库依赖, CDH版本是cloudera仓库下的-->
<repository>
<id>cloudera</id>
<name>cloudera</name>
<url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
</repository>
</repositories> <dependencies> <!--添加scala依赖-->
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency> <!--添加spark-code的依赖,scala版本2.11-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>${spark.version}</version>
</dependency> <!--添加hadoop-client的依赖-->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>${hadoop.version}</version>
</dependency> </dependencies>


测试代码:

传入参数:

WordCountApp.scala

package com.ruozedata

import org.apache.spark.{SparkConf, SparkContext}

object WordCountApp extends App {

  val conf = new SparkConf()
val sc = new SparkContext(conf) //输入(用args()传入参数,非硬编码)
val dataFile = sc.textFile(args(0)) //业务逻辑
val outputFile = dataFile.flatMap(_.split(",")).map((_,1)).reduceByKey(_+_) //输出文件
outputFile.saveAsTextFile(args(1)) //关闭流(输入流)
sc.stop()
}


CLI中测试:



打包提交到服务器并执行:
























Linux下本地模式提交到服务器: (在脚本中配置)

$ /home/hadoop/app/spark/bin/spark-submit \
--class com.ruozedata.WordCountApp \
--master local[2] \
--name WordCountApp \
/home/hadoop/lib/spark/SparkCodeApp-1.0.jar \
/wc_input/ /wc_output

具体配置参考Spark官网:

http://spark.apache.org/docs/2.2.0/rdd-programming-guide.html

http://spark.apache.org/docs/2.2.0/configuration.html

http://spark.apache.org/docs/2.2.0/submitting-applications.html

最新文章

  1. 【原创】Kakfa utils源代码分析(二)
  2. QT5.5.0版本添加icon图标步骤
  3. 05章 OGNL
  4. windows 命令修改IP
  5. MSChart使用之动态生成多个多行ChartArea
  6. Android界面优化方法
  7. UVa 442 Matrix Chain Multiplication(矩阵链,模拟栈)
  8. 采用rest接口对接而非webservice
  9. ZABBIX自定义用户KEY与参数USERPARAMETERS监控脚本输出
  10. 201521123067 《Java程序设计》第13周学习总结
  11. CSS选择器、样式、盒模型
  12. Zxing2.1扫描取景框变形问题解决
  13. sql查询语句示例
  14. Android 编程下通过 zipalign 对 APK 文件进行优化
  15. linux系统编程之信号(七):被信号中断的系统调用和库函数处理方式
  16. Linux下svn的安装与部署
  17. Vue 不睡觉教程1-从最土开始
  18. C# 类库下 读取不到config里节点的问题
  19. 获取ArcGIS安装路径
  20. iframe的应用量还是这么大

热门文章

  1. MYSQL第二课
  2. 海思Hi3519A MPP从入门到精通(一 系统概述)
  3. Codeforces Round #604 (Div. 2) 练习A,B题解
  4. 在Python中用许多点找到两个最远点的点
  5. Springboot项目启动不了。也不打印任何日志信息。
  6. css3/sass 样式记录
  7. luoguP4094 [HEOI2016/TJOI2016]字符串
  8. eclipse git pull 代码 failed 并且报DIRTY_WORKTREE.classpath
  9. NG-ZORRO 使用相关
  10. 2019 SDN阅读作业