Spark大数据快速运算实训三:虚拟机进行hadoop安装及配置+工作原理流程解释

4 篇文章 0 订阅
2 篇文章 0 订阅

目录

1、什么是hadoop?

 2、hadoop的工作原理

3、hadoop的工作流程

4、hadoop的生态系统

5、安装及配置hadoop流程操作

5.1 解压压缩包

 5.2 配置etc/profile文件

5.3 配置5个文件相关文件

5.4 更新profile文件内容

5.5 分别对namenode&datanode进行格式化

5.6 启动进程


1、什么是hadoop?

Hadoop是一个开源框架,用于分布式存储和处理大型数据集。它基于Google的MapReduce算法和Google文件系统(GFS),旨在提供一种可扩展的、分布式的处理大数据集的平台。Hadoop包括两个核心组件:Hadoop分布式文件系统(HDFS)和Hadoop MapReduce。HDFS是一个可靠的分布式文件系统,用于存储大数据集,而Hadoop MapReduce则是一种用于处理HDFS中存储的数据的编程模型和计算框架。Hadoop被广泛用于大数据处理、数据仓库、日志分析、搜索和机器学习等领域。


 2、hadoop的工作原理

Hadoop是一个分布式计算框架,它的工作原理可以简单地描述为:

  • 数据分割:在Hadoop集群中,数据被分割成多个块,每个块都被存储在不同的计算节点上。这种分割使得Hadoop可以处理大规模数据集。

  • 节点间通信:Hadoop使用HDFS(Hadoop分布式文件系统)来管理数据块的存储和检索。当一个计算任务需要访问数据时,Hadoop会利用网络连接将任务传输到存储该数据块的节点上。

  • MapReduce任务:Hadoop的MapReduce模型是一种将数据分割并分散处理的模型。在MapReduce模型中,一个Map任务将数据分割成多个键值对,并将每个键值对发送到不同的计算节点上进行处理。一个Reduce任务则将这些处理结果合并为一个最终结果。

  • 数据本地化:为了提高计算速度,Hadoop会尽可能地将计算任务分配到存储数据块的节点上,以减少数据传输的时间。这种策略被称为“数据本地化”。

  • 容错性:Hadoop具有很强的容错性,它能够处理计算节点故障,数据块丢失等问题。当一个计算节点出现故障时,Hadoop会自动将该节点上的任务重新分配到其他节点上进行处理。


3、hadoop的工作流程

Hadoop的整个工作流程分为以下几个步骤:

  • 将大数据集分割成多个小的数据块。
  • 将这些小数据块分配到多个节点上,进行并行处理。
  • 在每个节点上,使用MapReduce算法对数据进行处理和分析。
  • Reduce节点将Map节点输出的中间结果进行合并、汇总和计算。
  • 最后,将分析结果合并输出。

整个工作流程的核心是MapReduce算法,它通过并行处理和分析大量数据,实现了高效的数据处理和分析。同时,Hadoop还提供了HDFS分布式文件系统,能够实现数据可靠存储和管理。整个工作流程的特点是高度可扩展和容错性,能够处理海量数据和节点故障。


4、hadoop的生态系统

Hadoop生态系统是一个开源的分布式计算平台,是Apache Hadoop项目的核心。 它包括多个组件,旨在处理和分析大数据集。

以下是Hadoop生态系统的主要组件:

  1. Hadoop分布式文件系统(HDFS):它是一个分布式文件系统,最初是为存储和访问Hadoop集群中的大文件而设计的。 它使用多个计算机节点来存储和访问数据,提供了高可靠性和可扩展性。

  2. Hadoop MapReduce:是一个分布式计算框架,用于在大数据集上运行并行计算任务。 它将任务分解为较小的子任务,并在多个计算机节点上并行处理这些子任务以加速计算。

  3. YARN(Yet Another Resource Negotiator):是一个资源管理器,用于管理分布式计算集群中的计算资源。 它允许多个应用程序并发运行在同一个Hadoop集群中。

  4. HBase:是一个分布式的、可伸缩的、列式数据库,用于存储和管理大数据集。 它提供快速的读/写操作,支持海量数据的随机访问。

  5. Pig:是一个基于Hadoop的数据分析平台,用于查询和分析大数据集。 它提供了一种类似于SQL的语言,称为Pig Latin。

  6. Hive:是一个基于Hadoop的数据仓库,用于查询和分析大规模数据集。 它支持使用类似于SQL的查询语言来查询数据,可以以表格的形式来组织和管理数据。

  7. Spark:是一个快速的、可扩展的、内存计算框架,设计用于处理大规模数据集。 它支持多种计算类型,包括批处理、交互式查询、流处理等。

