我正在尝试设置一个hadoop3集群。关于擦除编码功能的两个问题:如何确保启用擦除编码?我还需要将复制因子设置为3吗?请说明与擦除编码/复制相关的配置属性,以便获得与hadoop 2相同的数据安全性(复制因子3),但具有hadoop 3擦除编码的磁盘空间优势(仅50%的开销而不是200%)。
2nc8po8w1#
在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 命令从目录中删除策略。例如,unset policy: ./bin/hdfs ec -unsetPolicy -path /tmp 禁用策略的命令: ./bin/hdfs ec -disablePolicy -policy XOR-2-1-1024k
folder
setPolicy
1:
getPolicy
2:
./bin/hdfs ec -listPolicies
./bin/hdfs ec -enablePolicy -policy XOR-2-1-1024k
./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
1条答案
按热度按时间2nc8po8w1#
在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
命令从目录中删除策略。例如,unset policy:./bin/hdfs ec -unsetPolicy -path /tmp
禁用策略的命令:./bin/hdfs ec -disablePolicy -policy XOR-2-1-1024k