Scala+Spark+Hadoop+IDEA实现WordCount单词计数,上传并执行任务(简单实例-下)

简介: Scala+Spark+Hadoop+IDEA实现WordCount单词计数,上传并执行任务(简单实例-下)

Scala+Spark+Hadoop+IDEA上传并执行任务

本文接续上一篇文章,已经在IDEA中执行Spark任务执行完毕,测试成功。

上文链接:Scala +Spark+Hadoop+Zookeeper+IDEA实现WordCount单词计数(简单实例)

一、打包

1.1  将setMaster注释掉

package day05
 
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
 
import scala.collection.mutable
 
/**
  * 打包注意事项:1,将setMaster注释掉
  *             2,不需要打印
  */
object SparkWordCount {
 
  def main(args: Array[String]): Unit = {
    //配置信息类
    //1,setAppName(任务名称) setMaster(表示开启多少个线程运行)
    System.setProperty("hadoop.home.dir", "/usr/local/hadoop-2.7.5")
 
    val conf: SparkConf = new SparkConf().setAppName("SparkWordCount")//.setMaster("local[*]")
 
    //上下文对象
    val sc: SparkContext = new SparkContext(conf)
 
    //读取数据(数据通过数组 args进入)
    val lines: RDD[String] = sc.textFile(args(0))
 
    //处理数据
    val map01: RDD[(String, Int)] = lines.flatMap(_.split(" ")).map((_, 1))
    val wordCount: RDD[(String, Int)] = map01.reduceByKey(_ + _).sortBy(_._2, false)
 
    val wcToBuffer: mutable.Buffer[(String, Int)] = wordCount.collect().toBuffer
//    println(wcToBuffer)
    sc.stop()
  }
}

1.2 打开 clear 并打包

(1)工具栏-->view-->Tool Buttons(右侧出现 Maven Project)

(2)双击clean

(3)双击package

打包结果:(出现target、连个jar包)

注意:如果出现ClassNotFound 并且出现了只有一个Jar包的话,就将其他的没有用的类删掉,只留下当前类。

1.3 拷贝生成的Jar包

二、上传

2.1 将Jar包拷贝到指定目录下(我这儿将scala02-1.0-SNAPSHOT.jar改名为 swc.jar)

/root/swc.jar

2.2 在spark中运行

./bin/spark-submit --class day05.SparkWordCount --master spark://centos01:7077 --executor-memory 1g --total-executor-cores 2 /root/swc.jar hdfs://centos01:9000/ws hdfs://centos01:9000/outp

–class设定的是程序的入口点,也就是我们的驱动类,这点和Hadoop MapReduce 程序很相似。

–master是我们设置的master URL,这里官方有详细的参数列表:

  • local:在本地的单线程运行
  • local[k]:在本地多线程运行,运行线程数为K
  • local[*]:在本地多线程运行,尽可能多的线程数量
  • spark://HOST:PORT :连接上spark单点模式运行,端口PORT是提前配置好的,默认端口7077
  • mesos://HOST:PORT :连接上mesos(好像是一种集群支持工具,没有深入研究)
  • yarn :基于Hadoop的yarn运行,集群的位置在 HADOOP_CONF_DIR ,YARN_CONF_DIR这两个变量指定的位置

2.3 从Web ui查看信息是否上传成功。

(1)查看spark任务

(2)查看hdfs 文件上传

(3)通过命令来查看内容。

[root@centos01 spark-1.6.3-bin-hadoop2.6]# hdfs dfs -cat /outp/part-00000
(hello,12)
(java,9)
[root@centos01 spark-1.6.3-bin-hadoop2.6]# hdfs dfs -cat /outp/part-00001
(scala,7)
(new,7)
(work,7)
(python,5)
[root@centos01 spark-1.6.3-bin-hadoop2.6]# hdfs dfs -cat /outp/part-00002
(javaScript,4)
(jvm,4)
(world,3)
[root@centos01 spark-1.6.3-bin-hadoop2.6]# 

完美呈现~~

目录
相关文章
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
285 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
321 3
|
分布式计算 资源调度 数据可视化
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
251 1
|
分布式计算 资源调度 Hadoop
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
255 1
|
分布式计算 Hadoop Java
Hadoop_MapReduce中的WordCount运行详解
MapReduce的WordCount程序在分布式系统中计算大数据集中单词出现的频率时,提供了一个可以复用和可伸缩的解决方案。它体现了MapReduce编程模型的强大之处:简单、可靠且将任务自动分布到一个集群中去执行。它首先运行一系列的Map任务来处理原始数据,然后通过Shuffle和Sort机制来组织结果,最后通过运行Reduce任务来完成最终计算。因此,即便数据量非常大,通过该模型也可以高效地进行处理。
439 1
|
分布式计算 监控 Hadoop
Hadoop任务执行失败
【7月更文挑战第12天】
665 10
|
DataWorks 关系型数据库 MySQL
DataWorks产品使用合集之Aataworks运行scala实例,如何配置参数
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
157 0
|
6月前
|
人工智能 分布式计算 大数据
大数据≠大样本:基于Spark的特征降维实战(提升10倍训练效率)
本文探讨了大数据场景下降维的核心问题与解决方案,重点分析了“维度灾难”对模型性能的影响及特征冗余的陷阱。通过数学证明与实际案例,揭示高维空间中样本稀疏性问题,并提出基于Spark的分布式降维技术选型与优化策略。文章详细展示了PCA在亿级用户画像中的应用,包括数据准备、核心实现与效果评估,同时深入探讨了协方差矩阵计算与特征值分解的并行优化方法。此外,还介绍了动态维度调整、非线性特征处理及降维与其他AI技术的协同效应,为生产环境提供了最佳实践指南。最终总结出降维的本质与工程实践原则,展望未来发展方向。
382 0
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
976 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
9月前
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
501 79

相关实验场景

更多