Spark的简单介绍,安装与简单的使用;spark appliction与MapReduce application的区别

spark是什么

Apache Spark™ is a unified analytics engine for large-scale data processing.
统一分析引擎为海量数据处理
统一:什么样的数据都能处理分析,什么类型的数据都可以处理,实时,离线,流式都可以

MapReduce处理数据的流程

map,reduce函数
将分析的中间结果放在磁盘中,并且后续进行分析数据的时候,再次从磁盘中去读取数据,以往此往返。。。

spark框架是如何处理数据的

并行计算的思想、
分而治之的思想
继承了scala集合高阶函数

处理数据的思想

将 要分析的数据放到集合中去,然后调用集合的高阶函数处理数据

Runs Everywhere 可以运行在任何环境

-a.spark要处理的数据在哪里

hdfs/hive/HBASE/ORC/parquet/csv/tsv/jdbc/redis/mangdb/ES/…
spark能从哪里读数据,就可以往那里写数据

-b.spark程序运行在哪里

本地模式
集群模式
Yarn,Standalone,mesos Cluster

spark分析数据的过程(3步骤)

第一步、数据的读取(输入)

	将要处理的数据读取封装到一个集合RDD中(类别Scala中List列表)
	val inputRDD = sc.textFile(‘…”)

第二步、数据处理(分析)

	调用集合RDD中函数(高阶函数)进行处理分析
	RDD –>函数 ->另外一个RDD :transformation函数 
	val outpuRDD = inputRDD.#(#:基本就是List中函数)
	比如:
		map\flatMap\filter\reducebyKey

第三步、数据的输出(输出)

	调用RDD中函数,返回的不是RDD类型
	outputRDD.#  :此类型函数称为Action函数
		foreach\count\sum\first

3步放在一起,就是链式编程

	sc.textFile(…).transformation().action

Spark的安装

Spark安装的依赖

JDK8
scala

Spark的安装

到官网下载Spark的安装包,解压到Linux目录下
将spark目录下的conf目录中的配置文件重命名

mv spark-env.sh.template spark-env.sh

修改配置文件、添加JAVA环境,Scala环境,Hadoop的配置文件的目录

在这里插入图片描述

启动

帮助命令:
bin/spark-shell –help
启动交互式命令
bin/spark-shell --master local[2]

是否启动成功

不报错,进入交互式命令行
webui上查看
4040

简单测试

在这里插入图片描述
在这里插入图片描述

可能出现的问题

如果hadoop中配置了hive
spark在启动的时候,会去读取hive的元数据
如果hive 的元数据服务没有开启
就会抛出异常

spark appliction与MapReduce application的区别

spark-shell –master local[2]

	运行一个程序在本地模式
	[2] ->表示的 线程thread
	每个task运行在一个线程Thread里面,都需要1core CPU

对于MapReduce application来讲

	一个MapReduce application就是一个Mapreduce job
	每个task(map task还是reduce task)运行在进程中(JVM process)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无名一小卒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值