当前位置: 首页 > news >正文

spark shell的学习

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

spark shell的学习 博客分类: spark

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

Spark抽象的分布式集群空间叫做Resilient Distributed Dataset (RDD)弹性数据集。

其中,RDD有两种创建方式:

(1)、从Hadoop的文件系统输入(例如HDFS);

(2)、有其他已存在的RDD转换得到新的RDD;

下面进行简单的测试:

 

1. 进入SPARK_HOME/bin下运行命令:

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. $./spark-shell  


2. 利用HDFS上的一个文本文件创建一个新RDD:

 

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. scala> var textFile = sc.textFile("hdfs://localhost:50040/input/WordCount/text1");  
[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. textFile: org.apache.spark.rdd.RDD[String] = MappedRDD[1] at textFile at <console>:12  


3. RDD有两种类型的操作 ,分别是Action(返回values)和Transformations(返回一个新的RDD)

 

(1)Action相当于执行一个动作,会返回一个结果:

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. scala> textFile.count() // RDD中有多少行  

 

 

输出结果2:

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. 14/11/11 22:59:07 INFO spark.SparkContext: Job finished: count at <console>:15, took 5.654325469 s  
  2. res1: Long = 2  

 

 

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. scala> textFile.first() // RDD第一行的内容  

结果输出:

 

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. 14/11/11 23:01:25 INFO spark.SparkContext: Job finished: first at <console>:15, took 0.049004829 s  
  2. res3: String = hello world  

 

(2)Transformation相当于一个转换,会将一个RDD转换,并返回一个新的RDD:

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. scala> textFile.filter(line => line.contains("hello")).count() // 有多少行含有hello  

结果输出:

 

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. 14/11/11 23:06:33 INFO spark.SparkContext: Job finished: count at <console>:15, took 0.867975549 s  
  2. res4: Long = 2  


4. spark shell的WordCount

 

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. scala> val file = sc.textFile("hdfs://localhost:50040/input")  
  2. scala>  val count = file.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_+_)  
  3. scala> count.collect()  

 

输出结果:

 

[java]  view plain copy print ? 在CODE上查看代码片 派生到我的代码片
 
  1. 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

转载于:https://my.oschina.net/xiaominmin/blog/1597255

相关文章:

  • 安卓模拟器BlueStacks+TCPdump对APP抓包分析
  • maven scope含义的说明
  • Javac编译器源代码分析
  • 物极必反,滥用闭包的结果就是回归结构化编程
  • 2017 年终总结 —— 在路上
  • 加密算法(对称加密)AES、DES (非对称加密)RSA、DSA
  • Hadoop集群(第10期)_MySQL关系数据库
  • python学习笔记(四)字符串及字符串操作
  • 【Dalston】【第六章】API服务网关(Zuul) 下
  • 解决 Nginx + PHP-FPM (Permission denied)报错的办法
  • sqlvarchar后自动填充空格解决办法(SET ANSI_PADDING)
  • 当文本输入框和是否勾选在同一列表时,你懵圈了吗
  • 01月03日三周二次【Python基础进阶】
  • linux下SVN忽略文件/文件夹的方法
  • Docker Registry Server 搭建,配置免费HTTPS证书,及拥有权限认证、TLS 的私有仓库
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • extract-text-webpack-plugin用法
  • HTTP中GET与POST的区别 99%的错误认识
  • 大数据与云计算学习:数据分析(二)
  • 前言-如何学习区块链
  • 系统认识JavaScript正则表达式
  • 7行Python代码的人脸识别
  • mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用 ...
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (2)STL算法之元素计数
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (6)添加vue-cookie
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)ssm高校实验室 毕业设计 800008
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (一)为什么要选择C++
  • (终章)[图像识别]13.OpenCV案例 自定义训练集分类器物体检测
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)Google的Objective-C编码规范
  • .CSS-hover 的解释
  • .java 9 找不到符号_java找不到符号
  • .Mobi域名介绍
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .NET : 在VS2008中计算代码度量值
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .考试倒计时43天!来提分啦!
  • [ vulhub漏洞复现篇 ] JBOSS AS 4.x以下反序列化远程代码执行漏洞CVE-2017-7504
  • [ 环境搭建篇 ] 安装 java 环境并配置环境变量(附 JDK1.8 安装包)
  • [2013AAA]On a fractional nonlinear hyperbolic equation arising from relative theory
  • [C#]winform制作圆形进度条好用的圆环圆形进度条控件和使用方法
  • [C++]类和对象【下】
  • [DAX] MAX函数 | MAXX函数
  • [DL]深度学习_Feature Pyramid Network
  • [Editor]Unity Editor类常用方法
  • [IE9] IE9 Beta崩溃问题解决方案
  • [JDK工具-2] javap 类文件解析工具-帮助理解class文件,了解Java编译器机制
  • [js] 正则表达式
  • [leetcode top100] 0924 找到数组中消失的数,合并二叉树,比特位计数,汉明距离