视频-《慕课网Hadoop基础及演练》概念介绍

Hadoop环境安装

  1. Linux环境
  2. JDK,Hadoop的源码是Java写的
  3. 配置hadoop

大数据

概念

大数据包括平台框架和数据分析技术
在大数据平台框架上的各种数据分析
包括Hadoop和Spark大数据框架
包括实时数据处理;离线数据处理;数据分析,数据挖掘和用机器算法进行预测分析等技术

准备:

1.熟悉Linux常用命令
2.有Python或者Java编程基础
3.搭建Hadoop测试环境:

Hadoop核心

Hadoop=存储HDFS(分布式文件系统)+编程模型MapReduce(分布式技术)
存储是大数据技术的基础,分布式计算是大数据应用的解决方案
HDFS:数据块+NameNode+DataNode
特点
1.普通的成百上千的机器
2.按TB甚至PB为单位的大量数据
3.简单便捷的文件获取
优点:
1.适合大文件存储,支持TB、PB级的数据存储,并有副本策略
2.可以构建在廉价的机器上,并有一定的容错和恢复机制
3.支持流式数据访问,一次写入,多次读取最搞笑
缺点
1.不适合大量小文件存储
2.不适合并发写入,不支持文件随机修改
3.不支持随机读等低延时的访问方式
数据块:
1.数据块是抽象快而非整个文件作为存储单元
2.默认大小为64MB,一般设置为128M,备份X3(三个)

HDFS概念

一个NameNode(主要)和多个DataNode(次要)

在这里插入图片描述

NameNode
1.管理文件系统的命名空间,存放文件元数据
2.维护着文件系统的所有文件和目录,文件与数据块的映射
3.记录每个文件中各个块所在的数据节点的信息

DataNode
1.存储并检索数据块
2.向NameNode更新所存储快的列表

HDFS流程

1、HDFS写流程
1.客户端向NameNode发起写数据请求
2.分块写入DataNode节点,DataNade自动完成副本备份
3.DataNode向NameNode汇报存储完成,NameNode通知客户端

在这里插入图片描述

扫描二维码关注公众号,回复: 4660602 查看本文章

2、HDFS读流程
1.客户端向NameNode发起读数据请求
2.NameNode找出距离最近的DataNode节点信息
3.客户端从DataNode文件下载文件

在这里插入图片描述

实战

  • 通过Shell命令对HDFS进行操作:与Linux操作文件类似
  • 通过编写Python程序对HDFS进行操作

常用HDFS Shell命令

  • 类Linux系统:ls、cat、mkdir、rm、chmod、chown
  • HDFS文件交互:copyFromLocal(从本地复制到HDFS)、copyToLocal、get、put

猜你喜欢

转载自blog.csdn.net/qq_29150765/article/details/85160914