Hadoop大数据平台实战(04):Ubuntu 18.04实战安装Spark大数据引擎并统计字符

简介: Spark是一个开源的大数据分析引擎,在Hadoop生态系统中非常的重要组成部分,主要的作用就是分析处理大数据,Spark在大数据生态中的作用是替代之前的mapreduce引擎。Spark的性能测试表名将大数据分析处理的性能提高了100倍。

Spark是一个开源的高性能大数据分析引擎,在Hadoop生态系统中非常的重要组成部分,主要的作用就是分析处理大数据,Spark在大数据生态中的作用是替代之前的mapreduce引擎。Spark的性能测试表名将大数据分析处理的性能提高了100倍。Apache Spark使用最先进的DAG调度程序,查询优化器和物理执行引擎,实现批处理和流数据的高性能分析处理。
Spark可以使用Java,Scala,Python,R和SQL快速编写大数据应用程序。Spark提供80多个高级操作符,可以轻松构建并行应用程序。这也是我们为什么要学习Spark的原因。
1、大数据分析引擎Spark介绍
Apache Spark是高性能开源大数据分析引擎。 它提供Java,Scala,Python和R中的高级API,以及支持通用执行图的优化引擎。 它还支持一组丰富的高级工具,包括用于SQL和结构化数据处理的Spark SQL,用于机器学习的MLlib,用于图形处理的GraphX和Spark Streaming。
Apache Spark是一个开源的分布式通用集群计算框架。最初由加州大学伯克利分校的AMPLab开发,Spark代码库后来被捐赠给Apache软件基金会,该基金会从那时起就一直在维护它.Spark提供了一个接口,用于使用隐式数据并行和容错来编程整个集群。
官方网站;http://spark.apache.org
image
2、Spark版本
最新的版本,2.4,可以下载最新的版本进行安装。
Version Original release date Latest version Release date
0.5 2012-06-12 0.5.1 2012-10-07
0.6 2012-10-14 0.6.2 2013-02-07[36]
0.7 2013-02-27 0.7.3 2013-07-16
0.8 2013-09-25 0.8.1 2013-12-19
0.9 2014-02-02 0.9.2 2014-07-23
1.0 2014-05-26 1.0.2 2014-08-05
1.1 2014-09-11 1.1.1 2014-11-26
1.2 2014-12-18 1.2.2 2015-04-17
1.3 2015-03-13 1.3.1 2015-04-17
1.4 2015-06-11 1.4.1 2015-07-15
1.5 2015-09-09 1.5.2 2015-11-09
1.6 2016-01-04 1.6.3 2016-11-07
2.0 2016-07-26 2.0.2 2016-11-14
2.1 2016-12-28 2.1.3 2018-06-26
2.2 2017-07-11 2.2.3 2019-01-11
2.3 2018-02-28 2.3.3 2019-02-15
2.4 2018-11-02 2.4.0 2018-11-02
2.4 2019-03-31 2.4.1 2019-03-31
https://spark.apache.org/downloads.html
3、安装Java
安装开源的JDK8,免费,不会引起收费问题。

sudo apt install default-jdk

image
查看安装版本 Java -version
image
4、安装Spark
我们选择下载最新的spark-2.4.1,这里先安装单节点,独立模式。

wget https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-2.4.1/spark-2.4.1-bin-hadoop2.7.tgz

image
解压安装文件,这里是有tar工具解压

tar -xf spark-2.4.1-bin-hadoop2.7.tgz

移动
配置参数和环境变量

sudo mv spark-2.4.1-bin-hadoop2.7 /usr/lib/spark

image
修改文件夹目录,方便配置环境变量,后期使用,以后可以选择和Hadoop集成。这里我们先使用单节点模式。暂时不做扩展。

5、启动Spark
我们可以启动一个终端,输入启动命令,来启动Spark进程,单独一个服务进程。

$SPARK_HOME/sbin/start-master.sh

image
后续我们可以用来搭建集群模式。当然也可以对接Hadoop存储系统。
6、测试Spark Shell
Spark的shell提供了一种学习API的简单方法,可以以交互方式分析数据,这个就是个客户的命令窗口,但是是个强大的工具。 它可以在Scala(在Java VM上运行,因此是使用现有Java库的好方法)或Python中使用。 通过在Spark目录中运行以下命令来启动它:
可以打开终端进行测试,输入 spark-shell: 客户的命令

$SPARK_HOME/bin/spark-shell

如果正常出现下面的提示信息,表示已经成功安装Spark。
image
这里使用可以使用Scala语言,也是基于Java JVM的一种语言。
Spark分析引擎的主要抽象是一个名为Dataset的分布式项目集合。我们 可以从Hadoop InputFormats(例如HDFS文件)或通过转换其他数据集来创建数据集,比如读取MySQL数据库或者MongoDB数据库的数据进行分析。 现在我们从Spark安装目录下的README文件的文本创建一个新的数据集,并且编写一顿代码统计字符单词的数量,代码比较简单,做例子参考。

val textFile = spark.read.textFile("README.md")
textFile.count()

image
这里能看到结果是105个。
对于官方的单词统计的例子word-count示例,我们将从参数--master local [8]开始,这表示spark shell的上下文启动8个线程在本地节点上作为master节点。

