【Spark】SparkShell的运行


简介:spark-shell是Spark自带的交互式Shell程序,方便用户进行交互式编程,用户可以在该命令行下用scala编写spark程序。

spark shell的流程

  • 启动 Spark shell

  • 进入Spark 安装目录后执行 spark-shell --master master 就可以提交Spark 任务

  • Spark shell 的原理是把每一行 Scala 代码编译成类, 最终交由 Spark 执行
    Master的地址可以有如下几种设置方式

在这里插入图片描述


具体操作

  1. 在虚拟机中创建文件/export/data/wordcount.txt
    在这里插入图片描述
  2. 启动Spark shell
    在这里插入图片描述
  3. 执行如下代码
    在这里插入图片描述

注:
1.上述代码中 sc 变量指的是 SparkContext, 是 Spark 程序的上下文和入口,正常情况下我们需要自己创建, 但是如果使用 Spark shell 的话, Spark shell 会帮助我们创建, 并且以变量 sc 的形式提供给我们调用
2.flatMap(.split(" ")) 将数据转为数组的形式, 并展平为多个数据
3.map
, 1 将数据转换为元组的形式
4.reduceByKey(_ + _) 计算每个 Key 出现的次数

  1. 运行流程
    在这里插入图片描述

读取HDFS上的文件

  1. 上传文件到HDFS中
    在这里插入图片描述
  2. 在Spark shell中访问HDFS
    在这里插入图片描述

访问的几种方式

  1. 可以通过指定 HDFS 的 NameNode 地址直接访问, 类似于上面代码中的 sc.textFile("hdfs://node01:8020/dataset/wordcount.txt")
    在这里插入图片描述

  2. 也可以通过向 Spark 配置 Hadoop 的路径, 来通过路径直接访问
    2.1. 在 spark-env.sh 中添加 Hadoop 的配置路径
    export HADOOP_CONF_DIR="/etc/hadoop/conf"

    2.2. 在配置过后, 可以直接使用 hdfs:///路径 的形式直接访问
    dd904b1653a52fe15d0bb7808d98b9af
    2.3. 在配置过后, 也可以直接使用路径访问
    3eabed898ed57db55370c25fad555072

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值