大数据入门与实战-Hadoop核心HDFS

课程链接:https://www.imooc.com/video/16287

Hadoop简介

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
详情见:Hadoop基本介绍

一、 HDFS概念及优缺点

  1. 应用场景与特点
    • 普通的成百上千的机器
    • 按TB甚至PB为单位的大量的数据
    • 简单便捷的文件获取
  2. HDFS概念
    数据块是抽象块而非整个文件作为存储单元,默认大小为64MB,一般设置为128M,备份x3
    《大数据入门与实战-Hadoop核心HDFS》

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

DataNode存储检索数据块,向NameNode更新所存储块的列表

  1. HDFS优点
    • 适合大文件存储,支持TB,PB级的数据存储
    • 可以构建在廉价的机器上,并有一定的容错和恢复机制
    • 支持流式数据访问,一次写入、多次读取最高效
  2. HDFS缺点
    • 不适合大量小文件存储
    • 不适合并发写入,不支持文件随机修改
    • 不支持随机读等低延时的访问方式

二、HDFS写流程与读流程

《大数据入门与实战-Hadoop核心HDFS》

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

《大数据入门与实战-Hadoop核心HDFS》

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

三、Shell命令操作HDFS

《大数据入门与实战-Hadoop核心HDFS》

将home下的mk.txt上传到hdfs

《大数据入门与实战-Hadoop核心HDFS》

四 、Python程序操作HDFS

hdfs3:http://hdfs3.readthedocs.io/en/latest/

《大数据入门与实战-Hadoop核心HDFS》

    原文作者:致Great
    原文地址: https://www.jianshu.com/p/7c1ddd144639
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