当前位置: 首页 > news >正文

Hadoop01【尚硅谷】

大数据学习笔记

大数据概念

大数据:指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
主要解决,海量数据的存储和海量数据的分析计算问题。

4V:大量、高速(实时性要求高)、多样(数据类型多样)、低价值密度

数据类型

  • 结构化数据:以数据库/文本为主的结构化数据
  • 非结构化数据:音频、图片、视频、地理位置信息
  • 半结构化数据:html、json

大数据应用:物流仓库、零售、旅游、商品广告推荐、保险、金融、人工智能

大数据部门业务流程分析
产品人员提需求 --> 数据部门搭建数据平台、分析数据指标 --> 数据可视化

大数据部门组织结构
在这里插入图片描述

Hadoop概念

Hadoop:

  1. hadoop是一个有Apache基金会所开发的分布式系统基础框架。
  2. 主要解决,海量数据的存储和海量数据的分析计算问题
  3. 广义上来说,hadoop通常是指一个更广泛的概念——hadoop生态圈

Hadoop三大发行版本:Apache、Cloudera、Hortonworks

Hadoop的优势(4高)

  1. 高可靠性:hadoop底层维护多个数据副本,所以即使hadoop某个计算元素或存储出现故障,也不会导致数据丢失。
  2. 高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。
  3. 高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
  4. 高容错性:能够自动将失败的任务重新分配。

Hadoop组成(面试重点)
hadoop1.x和hadoop2.x区别:

  • 组成不一样
    在这里插入图片描述
    在hadoop1.x时代,hadoop中的MapReduce同时处理业务逻辑运算和资源的调度,耦合性较大,在hadoop2.x时代,增加了Yarn。Yarn只负责资源的调度,MapReduce只负责运算。

HDFS架构概述

hdfs(hadoop分布式系统架构):

  1. NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等。(管理数据存放在哪里,相当于目录)
  2. DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和。(真正存数据的)
  3. Secondary NameNode(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。

Yarn架构概述

主要作用是做资源调度。

  1. ResourceManger(RM)
    1)处理客户端请求
    2)监控NodeMangaer
    3)启动或监控ApplicationMaster
    4)资源分配与调度
  2. NodeManager(NM)
    1)管理单个节点上的资源
    2)处理来自ResourceManager的命令
    3)处理来自ApplicationMaster的命令
  3. ApplicationMaster(AM)
    1)负责数据的切分
    2)为应用程序申请资源并分配给内部的任务
    3)任务的监控与容错
  4. Container
    Container是YARN中的资源抽象,它封装了某个节点上的多维度资源,如内存、CPU、磁盘、网络等。
    在这里插入图片描述

MapReduce架构概述

MapReduce将计算过程分为两个阶段:Map和Reduce

  1. Map阶段并行处理输入数据
  2. Reduce阶段对Map结果进行汇总
    在这里插入图片描述

大数据技术生态体系

数据来源层 --> 数据传输层 --> 数据存储层 --> 资源管理层 --> 数据计算层 --> 任务调度层 --> 业务模型层
(数据平台配置和调度Zookeeper)
在这里插入图片描述

推荐系统项目框架图

用户请求–>Nginx做负载均衡 --> 发送到Tomcat 收集访问日志 --> 通过flume进行日志收集 --> 存储到HDFS或者HBase --> Storm 实时计算 /Flink 计算/Spark --> 分析结果存储到数据库/文件 --> Tomcat 推荐业务
在这里插入图片描述

hadoop运行模式

  1. 本地运行模式
  2. 伪分布式模式
  3. 完全分布式运行模式
http://www.lryc.cn/news/10419.html

相关文章:

  • Echarts 配置横轴竖轴指示线,更换颜色、线型和大小
  • OpenAI 官方API Java版SDK,两行代码即可调用。包含GhatGPT问答接口。
  • SpringBoot 日志文件
  • SQL71 检索供应商名称
  • 02:入门篇 - 漫谈 CTK
  • SpringBoot常用注解
  • RBAC权限模型
  • 【郭东白架构课 模块一:生存法则】07|法则三:架构师如何找到自己的商业模式?
  • STM32 - 看门狗
  • Redis集群搭建
  • 车载基础软件——AUTOSAR AP典型应用案例
  • 消息中间件----内存数据库 Redis7(第3章 Redis 命令)
  • react-03-react-router-dom-路由
  • 2自由度悬架LQR控制
  • C语言返回类型为指针的一些经典题目(下)
  • OpenAI 官方api 阅读笔记
  • 微服务项目【分布式锁】
  • JavaWeb5-线程常用属性
  • JVM调优及垃圾回收GC
  • JAVA练习53-打乱数组
  • 基于RK3588的嵌入式linux系统开发(三)——Uboot镜像文件合成
  • wireshark抓包后通过工具分包
  • 举个栗子~Tableau 技巧(251):统一多个工作表的坐标轴范围
  • Centos7 调整磁盘空间
  • 小菜版考试系统——“C”
  • Twitter被封号了?最详细的申诉教程在此
  • Docker 安装配置
  • 死锁检测组件-设想
  • 线程池的使用
  • 字节码指令