Hadoop3:HDFS-存储优化之纠删码
创始人
2024-12-27 04:02:55
0

一、集群环境

集群一共5个节点,102/103/104/105/106
在这里插入图片描述

二、纠删码原理

1、简介

HDFS默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。Hadoop3.x引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间
在这里插入图片描述
简单来说,通过计算方式,来还原丢失的数据。
损耗的是CPU性能,节省了磁盘空间。

2、纠删策略

[atguigu@hadoop102 ~]$ hdfs ec -listPolicies Erasure Coding Policies: ErasureCodingPolicy=[Name=RS-10-4-1024k, Schema=[ECSchema=[Codec=rs, numDataUnits=10, numParityUnits=4]], CellSize=1048576, Id=5], State=DISABLED ErasureCodingPolicy=[Name=RS-3-2-1024k, Schema=[ECSchema=[Codec=rs, numDataUnits=3, numParityUnits=2]], CellSize=1048576, Id=2], State=DISABLED ErasureCodingPolicy=[Name=RS-6-3-1024k, Schema=[ECSchema=[Codec=rs, numDataUnits=6, numParityUnits=3]], CellSize=1048576, Id=1], State=ENABLED ErasureCodingPolicy=[Name=RS-LEGACY-6-3-1024k, Schema=[ECSchema=[Codec=rs-legacy, numDataUnits=6, numParityUnits=3]], CellSize=1048576, Id=3], State=DISABLED ErasureCodingPolicy=[Name=XOR-2-1-1024k, Schema=[ECSchema=[Codec=xor, numDataUnits=2, numParityUnits=1]], CellSize=1048576, Id=4], State=DISABLED 

在这里插入图片描述
RS-3-2-1024k
使用RS编码,每3个数据单元,生成2个校验单元,共5个单元,每个单元的大小是1024k=1m
只要有任意的3个单元存在,就可以还原数据。
RS-6-3-1024k
类似RS-3-2-1024k,6个数据单元,3个校验单元
RS-10-4-1024k
类似RS-3-2-1024k,10个数据单元,4个校验单元
RS-LEGACY-6-3-1024k
类似RS-3-2-1024k,只是编码的算法用的是rs-legacy
XOR-2-1-1024k
类似RS-3-2-1024k,使用XOR编码(速度比RS编码快)

纠删码策略是给具体一个路径设置。所有往此路径下存储的文件,都会执行此策略。
默认只开启对RS-6-3-1024k策略的支持,如要使用别的策略需要提前启用。

也就是,对某个路径下的文件使用纠删码方式确保数据的可靠性。
其他路径依然采用自己的方式保证可靠性。

三、案例

1、需求

/input目录设置为RS-3-2-1024k策略

我们集群是5台虚拟机
所以,我们需要更改纠删码策略为RS-6-3-1024k
因为默认的是RS-6-3-1024k策略,需要9台机器。

2、相关指令

启用RS-3-2-1024k策略 hdfs ec -enablePolicy  -policy RS-3-2-1024k  创建路径 hdfs dfs -mkdir /input  设置路径的纠删码策略为RS-3-2-1024k hdfs ec -setPolicy -path /input -policy RS-3-2-1024k 

在这里插入图片描述

3、测试

上传文件

在这里插入图片描述
1个副本,分别存放在5台机器上
在这里插入图片描述

查看数据

102,能查看文件内容,说明是数据单元
在这里插入图片描述
103,无法查看内容,说明是校验单元
在这里插入图片描述
104,无法查看内容,说明是校验单元
在这里插入图片描述
105,能查看文件内容,说明是数据单元
在这里插入图片描述
106,能查看文件内容,说明是数据单元
在这里插入图片描述

删除数据并验证是否可以下载

最多删除2台机器上的数据
我这里删除102/103
在这里插入图片描述在这里插入图片描述
下载测试
在这里插入图片描述
可以看出,103机器,是没有数据的
在这里插入图片描述
如果,删除3台机器的数据,那么就会下载失败
这里就不做验证了。

其他路径上传文件

发现副本数依然是3份
在这里插入图片描述

相关内容

热门资讯

十分钟辅助器!吉祥填大坑攻略(... 十分钟辅助器!吉祥填大坑攻略(辅助挂)切实是真的有挂(详细辅助AA德州教程);1、玩家可以在吉祥填大...
第1分钟有挂!欢聚水鱼透视器(... 第1分钟有挂!欢聚水鱼透视器(辅助挂)技巧教程(一贯是有挂);人气非常高,ai更新快且高清可以动的一...
黑科技辅助“多乐找刺激窍门”外... 黑科技辅助“多乐找刺激窍门”外挂透视辅助挂(总是真的有挂);1、玩家可以在多乐找刺激窍门软件透明挂俱...
5分钟辅助!蛮王大厅辅助(辅助... 5分钟辅助!蛮王大厅辅助(辅助挂)原来存在有挂(详细辅助微扑克教程);在进入蛮王大厅辅助辅助挂后,参...
七分钟有挂!边锋小程序透视器(... 您好,边锋小程序透视器这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在...
黑科技辅助“菠萝神辅助器app... 黑科技辅助“菠萝神辅助器app”外挂透视辅助脚本(竟然真的是有挂);1、这是跨平台的菠萝神辅助器ap...
4分钟脚本!同城游破解版下载(... 4分钟脚本!同城游破解版下载(辅助挂)玩家教程(最初真的是有挂);是一款可以让一直输的玩家,快速成为...
第五分钟辅助挂!新众亿辅助(辅... 第五分钟辅助挂!新众亿辅助(辅助挂)总是真的有挂(详细辅助细节方法)1、任何新众亿辅助ai辅助神器的...
黑科技辅助挂“微信神兽大厅源代... 黑科技辅助挂“微信神兽大厅源代码”外挂透视辅助app(切实真的有挂);1、进入游戏-大厅左侧-新手福...
第2分钟插件!约战武汉怎么作弊... 第2分钟插件!约战武汉怎么作弊(辅助挂)必备教程(原先是有挂)1、这是跨平台的约战武汉怎么作弊黑科技...