spark-shell --master local[8]
println("Hello Spark")

image
7、Spark管理界面
可以使用浏览器打开管理界面: http://10.0.0.48:4040。IP地址可以换成本机的IP或者域名。
image
可以看到我们Job,以及执行的时间,任务状态信息等。
后续集群模式,我们也可以使用这个页面来管理集群,默认看到的应该是空的,集群没有搭建完成,后续再学学集群的搭建,以及Hadoop其他组件的集成实战。
参考资料:
http://spark.apache.org/
https://en.wikipedia.org/wiki/Apache_Spark
阿里巴巴Java群超过4800人
进群方式:钉钉扫码入群
image
阿里巴巴MongoDB群
image

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
人工智能 分布式计算 大数据
大数据≠大样本:基于Spark的特征降维实战(提升10倍训练效率)
本文探讨了大数据场景下降维的核心问题与解决方案,重点分析了“维度灾难”对模型性能的影响及特征冗余的陷阱。通过数学证明与实际案例,揭示高维空间中样本稀疏性问题,并提出基于Spark的分布式降维技术选型与优化策略。文章详细展示了PCA在亿级用户画像中的应用,包括数据准备、核心实现与效果评估,同时深入探讨了协方差矩阵计算与特征值分解的并行优化方法。此外,还介绍了动态维度调整、非线性特征处理及降维与其他AI技术的协同效应,为生产环境提供了最佳实践指南。最终总结出降维的本质与工程实践原则,展望未来发展方向。
691 0
|
9月前
|
数据采集 缓存 大数据
【赵渝强老师】大数据日志采集引擎Flume
Apache Flume 是一个分布式、可靠的数据采集系统,支持从多种数据源收集日志信息,并传输至指定目的地。其核心架构由Source、Channel、Sink三组件构成,通过Event封装数据,保障高效与可靠传输。
482 1
|
9月前
|
传感器 人工智能 监控
拔俗多模态跨尺度大数据AI分析平台:让复杂数据“开口说话”的智能引擎
在数字化时代,多模态跨尺度大数据AI分析平台应运而生,打破数据孤岛,融合图像、文本、视频等多源信息,贯通微观与宏观尺度,实现智能诊断、预测与决策,广泛应用于医疗、制造、金融等领域,推动AI从“看懂”到“会思考”的跃迁。
700 0
|
12月前
|
分布式计算 关系型数据库 MySQL
【赵渝强老师】大数据交换引擎Sqoop
Sqoop是一款开源工具,用于在Hadoop与传统数据库如Oracle、MySQL之间传输数据。它基于MapReduce实现,支持数据导入导出、生成Java类及Hive表结构等操作,适用于大数据处理场景。
296 3
【赵渝强老师】大数据交换引擎Sqoop
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
782 79
|
12月前
|
人工智能 分布式计算 DataWorks
分布式×多模态:当ODPS为AI装上“时空穿梭”引擎
本文深入探讨了多模态数据处理的技术挑战与解决方案,重点介绍了基于阿里云ODPS的多模态数据处理平台架构与实战经验。通过Object Table与MaxFrame的结合,实现了高效的非结构化数据管理与分布式计算,显著提升了AI模型训练效率,并在工业质检、多媒体理解等场景中展现出卓越性能。
|
SQL 分布式计算 关系型数据库
基于云服务器的数仓搭建-hive/spark安装
本文介绍了在本地安装和配置MySQL、Hive及Spark的过程。主要内容包括: - **MySQL本地安装**:详细描述了内存占用情况及安装步骤,涉及安装脚本的编写与执行,以及连接MySQL的方法。 - **Hive安装**:涵盖了从上传压缩包到配置环境变量的全过程,并解释了如何将Hive元数据存储配置到MySQL中。 - **Hive与Spark集成**:说明了如何安装Spark并将其与Hive集成,确保Hive任务由Spark执行,同时解决了依赖冲突问题。 - **常见问题及解决方法**:列举了安装过程中可能遇到的问题及其解决方案,如内存配置不足、节点间通信问题等。
基于云服务器的数仓搭建-hive/spark安装
|
SQL 存储 大数据
Flink 基础详解:大数据处理的强大引擎
Apache Flink 是一个分布式流批一体化的开源平台,专为大规模数据处理设计。它支持实时流处理和批处理,具有高吞吐量、低延迟特性。Flink 提供统一的编程抽象,简化大数据应用开发,并在流处理方面表现卓越,广泛应用于实时监控、金融交易分析等场景。其架构包括 JobManager、TaskManager 和 Client,支持并行度、水位线、时间语义等基础属性。Flink 还提供了丰富的算子、状态管理和容错机制,如检查点和 Savepoint,确保作业的可靠性和一致性。此外,Flink 支持 SQL 查询和 CDC 功能,实现实时数据捕获与同步,广泛应用于数据仓库和实时数据分析领域。
11355 42
|
机器学习/深度学习 搜索推荐 算法
大数据与金融科技:革新金融行业的动力引擎
大数据与金融科技:革新金融行业的动力引擎
369 0
大数据与金融科技:革新金融行业的动力引擎