总结:HDFS+YARN+HIVE

news/2024/5/20 4:09:23 标签: hdfs, hive, hadoop

总结:HDFS+YARN+HIVE

  • 第一章 Hello大数据&分布式
      • Part1 数据导论
          • 一. 数据
          • 二. 数据的价值
      • Part2 大数据诞生
      • Part3 大数据概述
          • 一. 什么是大数据
          • 二.大数据特征
          • 三.大数据的核心工作
      • Part4 大数据软件生态
          • 一. 大数据软件生态
      • Part5 Apache Hadoop 概述
          • 一. Hadoop概念
  • 第二章 分布式存储Hadoop HDFS
      • Part1 为什么需要分布式存储
      • Part2 分布式的基础架构分析
          • 一. 分布式的基础架构 - 2类架构模式
      • Part3 HDFS基础架构
          • 一. HDFS
          • 二. HDFS的基础架构
      • Part4 HDFS集群环境部署
          • 一. 部署步骤
          • 二.HDFS启停
          • 三.文件系统操作命令-- 自己补充完整
          • 四.权限修改
      • Part5 HDFS存储原理
          • 一. HDFS存储原理\
          • 二. fsck命令
          • 三.NameNode管理元数据
          • 四.HDFS数据读写流程
  • 第三章 MapReduce和YARN入门

第一章 Hello大数据&分布式

Part1 数据导论

一. 数据

数据:一种可以被鉴别的对客观事件进行记录的符号。简单来说就是:对人类的行为及产生的事件的一种记录。

二. 数据的价值
  • 对数据的内容进行深入分析,可以更好的帮助了解事和物在现实世界的运行规律
  • 比如,购物的订单记录(数据)可以帮助平台更好的了解消费者,从而促进交易。

Part2 大数据诞生

Part3 大数据概述

一. 什么是大数据

狭义上:大数据是一类技术栈,是一种用来处理海量数据的软件技术体系。

广义上:大数据是数字化时代、信息化时代的基础(技术)支撑,以数据为生活赋能。

二.大数据特征

从海量的高增长、多类别、低信息密度的数据中挖掘出高质量的结果

三.大数据的核心工作

数据计算

数据存储

数据传输

Part4 大数据软件生态

一. 大数据软件生态

数据存储: Apache Hadoop - HDFS, Apache HBase, Apache KUDU, 云存储

数据计算: Apache Hadoop - MapReduce, Apache Hive,Apache Spark, Apache Flink

数据传输: Apache Kafka, Apache Pulsar, Apache Flume,Apache Sqoop

Part5 Apache Hadoop 概述

一. Hadoop概念
  • 分布式数据存储 - HDFS组件
  • 分布式数据计算 - MapReduce组件
  • 分布式资源调度 - YARN组件

第二章 分布式存储Hadoop HDFS

Part1 为什么需要分布式存储

  • 数据量太大,单机存储能力有上限,需要靠数量来解决问题
  • 数量的提升带来的是网络传输、磁盘读写、CPU、内存等各方面的综合提升。 分布式组合在一起可以达到1+1>2的效果

Part2 分布式的基础架构分析

一. 分布式的基础架构 - 2类架构模式

去中心化模式:没有明确的中心。众多服务器之间基于特定规则进行同步协调

中心化模式: 有一个中心节点(服务器)来统筹其它服务器的工作,统一指挥,统一调派,避免混乱 – 主从模式(Master And Slaves)

Part3 HDFS基础架构

一. HDFS

HDFS是Hadoop三大组件(HDFS、MapReduce、YARN)之一

  • 全称是:Hadoop Distributed File System(Hadoop分布式文件系统)

  • 是Hadoop技术栈内提供的分布式数据存储解决方案

  • 可以在多台服务器上构建存储集群,存储海量的数据

  • HDFS是一个典型的主从模式架构

二. HDFS的基础架构

HDFS集群:

  • 主角色 : NameNode – 唯一的
    • HDFS系统的主角色,是一个独立的进程
    • 负责管理HDFS整个文件系统
    • 负责管理DataNode
  • 从角色 : DataNode - 若干个
    • HDFS系统的从角色,是一个独立进程
    • 主要负责数据的存储,即存入数据和取出数据
  • 主角色辅助角色: SecondaryNameNode
    • NameNode的辅助,是一个独立进程
    • 主要帮助NameNode完成元数据整理工作(打杂)

Part4 HDFS集群环境部署

一. 部署步骤

1. 下载安装包 - hadoop-3.3.6.tar.gz

2. 集群规划

节点服务
node1NameNode, DataNode,SecondaryNameNode
node2DataNode
node3DataNode

3. 上传和解压 – root用户

  • 上传Hadoop安装包到node1节点中, 位置 root用户家目录中

  • 解压缩安装包到/export/server/中

    tar -zxvf hadoop-3.3.6.tar.gz -C /export/server

  • 构建软连接

cd /export/server

ln -s /export/server/hadoop-3.3.4 hadoop

cd hadoop

4. Hadoop安装包目录结构

各个文件夹含义如下

  • bin,存放Hadoop的各类程序(命令)

  • etc,存放Hadoop的配置文件

  • include,C语言的一些头文件

  • lib,存放Linux系统的动态链接库(.so文件)

  • libexec,存放配置Hadoop系统的脚本文件(.sh和.cmd)

  • licenses-binary,存放许可证文件

  • sbin,管理员程序(super bin)

  • share,存放二进制源码(Java jar包)-- MapReduce接口(wordcount, pi)

5. 修改配置文件,应用自定义设置

  • workers:配置从节点(DataNode)有哪些 – node1,node2,node3
  • hadoop-env.sh:配置Hadoop的相关环境变量
  • core-site.xml:Hadoop核心配置文件
  • hdfs-site.xml:HDFS核心配置文件