上述组件使Hadoop成为一个无与伦比的分布式计算平台,非常适合处理大规模的、非结构化的数据集。 它的能力已经被广泛应用于各种领域,包括金融、医疗、电子商务等。


5、安装及配置hadoop流程操作

5.1 解压压缩包

#先解压压缩包

tar -zxvf hadoop-3.1.2.tar.gz

#删除压缩包 

sudo rm *.gz

#修改名称(后面切换目录更方便) 

sudo mv hadoop-3.1.2 hadoop


 5.2 配置etc/profile文件

sudo vim etc/profile

# 文件添加内容

export HADOOP_HOME=/opt/apps/hadoop  #等号后面的目录是你下载hadoop的目录

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

切换至这个目录下,进行hadoop各个文件的配置。


5.3 配置5个文件相关文件

sudo vim core-site.xml

这个文件包含了Hadoop的核心配置信息。
其中最重要的配置是Hadoop的文件系统(HDFS)的名称节点的地址,以及其他一些全局设置,如默认块大小、副本数量等。
需要配置的参数示例:
fs.defaultFS: 指定HDFS的名称节点的地址。
hadoop.tmp.dir: 指定Hadoop集群的临时目录。

sudo vim hdfs-site.xml

这个文件包含了Hadoop分布式文件系统(HDFS)的配置信息。
它定义了数据块的复制策略、HDFS的数据目录等信息。
需要配置的参数示例:
dfs.replication: 指定数据块的副本数量。
dfs.namenode.name.dir: 指定HDFS名称节点数据存储目录。
dfs.datanode.data.dir: 指定HDFS数据节点数据存储目录。

sudo vim workers

这个文件列出了Hadoop集群中所有数据节点的主机名或IP地址。
每行包含一个主机名或IP地址,Hadoop会自动识别并管理这些数据节点。 

sudo vim mapred-site.xml

 这个文件包含了MapReduce框架的配置信息。
它定义了MapReduce作业的执行方式、资源分配等。
需要配置的参数示例:
mapreduce.framework.name: 指定MapReduce框架的名称

sudo vim yarn-site.xml 

这个文件包含了YARN(Yet Another Resource Negotiator)资源管理器的配置信息。
YARN用于资源调度和管理Hadoop集群上的应用程序。
需要配置的参数示例:
yarn.resourcemanager.hostname: 指定资源管理器的主机名。
yarn.nodemanager.local-dirs: 指定本地目录以存储临时文件。
这些配置文件是Hadoop集群的关键组成部分,它们用于定义如何管理和分配资源、存储数据以及执行MapReduce作业。通过编辑这些文件,您可以根据集群的需求来自定义Hadoop的行为,确保它能够适应不同的环境和工作负载。配置这些文件是为了确保Hadoop集群能够正确运行并满足您的需求。


5.4 更新profile文件内容

 


5.5 分别对namenode&datanode进行格式化

在配置Hadoop集群时,格式化NameNode和DataNode是必要的步骤。原因有以下几点:

5.5.1. 在Hadoop中,NameNode是集群的管理节点,负责管理文件系统的元数据,包括文件名、目录结构、各个文件块在集群中的位置等信息。因此,对于NameNode的格式化可以清空元数据信息,以便重新建立一个全新的HDFS文件系统。

5.5.2. DataNode是存储数据块的节点,格式化DataNode会将该节点上的数据块全部清空,以便重新分配任务。

5.5.3. 在集群中添加新的DataNode或替换原有的DataNode时,需要重新格式化该节点,以确保数据能够正确地同步到该节点上。

5.5.4. 格式化是一种保障机制,可以清除可能存在的数据损坏或错误,以确保集群的稳定性和可靠性。

综上所述,格式化NameNode和DataNode是必要的步骤,可以提高Hadoop集群的可用性和性能。


5.6 启动进程

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值