1.Wordcount.scala(本地模式)

package com.Mars.spark

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

/**
* Created by Mars on 2017/1/11.
*/
object Wordcount {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("SparkwordcountApp").setMaster("local")
val sc = new SparkContext(conf)
//SparkContext 是把代码提交到集群或者本地的通道 val line = sc.textFile("D:/Test/wordcount.txt")
//把读取的内容保存给line变量,其实line是一个MappedRDD,Spark的所有操作都是基于RDD的
line.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_+_).collect.foreach(println)
sc.stop
}
}

上述代码是基于IDEA运行的本地模式。

wordcount.txt

hadoop spark tez mllib
mllib tez tez hive
hadoop hive hive docker

运行结果:

2.打成jar上传集群代码

package com.Mars.spark

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

/**
* Created by Mars on 2017/1/11.
*/
object Wordcount {
def main(args: Array[String]) {
if(args.length < 1) {
System.out.println("spark-submit --master yarn-client --class com.Mars.spark.Wordcount --name wordcount --executor-memory 400M --driver-memory 512M wordcount.jar hdfs://192.168.0.33:8020/tmp/wordcount.txt")
System.exit(1)
}
val conf = new SparkConf().setAppName("SparkwordcountApp")
val sc = new SparkContext(conf)
//SparkContext 是把代码提交到集群或者本地的通道
val line = sc.textFile(args(0))
//把读取的内容保存给line变量,其实line是一个MappedRDD,Spark的所有操作都是基于RDD的
line.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_+_).collect.foreach(println)
sc.stop
}
}

  

最新文章

  1. PHP unserialize()
  2. sublime 插件总结
  3. HTTP协议基本知识
  4. CentOS7安装图形界面和修改运行级别
  5. CE_现金银行总行分行设定详解(案例)
  6. Java 分割文件 注意事项
  7. 批量还原数据库 SQL Server 2008
  8. MySQL约束
  9. 10.18 noip模拟试题
  10. CSS3 背景属性
  11. 通过 dhcp-agent 访问 Metadata - 每天5分钟玩转 OpenStack(168)
  12. LVS+keepalived负载均衡
  13. Silverlight/WPF 系列汇总
  14. 20175213 2018-2019-2 《Java程序设计》第8周学习总结
  15. python的partial()用法说明
  16. Rancher2.0导入本地RKE Kubernetes集群图解
  17. 预浸料(Prepreg,PreimpregnatedMaterials)
  18. PAT 1076 Wifi密码
  19. F - Rails
  20. idea ----&gt; 学习笔记

热门文章

  1. openGL绘制正方形
  2. C#程序的157个建议
  3. C#算两个时间段相差的时间
  4. 运动检测(前景检测)之(一)ViBe
  5. js中内置有对象
  6. 基于Redis的CustomerSessionProvider(二)
  7. IOS学习之路十七(通过delegate进行页面传值)
  8. C# 代理应用 - Cachable
  9. SVN Access to &#39;/svn/Test/!svn/me&#39; forbidden,不能更新解决办法
  10. 深入浅出MyBatis-Sqlsession