Hadoop 3:如何配置/启用擦除编码?

时间:2018-07-23 09:37:58

标签: hadoop hdfs bigdata hadoop3 erasure-code

我正在尝试设置Hadoop 3集群。

有关删除编码功能的两个问题:

  1. 如何确保启用擦除编码?
  2. 我仍然需要将复制因子设置为3吗?

请指明与擦除编码/复制相关的相关配置属性,以便获得与Hadoop 2相同的数据安全性(复制因子3),但具有Hadoop 3擦除编码的磁盘空间优势(仅50%的开销,而不是200%)。

1 个答案:

答案 0 :(得分:0)

在Hadoop3中,我们可以对HDFS中的任何messageId启用擦除编码策略。默认情况下,在Hadoop3中未启用擦除编码,您可以通过使用folder命令并指定所需的文件夹路径来启用它。

setPolicy要确保启用擦除编码,可以运行1:命令。

getPolicy在Hadoop3中,复制因子设置将仅影响其他未由擦除代码setPolicy配置的文件夹。您可以在单个群集中同时使用Erasure编码和复制因子设置。

列出支持的擦除策略的命令:

2:

启用XOR-2-1-1024k擦除策略的命令:

./bin/hdfs ec -listPolicies

将擦除策略设置为HDFS目录的命令:

./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