运行Spark程序-在shell中运行 --SparkConf 和 SparkContext

SparkConf 类用于配置 Spark 应用程序的各种参数。通过 SparkConf 类,你可以设置应用程序的名称、运行模式(如本地模式、集群模式)、资源分配(如内存、CPU 核心数)等。主要作用配置应用程序参数:可以设置 Spark 应用程序的各种属性,如应用程序名称、主节点地址等。

SparkContext 是 Spark 应用程序的入口点,它代表了与 Spark 集群的连接。通过 SparkContext,你可以创建 RDD(弹性分布式数据集)、累加器、广播变量等,还可以与外部数据源进行交互。

准备工作:启动hdfs集群,打开hadoop100:9870,在wcinput目录下上传一个包含很多个单词的文本文件。

写交互式代码:启动之后在spark-shell中写代码。

进入环境:spark-shell --master yarn
逐句写代码:

java 复制代码
// 读取文件,得到RDD
    val rdd1 = sc.textFile("hdfs://hadoop100:8020/wcinput/words.txt")
    // 将单词进行切割,得到一个存储全部单词的RDD
    val rdd2= fileRDD.flatMap(line => line.split(" "))
    // 将单词转换为元组对象,key是单词,value是数字1
    val rdd3= wordsRDD.map(word => (word, 1))
    // 将元组的value按照key来分组,对所有的value执行聚合操作(相加)
    val rdd4= wordsWithOneRDD.reduceByKey((a, b) => a + b)
    // 收集RDD的数据并打印输出结果
    rdd4.collect().foreach(println)
相关推荐
掘金-我是哪吒1 小时前
分布式微服务系统架构第156集:JavaPlus技术文档平台日更-Java线程池使用指南
java·分布式·微服务·云原生·架构
亲爱的非洲野猪2 小时前
Kafka消息积压的多维度解决方案:超越简单扩容的完整策略
java·分布式·中间件·kafka
活跃家族2 小时前
分布式压测
分布式
涤生大数据2 小时前
Apache Spark 4.0:将大数据分析提升到新的水平
数据分析·spark·apache·数据开发
搞笑的秀儿2 小时前
信息新技术
大数据·人工智能·物联网·云计算·区块链
SelectDB3 小时前
SelectDB 在 AWS Graviton ARM 架构下相比 x86 实现 36% 性价比提升
大数据·架构·aws
二二孚日3 小时前
自用华为ICT云赛道Big Data第五章知识点-Flume海量日志聚合
大数据·华为
前端世界4 小时前
HarmonyOS开发实战:鸿蒙分布式生态构建与多设备协同发布全流程详解
分布式·华为·harmonyos
DavidSoCool4 小时前
RabbitMQ使用topic Exchange实现微服务分组订阅
分布式·微服务·rabbitmq
二二孚日5 小时前
自用华为ICT云赛道Big Data第四章知识点-Flink流批一体分布式实时处理引擎
大数据·华为