IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 大数据之Hadoop -> 正文阅读

[大数据]大数据之Hadoop

Hadoop

一、背景

? hadoop最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题–如何解决数十亿网页的存储和索引问题。后面Nutch的开发人员实现了HDFS和MAPREDUCE,并从Nutch脱离成为独立项目Hadoop

二、简介

? hadoop是一整个大数据处理体系,利用服务器集群,根据用户自定义业务逻辑对海量数据进行分布式处理。最终,大数据的处理就是存储和计算。狭义上讲,它就是一个框架平台,它包括以下几个部分

  • HDFS:Hadoop分布式文件系统,可提供对应用数据的高吞吐量访问。

  • Hadoop YARN:作业调度和集群资源管理的框架。

  • Hadoop MapReduce:用于并行处理大型数据集的基于YARN的系统。

  • Hadoop Common:支持其他Hadoop模块的常用工具

Hadoop=HDFS(分布式?件系统)+MapReduce(分布式计算框架)+Yarn(资源协调框架)+Common模块

它还包括其他辅助框架,实际上指的是一个大数据生态圈,例如:

  • Hive:基于Hadoop的类SQL数据仓库工具

  • Hbase:基于Hadoop的列式分布式NoSQL数据库

  • Zookeeper:分布式协调服务组件

  • Oozie/Azkaban:工作流调度引擎

  • Mahout:基于MapReduce/Flink/Spark等分布式运算框架的机器学习算法库

三、优缺点

3.1、优点

  • 具有存储和处理数据能力的高可靠性
  • 通过计算机集群分配数据完成存储和计算任务,这些集群可以方便的扩展,具有高扩展性。
  • 能够在节点之间进行动态的移动数据,并保证各个节点的动态平衡,处理速度快,具有高效性
  • 能自动保存数据的多个副本,并且能够将失败的任务重新分配,具有高容错性。

3.2、缺点

  • 不适用于低延迟数据访问
  • 不能高效存储大量小文件
  • 不支持多用户写入并任意修改文件

四、其他组件说明

4.1、HDFS

Hadoop Distribute File System,?个?可靠、?吞吐量的分布式?件系统,

HDFS介绍

4.2、MapReduce

MapReduce计算 = Map阶段 + Reduce阶段

  • Map阶段就是“分”的阶段,负责并行处理输入数据
  • Reduce阶段就是“合”的阶段,对Map阶段结果进行汇总
    Reduce介绍

4.3、Yarn

作业调度与集群资源管理的框架

4.4、Common

?持其他模块的?具模块(Configuration、队列、RPC、序列化机制、?志操作)

五、Hadoop单机伪集群搭建

5.1、创建hadoop用户

# 设置可以登陆hadoop用户,并使用 /bin/bash 作为 shell。
sudo useradd -m hadoop -s /bin/bash

# 设置hadoop用户密码
sudo passwd hadoop

#可为 hadoop 用户增加管理员权限
sudo adduser hadoop sudo

当设置完后,直接退出shell,然后登录hadoop用户

5.2、安装SSH、配置SSH无密码登录

单节点、集群都需要用到ssh登录,类似需要远程登录,然后运行命令

  • 更新apt

    sudo apt-get update
    
  • 安装 SSH server,有可能已经安装了

    apt-get install openssh-server
    
  • 命令登录本机

    ssh localhost
    
  • 登录过一次后会产生~/.ssh/文件夹信息,我们先退出刚才的登录到原来的窗口下

    exit
    
  • 进去该用户下的.ssh文件夹,利用 ssh-keygen 生成密钥,并将密钥加入到授权中

    # 若没有该目录,请先执行一次ssh localhost
    cd ~/.ssh/
    # 会有提示,都按回车就可以
    ssh-keygen -t rsa
    # 加入授权
    cat ./id_rsa.pub >> ./authorized_keys
    
  • 测试shell无密码登录,不输入密码则代表成功

    ssh localhost
    

5.3、安装Hadoop3

  • 下载安装包,传到对应的目录下

    #官网地址
    https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz
    
  • 下载后需要授权目录权限

    sudo chown -R hadoop {hadoop目录}
    
  • 配置环境变量

    #打开文件
    vim /etc/profile
    
    #内容如下
    export HADOOP_HOME=hadoop的安装路径
    export PATH=$HADOOP_HOME/bin
    
    # 刷新环境变量
    source /etc/profile
    

5.4、配置hdfs

  • 修改配置文件 core-site.xml

    vim {hadoop目录}/etc/hadoop/core-site.xml
    
    
    <configuration>
        <property>
            <!--指定 namenode 的 hdfs 协议文件系统的通信地址-->
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
        </property>
        <property>
            <!--指定 hadoop 存储临时文件的目录-->
            <name>hadoop.tmp.dir</name>
            <value>file:/home/hadoop/tmp</value>
        </property>
    </configuration>
    
    
  • 修改配置文件 hdfs-site.xml

    <configuration>
      <property>
            <!-- 指定 dfs 的副本系数为 1-->
            <name>dfs.replication</name>
            <value>1</value>
      </property>
        
     <!-- 默认使用的临时目录为 /tmp/hadoo-hadoop 文件夹,但重启后会清理掉 导致必须重新执行 format 才行,所以指定了下面两个文件夹 -->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/home/hadoop/tmp/dfs</value>
    </property>
        
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/home/hadoop/tmp/data</value>
    </property>
    
    </configuration>
    
    
  • 配置完成,执行 NameNode 的初始化

    {hadoop目录}/bin/hdfs namenode -format
    

    观察日志,有错误的信息很有可能是配置信息出错了

  • 启动

    {hadoop目录}/sbin/start-dfs.sh
    

    启动完成后,通过jps来判断启动是否成功,若成功启动则会列出如下进程:NameNode、DataNode 和 SecondaryNameNode。

5.5、YARN配置

  • 修改配置文件 mapred-site.xml

    <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
    </configuration>
    
  • yarn-site.xml

    <configuration>
        <property>
            <!--配置 NodeManager 上运行的附属服务。需要配置成 mapreduce_shuffle 后才可以在 Yarn 上运行 MapReduce 程序。-->
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>
    </configuration>
    
  • 运行

    ./start-yarn.sh
    

5.5、命令

  • 启动hfs

    {hadoop目录}/sbin/start-dfs.sh
    
  • 停止hfs

    {hadoop目录}/sbin/stop-dfs.sh
    
  • 初始化namenode

    {hadoop目录}/bin/hdfs namenode -format
    
  • 启动yarn

    {hadoop目录}/sbin/start-yarn.sh
    

5.6、测试

启动完成后,通过jps来判断启动是否成功,若成功启动则会列出如下进程:NameNode、DataNode 和 SecondaryNameNode,ResourceManager,NodeManager

查看webUi,端口号为8088和9870

https://note.youdao.com/yws/public/resource/8f913335f04c11f8ab2e43b477d18d2c/xmlnote/C3158567DE414F2DA090EA8D13980BF1/20244

https://note.youdao.com/yws/public/resource/8f913335f04c11f8ab2e43b477d18d2c/xmlnote/2A487C76068944509D369E90673A082D/20246

参考文献

# 大数据的说明
https://zhuanlan.zhihu.com/p/61613198
# 官方中文文档
https://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html
# 总结介绍
https://zhuanlan.zhihu.com/p/320280591
# HDFS介绍
https://www.cnblogs.com/yangyquin/p/5017785.html
# hadoop安装
http://dblab.xmu.edu.cn/blog/2441-2/

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-09 16:21:04  更:2021-10-09 16:22:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:22:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码