03.分布式文件系统HDFS

分布式文件系统HDFS

HDFS概述及设计目标

什么是HDFS

Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS
源自Google的GFS论文
发表于2003年,HDFS是GFS的克隆版

HDFS的设计目标
  1. 非常巨大的分布式文件系统
  2. 运行在普通廉价的硬件上
  3. 以扩展,为用户提供性能不错的文件存储服务

HDFS架构

这里写图片描述
1个Master(NameNode/NN) 带 N个Slaves(DataNode/DN)
1个文件会被拆分成多个blocks
NN负责:

  1. 负责客户端请求的数据
  2. 负责元数据(文件的名称、副本系数、block存放的DN)的管理
    DN的职责:
  3. 存储用户的文件对应的数据块(Block)
  4. 要定期向NN发送心跳信息,汇报本身及其所有的block信息及健康状况
    A typical deployment has a dedicated machine that runs only the NameNode software. Each of the other machines in the cluster runs one instance of the DataNode software. The architecture does not preclude running multiple DataNodes on the same machine but in a real deployment that is rarely the case.
    NameNode + N个DataNode
    建议:NN和DN是部署在不同的节点上

HDFS副本机制

这里写图片描述

HDFS环境搭建

hadoop伪分布式安装步骤

  1. jdk安装
  2. 安装ssh
    yum install ssh
    ssh-keygen -t rsa
    cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
  3. 下载并解压hadoop
    地址
    解压:tar -zxvf hadoop-2.6.0-xxxx
  4. hadoop配置文件的修改(hadoop_home/etc/hadoop)
    修改hadoop-env.sh
    这里写图片描述
    修改core-site.xml
    这里写图片描述
    修改hdfs-site.xml
    这里写图片描述
    修改slaves
    这里写图片描述
  5. 启动hdfs
    格式化系统(仅第一次执行即可,不要重复执行): hdfs namenode -format
    这里写图片描述
    启动:hdfs:sbin/start-dfs.sh
    验证是否启动成功:
    方式1:jps
    这里写图片描述
    方式2
    浏览器访问方式:http://localhost:50070
  6. 停止hdfs
    sbin/stop-dfs.sh

HDFS shell

hdfs shell常用命令的使用,包括ls,mkdir,put,get,rm

ls

hdfs dfs -ls /
hdfs dfs -ls -R /

mkdir

hdfs dfs -mkdir /test1
hdfs dfs -mkdir -p /test/a/b

put copyFromLocal

hdfs dfs -put ./hadoop.txt /
hdfs dfs -copyFromLocal hadoop.txt /test/a/b/h.txt

get

hdfs dfs -get /test/a/b/h.txt hello.txt

rm

hdfs dfs -rm /hadoop.txt
hdfs dfs -rm -R /test

cat

hdfs dfs -cat /hadoop.txt

text

hdfs dfs -text /hadoop.txt

Java API操作HDFS

IDEA Maven构建Java工程

HDFS文件读写流程

HDFS优缺点


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值