大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器

点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

Hadoop(已更完)

HDFS(已更完)

MapReduce(已更完)

Hive(已更完)

Flume(已更完)

Sqoop(已更完)

Zookeeper(已更完)

HBase(已更完)

Redis (已更完)

Kafka(已更完)

Spark(正在更新!)

章节内容

上节我们完成了:


Spark 简单介绍

Spark 的特点

Spark 与 Hadoop MapReduce 框架对比

Spark的系统架构

Spark的部署模式

Spark简介

上节我们已经介绍过了,这里为了保持完整性,简单的再扩展介绍一下。

Spark(Apache Spark)是一个快速、通用的分布式数据处理框架,旨在以高效的方式进行大规模数据的处理和分析。它最初由加利福尼亚大学伯克利分校AMPLab开发,并在2010年开源。如今,Spark已经成为大数据处理领域的重要工具之一,广泛应用于许多行业。

Spark凭借其速度、通用性和易用性,成为大数据处理领域的一项关键技术。无论是处理批量数据还是实时数据,亦或是进行机器学习和图计算,Spark都提供了强大的支持。如果你在寻找一个高效的大数据处理框架,Spark无疑是一个值得考虑的选择。


核心特性

速度:Spark的一个显著特性是速度。它利用内存中的数据处理能力,相比于基于磁盘的Hadoop MapReduce,Spark可以在某些情况下快上100倍。此外,Spark支持内存和磁盘混合计算,在内存不足时将数据部分存储在磁盘中,以确保任务的顺利执行。


通用性:Spark提供了丰富的API,可以用Java、Scala、Python和R语言编写程序。它支持多种大数据处理任务,包括批处理、交互式查询、实时流处理、机器学习和图计算等。这些特性使得Spark成为一个非常灵活的工具,适用于各种数据处理需求。


易用性:Spark的编程模型简单且高效,它基于“弹性分布式数据集”(RDD)的概念,允许开发者以函数式编程的风格来处理数据集。对于已经熟悉Hadoop的开发者来说,Spark的学习曲线较为平滑。此外,Spark SQL模块提供了类似于SQL的查询接口,方便数据分析人员使用。


扩展性:Spark被设计为可以处理大规模数据集,支持从单节点运行到大规模集群上运行。它可以通过YARN、Mesos、Kubernetes等资源管理器进行集群资源调度,具备良好的扩展性,能够在大规模集群环境中高效工作。


Spark的组件

Spark Core:这是Spark的核心模块,负责内存管理、任务调度、错误恢复、与存储系统的交互等基础功能。Spark Core引入了RDD,这是一种容错的分布式数据集合,能够高效地进行并行计算。


Spark SQL:这个组件使得结构化数据的处理更加简单。它支持使用SQL语句对数据进行查询,同时可以与Spark的其他模块无缝集成。此外,Spark SQL还支持与Hive兼容,能够读取Hive中的数据。


Spark Streaming:该模块用于处理实时数据流。它将实时数据划分为多个小批次,并使用Spark的核心API对每个批次的数据进行处理。这种微批处理方式使得实时处理更加简洁和高效。


MLlib:这是Spark的机器学习库,提供了各种机器学习算法,如分类、回归、聚类、协同过滤等。此外,它还提供了数据处理、特征工程和模型评估等工具,能够帮助开发者快速构建和部署机器学习模型。


GraphX:用于图计算的模块,提供了图操作和一套用于图并行计算的API,支持图的遍历、路径搜索、连接组件、PageRank等操作。


使用场景

Spark广泛应用于各种需要大规模数据处理的场景,包括但不限于:


批处理:处理大量历史数据,如日志分析、ETL操作。

流处理:实时数据分析和处理,如网络监控、实时推荐系统。

机器学习:大规模数据上的机器学习任务,如推荐系统、文本分类。

交互式查询:通过Spark SQL对大数据集进行快速查询和分析。

图计算:处理社交网络、推荐系统中的复杂图结构数据。

下载文件

我们到官方地址下载:

https://archive.apache.org/dist/spark/

页面如下,为了保证稳定和学习的方便,我用了比较老的版本:2.4.5

我们选择:without-hadoop-scala 这种版本,可以不用安装配置 Scala:

https://archive.apache.org/dist/spark/spark-2.4.5/spark-2.4.5-bin-without-hadoop-scala-

解压配置

我们可以使用 wget 或者其他工具来完成文件的下载,我这里是传到服务器上:

cd /opt/software/
wget https://archive.apache.org/dist/spark/spark-2.4.5/spark-2.4.5-bin-without-hadoop-scala-2.12.tgz

