Spark简介及linux环境搭建(local本地模式)

Spark和java的集成demo请点击

官方网址:https://spark.apache.org/
定义:

Unified engine for large-scale data analytics
Spark是用于大规模数据处理的统一分析引擎

背景 Spark风雨十年
2009年Spark诞生于加州大学伯克利分校AMP实验室,
2013年其原创团队建立了Databricks公司,并将Spark捐献给了Apache软件基金会,
2014年成为Apache顶级项目,2016年发布了Spark2.0,2019年10月发布
Spark3.0预览版,2020年6月18日Spark3.0正式发布
Spark的发展历史,经过几个重要阶段,如下图所示

在这里插入图片描述

自2009年伯克利的AMP实验室将Spark开源以来,Spark在大数据处理领域发展相当迅速
,并获得了巨大的成功。如今,Spark已经成为最活跃的开源项目之一,
是大数据处理、数据科学、机器学习和数据分析工作负载的事实上的统一引擎
从世界著名的开发者论坛Stack Overflow的数据可以看出,2015年开始Spark
每月的问题提交数量已经超越Hadoop,而2018年Spark Python 版本的API
PySpark每月的问题提交数量也已超过Hadoop.2019年排名Spark第一,PySark
第二;而十年累计排名Spark第一,PySpark第三。按照这个趋势发展下去,Spark和
PySpark在未来很长一段时间内应该还会处于垄断地位

在这里插入图片描述

Spark环境搭建——local本地模式

将从下面三个步骤展开

原理
操作
测试
一:准备工作
1.保证有JDK(Spark 源码是使用Scala编写的,编译成.class文件,运行
在JVM之上)
2.Scala的SDK?—不在Linux上进行Spark开发则不需要
3.安装包下载
目前使用Spark最新稳定版本:3.0.x系列

http://archive.apache.org/dist/spark/spark-3.0.1/
二:原理

在本地使用多线程模拟Spark集群中的各个角色
在这里插入图片描述

三:操作
1.上传:将安装包上传至linux
2.解压  tar -zxvf spark-3.0.1-bin-hadoop2.7.tgz
3.改权限,如果有权限问题,可以修改为root,方便学习时操作,实际
中使用运维分配的用户和权限即可
chown -R root /export/server/spark-3.0.1-bin-hadoop2.7
chgrp -R root /export/server/spark-3.0.1-bin-hadoop2.7

在这里插入图片描述

四:测试
1.上传测试文件
2.启动bin目录下的spark-shell
/xxx/spark/spark-3.0.1-bin-hadoop2.7/bin
3.运行成功以后,有如下提示信息

在这里插入图片描述

4.打开webUI: http://shcas.com.cn:4040  (浏览器可以看到spark任务页面)
5.执行命令脚本wordcount

测试代码1(可以直接复制,粘贴到服务器spark启动界面执行):

val textFile = sc.textFile("/app/gzengine/spark/word.txt")
val counts = textFile.flatMap(line => line.split(" "))
                 .map(word => (word, 1))
                 .reduceByKey(_ + _)
counts.collect

测试代码1

val textFile = sc.textFile("/app/gzengine/spark/word.txt")
val counts = textFile.flatMap(line => line.split(" "))
                 .map(word => (word, 1))
                 .reduceByKey(_ + _)
counts.saveAsTextFile("/xxx/spark/text.txt")
五:补充

总的来说,开箱即用,非常简单。除了local本地模式,还有独立集群、独立集群高可用、on yarn 等部署方式,需要用到多台服务器,在配置文件中配置

Spark环境搭建-Standalone-独立集群-原理
在这里插入图片描述
Spark环境搭建-Standalone-HA-独立集群(高可用)-原理
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值