大数据hdfs

Hadoop:
MapReduce:因为要java代码开发,所以不做介绍
HDFS:分布式文件系统

Hadoop的2种说法
狭义: 指的就是Hadoop这个组件里面的3个组件,MapReduce,hdfs,yarn
广义: 指的是Hadoop的生态圈,有很多的大数据组件构建而成,包括:Linux,zookeeper,Hadoop,hive,hbase,redis,elk,kafka,java,scala,python,impala,kudu,spark,flink

Hadoop1.x与Hadoop2.x的区别
1.x :
mapreduce:
数据计算
资源管理
hdfs :
数据存储问题,还会自动备份
2.x: 更加稳定,因为MapReduce的压力减轻了
mapreduce:计算
yarn: 资源管理
hdfs : 存储

hdfs的3种角色:
namenode: 管理文件,存储元数据
secondarynamenode:辅助namenode,存储元数据
datanode:实际存储数据的地方(服务器的主要功能)
yarn的2种角色:
resourcemanager: 接收客户端的任务,分配任务,管理资源
nodemanager: 实际执行任务
MapReduce:就是一个计算框架
map:先分布式计算
reduce: 将分布式计算的结果合并

hdfs的特点:
	1. 支持一次写入多次读取,不支持更新操作
	2. 支持横向扩展
	3. 默认的block块大小是128m ,默认的副本个数是2个
	4. 支持存储超大文件,时效性差,导致hive不能用来顶替mysql
	
	
hdfs的四个角色的分工
	client:
		1. 切分文件
		2. 与namenode通讯,读写请求都要经过namenode
		3. 与datanode进行通讯,写数据或者读取数据
	namenode:管理元数据
		1. 处理客户端的请求,读写请求
		2. master的角色,分工但是不做具体的数据存储
		3. 存储元数据 
	datanode : 打工人
		1. 存储数据 
	snn: 辅助namenode 
		1.不是namenode的备份节点,不是namenode挂掉,顶替namenode
		2. 帮助namenode分担一部分工作,例如元数据的更新和合并
		
		
hdfs的shell命令:
	hdfs  dfs -ls -R  / :遍历hdfs上所有文件
	hdfs dfs -mkdir /bigdata_59/bigdata:创建文件夹
	hdfs dfs -put start-all.sh /bigdata_59
	hdfs dfs -get /bigdata_59/big /export/
	hdfs dfs -mv /bigdata_59/big /bigdata_59/bigdata
	hdfs dfs -rm -rf /bigdata_59/bigdata/big
	hdfs dfs -cp /bigdata_59/start-all.sh /bigdata_59/bigdata
	hdfs dfs -cat /bigdata_59/start-all.sh
	
	
总结:
	hdfs的角色:
		namenode : 管理元数据 
			1. 与client打交道,接收client的读写请求
			2. 管理元数据
			3. 告诉client往哪个节点datanode上写数据,读数据
			4. master 
		datanode: 存数据 
			1. salve
			2. 具体存储数据的地方 
			3. 接收client写或者读				
		secondarynamenode:
			1. 不是用来顶替namenode的工作
			2. 更新和合并元数据,将更新合并后的元数据发送给namenode
		client :客户端
			1. 切割文件成block
			2. 发起请求给namenode
	
	yarn: 管理资源,资源调度 
		resourcemanager: 
			1. 接收任务
			2. 分配任务 
			3. 分配资源
		nodemanager: 打工人 
			1.真正执行任务的地方
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值