下载完成后,我们进行解压并移动到指定位置:

cd /opt/software/
tar zxvf spark-2.4.5-bin-without-hadoop-scala-2.12.tgz

移动目录到servers下(之前的规范):

mv spark-2.4.5-bin-without-hadoop-scala-2.12 ../servers

环境变量

vim /etc/profile
# spark
export SPARK_HOME=/opt/servers/spark-2.4.5-bin-without-hadoop-scala-2.12
export PATH=$PATH:$SPARK_HOME/bin

配置完的结果,记得刷新环境变量

修改配置

cd $SPARK_HOME/conf

slaves

mv slaves.template slaves
vim slaves

# 集群地址
h121.wzk.icu
h122.wzk.icu
h123.wzk.icu

配置完的样子大概如下:

spark-defaults

mv spark-defaults.conf.template spark-defaults.conf
vim spark-defaults.conf

# 修改配置的信息
spark.master spark://h121.wzk.icu:7077
spark.eventLog.enabled true
spark.eventLog.dir hdfs://h121.wzk.icu:9000/spark-eventLog
spark.serializer org.apache.spark.serializer.KryoSerializer
spark.driver.memory 512m

配置完的结果如下图:

创建HDFS目录

hdfs dfs -mkdir /spark-eventLog
• 1

spark-env

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

# 修改如下的配置内容
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/opt/servers/hadoop-2.9.2
export HADOOP_CONF_DIR==/opt/servers/hadoop-2.9.2/etc/hadoop
export SPARK_DIST_CLASSPATH=$(/opt/servers/hadoop-2.9.2/bin/hadoop classpath)
export SPARK_MASTER_HOST=h121.wzk.icu
export SPARK_MASTER_PORT=7077

配置完成截图如下:

分发软件

传输文件

使用我们之前编写的 rsync-script 工具。当然你也可以每台都配置一次也行,只要保证环境一致即可。

(之前Hadoop等都使用过,如果你没有,你可以用复制或者别的方式)rsync-script /opt/servers/spark-2.4.5-bin-without-hadoop-scala-2.12

过程会很漫长,请耐心等待:

文件传输分发完毕:

环境变量

每天机器都需要配置环境变量!!!

/etc/profile

h122 服务器

h123 服务器

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
17天前
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
52 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
1月前
|
存储 分布式计算 算法
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
60 0
|
1月前
|
消息中间件 分布式计算 NoSQL
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
40 0
|
1月前
|
消息中间件 存储 分布式计算
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
82 0
|
18天前
|
SQL 机器学习/深度学习 分布式计算
Spark快速上手:揭秘大数据处理的高效秘密,让你轻松应对海量数据
【10月更文挑战第25天】本文全面介绍了大数据处理框架 Spark,涵盖其基本概念、安装配置、编程模型及实际应用。Spark 是一个高效的分布式计算平台,支持批处理、实时流处理、SQL 查询和机器学习等任务。通过详细的技术综述和示例代码,帮助读者快速掌握 Spark 的核心技能。
47 6
|
16天前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
62 2
|
17天前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
57 1
|
18天前
|
分布式计算 大数据 OLAP
AnalyticDB与大数据生态集成:Spark & Flink
【10月更文挑战第25天】在大数据时代,实时数据处理和分析变得越来越重要。AnalyticDB(ADB)是阿里云推出的一款完全托管的实时数据仓库服务,支持PB级数据的实时分析。为了充分发挥AnalyticDB的潜力,将其与大数据处理工具如Apache Spark和Apache Flink集成是非常必要的。本文将从我个人的角度出发,分享如何将AnalyticDB与Spark和Flink集成,构建端到端的大数据处理流水线,实现数据的实时分析和处理。
48 1
|
28天前
|
分布式计算 大数据 Apache
利用.NET进行大数据处理:Apache Spark与.NET for Apache Spark
【10月更文挑战第15天】随着大数据成为企业决策和技术创新的关键驱动力,Apache Spark作为高效的大数据处理引擎,广受青睐。然而,.NET开发者面临使用Spark的门槛。本文介绍.NET for Apache Spark,展示如何通过C#和F#等.NET语言,结合Spark的强大功能进行大数据处理,简化开发流程并提升效率。示例代码演示了读取CSV文件及统计分析的基本操作,突显了.NET for Apache Spark的易用性和强大功能。
36 1
|
1月前
|
SQL 分布式计算 NoSQL
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
41 4

热门文章

最新文章