Spark的交互式脚本是一种学习API的简单途径,也是分析数据集交互的有力工具。
Spark抽象的分布式集群空间叫做Resilient Distributed Dataset (RDD)弹性数据集。
其中,RDD有两种创建方式:
(1)、从Hadoop的文件系统输入(例如HDFS);
(2)、有其他已存在的RDD转换得到新的RDD;
下面进行简单的测试:
1. 进入SPARK_HOME/bin下运行命令:
- $./spark-shell
2. 利用HDFS上的一个文本文件创建一个新RDD:
- scala> var textFile = sc.textFile("hdfs://localhost:50040/input/WordCount/text1");
- textFile: org.apache.spark.rdd.RDD[String] = MappedRDD[1] at textFile at <console>:12
3. RDD有两种类型的操作 ,分别是Action(返回values)和Transformations(返回一个新的RDD)
(1)Action相当于执行一个动作,会返回一个结果:
- scala> textFile.count() // RDD中有多少行
输出结果2:
- 14/11/11 22:59:07 INFO spark.SparkContext: Job finished: count at <console>:15, took 5.654325469 s
- res1: Long = 2
- scala> textFile.first() // RDD第一行的内容
结果输出:
- 14/11/11 23:01:25 INFO spark.SparkContext: Job finished: first at <console>:15, took 0.049004829 s
- res3: String = hello world
(2)Transformation相当于一个转换,会将一个RDD转换,并返回一个新的RDD:
- scala> textFile.filter(line => line.contains("hello")).count() // 有多少行含有hello
结果输出:
- 14/11/11 23:06:33 INFO spark.SparkContext: Job finished: count at <console>:15, took 0.867975549 s
- res4: Long = 2
4. spark shell的WordCount
- scala> val file = sc.textFile("hdfs://localhost:50040/input")
- scala> val count = file.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_+_)
- scala> count.collect()
输出结果:
- 14/11/11 23:11:46 INFO spark.SparkContext: Job finished: collect at <console>:17, took 1.624248037 s
http://blog.csdn.net/yeruby/article/details/41043039
相关推荐
spark-shell对于快速测试和学习Spark应用非常有用。它将SparkSession作为默认上下文,用户不需要显式创建即可直接使用。 8. Spark Standalone模式 Spark Standalone模式是指Spark自己的集群管理器,它允许用户在...
3.Spark编程模型(上)--概念及SparkShell实战.pdf 3.Spark编程模型(下)--IDEA搭建及实战.pdf 4.Spark运行架构.pdf 5.Hive(上)--Hive介绍及部署.pdf 5.Hive(下)--Hive实战.pdf 6.SparkSQL(上)--SparkSQL简介...
02_尚硅谷大数据技术之SparkCore.docx详细讲解了Spark Core的基本概念,包括RDD(弹性分布式数据集)、作业(Job)、任务(Task)和Stage的生命周期,以及如何使用Spark Shell进行交互式编程。 二、Spark SQL与数据...
8. **Spark Shell**:Spark提供了一个交互式的Shell环境,用户可以直接在Shell中编写Spark程序并立即运行,方便测试和探索数据。 9. **Spark部署模式**:Spark支持多种部署模式,包括本地模式、Standalone集群模式...
此外,可能会介绍Spark Shell和DataFrame API,这些都是Spark用户日常工作中常用的工具。 《大数据Spark企业级实战版》可能更倾向于实际应用,书中可能包含了许多真实的企业案例,展示了如何将Spark应用于各种业务...
3. **Spark Shell和Spark Submit**:学习如何在命令行中启动Spark Shell进行交互式编程,以及如何使用Spark Submit提交批处理作业。 4. **Scala编程基础**:复习Scala的变量、函数、类、对象、模式匹配等基础语法,...
- **交互式编程环境**:Spark Shell等工具的支持使得开发者可以在编写代码的同时即时查看结果,极大地提高了开发效率。 - **全栈解决方案**:随着Spark的发展,除了基本的批处理和机器学习功能外,还增加了实时计算...
3. **Spark Shell与Spark SQL**:Spark Shell是交互式探索数据的工具,我们将学习如何使用它进行数据操作。此外,Spark SQL作为Spark处理结构化数据的模块,会详细讲解如何创建DataFrame和DataSet,以及执行SQL查询...
3.Spark编程模型(上)--概念及SparkShell实战.pdf 3.Spark编程模型(下)--IDEA搭建及实战.pdf 4.Spark运行架构.pdf 5.Hive(上)--Hive介绍及部署.pdf 5.Hive(下)--Hive实战.pdf 6.SparkSQL(上)--SparkSQL简介...
本学习笔记集中介绍了Spark SQL在spark-shell中的操作方法,以及如何使用Spark进行数据清洗和转换成DataFrame的操作。 首先,Spark SQL是Spark用于处理结构化数据的一个组件,它提供了SQL接口,可以执行SQL查询。...
Spark Shell允许用户进行交互式数据分析,增强了开发体验。例如,使用Python,可以通过简单的几行代码读取、转换和处理数据。 Generality(通用性)意味着Spark不仅仅是一个计算框架,它还支持SQL查询、流处理、...
### Spark SQL 学习笔记知识点总结 #### 一、Spark SQL 概述 - **定义**:Spark SQL 是 Apache Spark 的一个模块,用于处理结构化数据。它提供了 DataFrame 和 Dataset API,以及支持 SQL 查询的能力。这些特性...
本文将基于“Spark学习总结-入门.rar”这份资料,对Spark的基础知识进行详细阐述,帮助读者深入理解Spark的核心概念和使用方法。 1. **Spark概述** Spark最初由加州大学伯克利分校AMPLab开发,后来成为Apache顶级...
3.Spark编程模型(上)--概念及SparkShell实战.pdf 3.Spark编程模型(下)--IDEA搭建及实战.pdf 4.Spark运行架构.pdf 5.Hive(上)--Hive介绍及部署.pdf 5.Hive(下)--Hive实战.pdf 6.SparkSQL(上)--SparkSQL简介...
通过使用`sudospark-shell`命令,我们可以启动Spark Shell,并指定执行器内存、驱动器内存、执行器核心数以及执行器数量等参数。例如,可以通过`--executor-memory 2g --driver-memory 1g --total-executor-cores 2 ...
Spark 的交互式脚本是一种学习 API 的简单途径,也是分析数据集交互的有力工具。Spark 包含多种运行模式,可使用单机模式,也可以使用分布式模式。为简单起见,本节采用单机模式运行 Spark。 无论采用哪种模式,只要...