云计算笔记:Hadoop集群

预备知识

1.大数据生态系统

在这里插入图片描述

  • 数据生命周期

      数据采集,传输,接收,预处理,存储和索引,数据分析与挖掘,可视化与决策。
    
  • 3个核心组件(基础大数据)

    • (HDFS)分布式存储系统:
      • 统一的存储命名空间
      • 据以分块备份的方式保存,数据备份可以达到高可靠性,数据分块实现并行I/O达到高性能
      • namenode:目录树、属性
      • datanode:实际存储
      • secondary namenode:namenode的备份
      • datanode和namenode可以相互连接,目录树和文件是分开的。
    • 并行计算框架:MapReduce、Tez、Spark和Flink
      • 避免多次启动

           任务划分
           调度(错误处理) 
           进度监控
        
      • 核心:

         任务调度、负责均衡、和错误处理。
        
    • 数据分析工具与算法库:SQL on Hadoop

HDFS安装配置:基础知识

  • 系统栈

     纵向:下层向上层提供服务
     横向:网络进行传输(IP+端口号)
    
  • Hadoop的目录结构
    在这里插入图片描述

      “Hadoop namenode -format”命令用于对集群进行初始化;
      “start-dfs.sh”和“stop-dfs.sh”为启动和停止集群的脚本。
      $HADOOP_HOME/bin:可执行命令所在文件
      $HADOOP_HOME/sbin:用于启动停止相关组件如HDFS、MapReduce和Yarn(安全的可执行命令所在文件)
      $HADOOP_HOME/etc/hadoop:配置文件所在位置
      $HADOOP_HOME/logs目录:该目录存放的是Hadoop运行的日志
    
  • HDFS介绍
    在这里插入图片描述
    NameNode:Master节点,管理HDFS的名称空间和数据块映射 信息,配置副本策略,处理客户端请求。
    DataNode:Slave节点,存储实际的数据,汇报存储信息给NameNode。
    Secondary NameNode:辅助NameNode,分担其工作量;紧急情况下,可辅助恢复NameNode
    Client:切分文件;访问HDFS;与NameNode交互,获取文件位置信息;与DataNode交互,读取和写入数据。


Hadoop安装配置

待写


MapReduce编程模型

1.MapReduce编程模型-wordcount(单词计数)

在这里插入图片描述

方框:数据
箭头:网络传输
椭圆:计算任务

在这里插入图片描述

  • shuffling:多对多的映射->以字母序归类单词到reduce(B、C、D、开头分别划分到不同reduce)

2.MapReduce编程模型-sort(排序)

在这里插入图片描述

  • Map任务有4个,Reduce任务有2两个。都是在对数据块进行排序。
  • Map:块间无序,块内无序–>块间无序,块内有序
  • reduce:块间有序,块内无序–>块间有序,块内有序

3.MapReduce1.0工作流程

在这里插入图片描述

  • JobTracker(集群瓶颈)
    • 资源分配:某个应用程序多少CPU和内存
    • 任务调度:根据数据划分来启动计算任务
    • 作业进度监控等功能。
  • TaskTracker
    • 负责启动本地的Map任务和Reduce任务,Map任务和Reduce任务向TaskTracker汇报执行进度,TaskTracker向JobTracker汇报节点状态,任务执行进度。
      ( Map任务和Reduce任务–>TaskTracker–>JobTracker)

4.Yarn工作流程

在这里插入图片描述
(HDFS、mapreduce、yarn主从节点)

  • 以ResourceManager为中心

      client提交、namenode汇报、appmaster申请资源
    
  • Yarn的角色有ResourceManager、和NodeManager。

      其中ResourceManager负责资源的分配
      AppMaster(ApplicationMaster)负责任务的调度
      NodeManager负责节点资源的管理。
    

MapRedcue1.0 和Yarn的对比

在这里插入图片描述

MapReduce1.0和Yarn模式下资源分配方式

在这里插入图片描述

Slot Container
mapreduce yarm
Map Slot只能启动Map 任务,ReduceSlot只能启动Reduce任务。 容器不分类型,既可以启动Map任务,也可以启动Reduce任务
静态配置,资源大小相同,资源量无法改变 Container大小可以动态调整

Yarn的基本配置(一)

一、预备知识

1.Yarn的角色和交互

在这里插入图片描述

ResourceManager交互:Client、NodeManager、AppMaster(ApplicationMaster)
task最先退出

二、Yarn的基本配置

在这里插入图片描述
配置内容
在这里插入图片描述

相互声明、配置端口


作业

  1. 第10周: ppt答辩大作业准备情况、集群使用情况、工作情况。
  2. 期末:
    1. 欧空间的轨迹聚类

       给一个轨迹,找出最近的5个车辆轨迹
      
    2. 3DR tree–>GPS轨迹

       时间、经纬度、车牌号-->获得轨迹
      
  3. 组内自评、小组互评。一人讲ppt,一人打分(A/B/C/D/E)

杂七杂八

HDFS:

  1. 资源管理(全局统一的环境变化) :spark

     集群中每一个节点都能看到相同的目录树和文件路径,
     某一节点对目录树的修改(如增加或删除数据),任何其它节点都可以同步感知这个变化。
    
  2. 并行计算框架:yarm、flink、

  3. 百度:

     爬虫、倒排索引、分词、
    
  4. 并行计算框架:

     资源分配
     任务调度
     错误处理
    
  5. 资源分配的单位:

     虚拟机(大)、docker:轻量级虚拟化技术(中)、进程、线程(小)、
    

猜你喜欢

转载自blog.csdn.net/chairon/article/details/109022053
今日推荐