了解jobs conf.xml参数pig.script.features

xkrw2x1b  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(294)

参数是什么

<property>
    <name>pig.script.features</name>
    <value>66080</value>
</property>

在jobs*.\u conf.xml中表示?
它对调整hadoop集群/pig工作流有用吗?网络上是否有此类参数的列表及其值的解释?

7bsow1i6

7bsow1i61#

这个参数来自pig-1333,实际上只不过是脚本级特性的紧凑表示。您可以看到一个整数值,但实际上它是一个位集,用于确定在整个pig脚本中使用哪些特性(不仅仅是在作业级别)
关于功能本身,您可以查看以下枚举:

static enum PIG_FEATURE {
     UNKNOWN,
     MERGE_JION,
     REPLICATED_JOIN,
     SKEWED_JOIN,
     HASH_JOIN,
     COLLECTED_GROUP,
     MERGE_COGROUP,
     COGROUP,
     GROUP_BY,
     ORDER_BY,
     DISTINCT,
     STREAMING,
     SAMPLING,
     MULTI_QUERY,
     FILTER,
     MAP_ONLY,
     CROSS,
     LIMIT,
     UNION,
     COMBINER;
};

现在要从您的位集(在您的案例66080中)转换,您可以应用pig的源代码中的以下算法(其中l是您的位集值):

StringBuilder sb = new StringBuilder();
for (int i=0; i<PIG_FEATURE.values().length; i++) {
    if (((l >> i) & 0x00000001) != 0) {
        if (sb.length() > 0) sb.append(",");
        sb.append(PIG_FEATURE.values()[i].name());
    }
}
return sb.toString();

例如,通过在位集上运行它,您可以看到pig脚本中具有以下特性:
收集的\u组
订购人
交叉

相关问题