《循序渐进学Spark》一1.6 使用Spark Shell开发运行Spark程序

简介:

本节书摘来自华章出版社《循序渐进学Spark》一书中的第1章,第1.6节,作者 小象学院 杨 磊,更多章节内容可以访问云栖社区“华章计算机”公众号查看。


1.6 使用Spark Shell开发运行Spark程序

Spark Shell是一种学习API的简单途径,也是分析数据集交互的有力工具。

虽然本章还没涉及Spark的具体技术细节,但从总体上说,Spark弹性数据集RDD有两种创建方式:

从文件系统输入(如HDFS)。

从已存在的RDD转换得到新的RDD。

现在我们从RDD入手,利用Spark Shell简单演示如何书写并运行Spark程序。下面以word count这个经典例子来说明。

1)启动spark shell: cd 进SPARK_HOME/bin, 执行命令。

./spark-shell

2)进入scala命令行,执行如下命令:

scala> val file = sc.textFile("hdfs://localhost:50040/hellosparkshell")

scala> val count = file.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_+_)

scala> count.collect()

首先从本机上读取文件hellosparkshell,然后解析该文件,最后统计单词及其数量并输出如下:

15/09/29 16:11:46 INFO spark.SparkContext: Job finished: collect at <console>:17, took 1.624248037 s

res5: Array[(String, Int)] = Array((hello,12), (spark,12), (shell,12), (this,1), (is,1), (chapter,1), (three,1)

相关文章
|
Shell Linux C++
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
390 0
|
分布式计算 监控 Spark
Spark 任务运行时日志分析
Spark 任务运行时日志分析
413 0
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何开发ODPS Spark任务
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
445 2
|
存储 分布式计算 调度
Spark Master HA 主从切换过程不会影响到集群已有作业的运行, 为什么?
Spark Master 的高可用性(HA)机制确保主节点故障时,备用主节点能无缝接管集群管理,保障稳定运行。关键在于: 1. **Driver 和 Executor 独立**:任务执行不依赖 Master。 2. **应用状态保持**:备用 Master 通过 ZooKeeper 恢复集群状态。 3. **ZooKeeper 协调**:快速选举新 Master 并同步状态。 4. **容错机制**:任务可在其他 Executor 上重新调度。 这些特性保证了集群在 Master 故障时仍能正常运行。
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
398 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
SQL 弹性计算 资源调度
云服务器 ECS产品使用问题之bin/spark-sql --master yarn如何进行集群模式运行
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
分布式计算 DataWorks 网络安全
DataWorks操作报错合集之还未运行,spark节点一直报错,如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
SQL 分布式计算 大数据
Spark开发实用技巧-从入门到爱不释手
Spark开发实用技巧-从入门到爱不释手
248 0
|
Shell Linux C语言
【Shell 命令集合 系统设置 内置命令】⭐⭐Linux 测量程序的执行时间和资源使用情况 time命令 使用指南
【Shell 命令集合 系统设置 内置命令】⭐⭐Linux 测量程序的执行时间和资源使用情况 time命令 使用指南
603 0
|
Shell Linux 开发工具
操作系统(Linux)外壳程序shell 、用户、权限
操作系统(Linux)外壳程序shell 、用户、权限