6. 准备数据

  • 在node1节点:

mkdir -p /data/nn

mkdir -p /data/dn

  • 在node2和node3节点:mkdir -p /data/dn

7.分发Hadoop文件夹

分发

  • 在node1执行如下命令

    cd /export/servers

    cp -r hadoop-3.3.4 node2:pwd

    cp -r hadoop-3.3.4 node3:pwd

  • 在node2执行

    ln -s /export/server/hadoop-3.3.4 /export/server/hadoop

  • 在node3执行

ln -s /export/server/hadoop-3.3.4 /export/server/hadoop

8. 配置环境变量

9.授权为hadoop用户

10.格式化整个文件系统

二.HDFS启停

一键启停

  • $HADOOP_HOME/sbin/start-dfs.sh,一键启动HDFS集群
  • $HADOOP_HOME/sbin/stop-dfs.sh,一键关闭HDFS集群

单进程启停

hadoop-daemon.sh (start|status|stop) (namenode|secondarynamenode|datanode)

hdfs --daemon (start|status|stop) (namenode|secondarynamenode|datanode)

三.文件系统操作命令-- 自己补充完整

1. 创建文件夹

hadoop fs -mkdir [-p] <path> ...

hdfs dfs -mkdir [-p] <path> ...

  • path 为待创建的目录
  • -p选项的行为与Linux mkdir -p一致,它会沿着路径创建父目录。

2.查看指定目录

hadoop fs -ls [-h] [-R] [<path> ...]

hdfs dfs -ls [-h] [-R] [<path> ...]

  • path 指定目录路径
  • -h 人性化显示文件size
  • -R 递归查看指定目录及其子目录

3.上传

4.查看文件内容

5.下载

6.拷贝

7.追加

8.移动

9.删除

四.权限修改

1. 修改所属用户和组

2. 修改权限

Part5 HDFS存储原理

一. HDFS存储原理\
二. fsck命令
  • 我们还可以在上传文件的时候,临时决定被上传文件以多少个副本存储

hadoop fs -D dfs.replication=2 -put test.txt /tmp/

  • 对于已经存在HDFS的文件,修改dfs.replication属性不会生效,如果要修改已存在文件可以通过命令

hadoop fs -setrep [-R] 2 path

  • fsck命令检查文件的副本数

hdfs fsck path [-files [-blocks [-locations]]]

三.NameNode管理元数据
四.HDFS数据读写流程

第三章 MapReduce和YARN入门


http://www.niftyadmin.cn/n/5451084.html

相关文章

数据结构——顺序表(C语言版)

顺序表是数据结构中最基本的一种线性表&#xff0c;它以一段连续的存储空间来存储数据元素&#xff0c;元素之间的顺序由它们在内存中的位置来决定。在C语言中&#xff0c;我们通常使用数组来实现顺序表。 目录 顺序表的结构定义 顺序表的基本操作 应用实例 顺序表的结构定义…

JVM篇详细分析

JVM总体图 程序计数器&#xff1a; 线程私有的&#xff0c;每个线程一份&#xff0c;内部保存字节码的行号&#xff0c;用于记录正在执行字节码指令的地址。&#xff08;可通过javap -v XX.class命令查看&#xff09; java堆&#xff1a; 线程共享的区域&#xff0c;用来保存对…

瑞吉外卖实战学习--登录过滤器和判断是否登录过

完善登录功能 1、创建自定义过滤器LoginCheckFiler1.1通过WebFilter创建过滤器1.2 验证是否可以拦截请求1.3 代码 2、在启动类加入注解ServletComponentScan 用来扫描过滤器触发所有的过滤器ServletComponentScan 3、完善过滤器的处理逻辑3.1判断是否需要是要放行的请求3.2判断…

定时器 c++ 基于时间线

获取当前时间std::chrono::system_clock::now(); std::chrono::time_point_cast<std::chrono::milliseconds>(now) 是 std::chrono 标准库中的一个函数调用&#xff0c;用于将时间点 now 转换为毫秒级别精度的时间点。 friend class timermanger; 表示将类 timermanger …

.jayy勒索病毒来袭:如何有效防范与应对?

导言&#xff1a; 在数字化时代&#xff0c;网络安全问题日益突出&#xff0c;其中勒索病毒成为了最为严重的威胁之一。.jayy勒索病毒是近年来出现的一种新型网络威胁&#xff0c;其危害性和传播速度令人震惊。本文91数据恢复将对.jayy勒索病毒进行介绍&#xff0c;并探讨有效…

FPGA时钟资源详解(4)——区域时钟资源

FPGA时钟系列文章总览&#xff1a;FPGA原理与结构&#xff08;14&#xff09;——时钟资源https://ztzhang.blog.csdn.net/article/details/132307564 目录 一、概述 二、Clock-Capable I/O 三、I/O 时钟缓冲器 —— BUFIO 3.1 I/O 时钟缓冲器 3.2 BUFIO原语 四、区域时钟…

linux内核网络“每日读书”

主机和网络之间的尾端转换 超过一个字节以上的数据结构可以采用两种不同的格式存储在内存中&#xff0c;小尾端 little endian 和大尾端 big endian, 第一种格式把最低字节存储在最低内存地址&#xff0c;而第二种格式恰好相反&#xff0c;像linux这类操作系统所用的格式依赖于…

吴恩达深度学习笔记:浅层神经网络(Shallow neural networks)3.1-3.5

目录 第一门课&#xff1a;神经网络和深度学习 (Neural Networks and Deep Learning)第三周&#xff1a;浅层神经网络(Shallow neural networks)3.1 神经网络概述&#xff08;Neural Network Overview&#xff09;3.2 神经网络的表示&#xff08;Neural Network Representation…