我正在尝试设置 Hadoop 3 集群。
关于擦除编码功能的两个问题:
- 如何确保启用纠删码?
- 我还需要将复制因子设置为 3 吗?
请注明与纠删码/复制相关的相关配置属性,以获得与 Hadoop 2 相同的数据安全性(复制因子 3),但具有 Hadoop 3 纠删码的磁盘空间优势(仅 50% 开销而不是 200%) .
我正在尝试设置 Hadoop 3 集群。
关于擦除编码功能的两个问题:
请注明与纠删码/复制相关的相关配置属性,以获得与 Hadoop 2 相同的数据安全性(复制因子 3),但具有 Hadoop 3 纠删码的磁盘空间优势(仅 50% 开销而不是 200%) .
在 Hadoop3 中,我们可以对folder
HDFS 中的任何内容启用擦除编码策略。默认情况下,Hadoop3 中未启用纠删码,您可以使用setPolicy
命令并指定所需的文件夹路径来启用它。
1:
为确保启用纠删码,您可以运行getPolicy
命令。
2:
在 Hadoop3 中,复制因子设置将仅影响未由纠删码 setPolicy 配置的其他文件夹。您可以在单个集群中同时使用纠删码和复制因子设置。
列出支持的擦除策略的命令:
./bin/hdfs ec -listPolicies
启用 XOR-2-1-1024k 擦除策略的命令:
./bin/hdfs ec -enablePolicy -policy XOR-2-1-1024k
将擦除策略设置为 HDFS 目录的命令:
./bin/hdfs ec -setPolicy -path /tmp -policy XOR-2-1-1024k
获取策略集到给定目录的命令:
./bin/hdfs ec -getPolicy -path /tmp
从目录中删除策略的命令。即取消设置策略:
./bin/hdfs ec -unsetPolicy -path /tmp
禁用策略的命令:
./bin/hdfs ec -disablePolicy -policy XOR-2-1-1024k