【问题标题】:why are HDFS ACL max_entries set to 32?为什么 HDFS ACL max_entries 设置为 32?
【发布时间】:2018-09-07 14:26:57
【问题描述】:

在 Hadoop HDFS 中,当您启用 ACL 时,我发现最大 ACL 条目设置为 32。我在 org/apache/hadoop/hdfs/server/namenode/AclTransformation.java 中获得了源代码:

私有静态最终 int MAX_ENTRIES = 32;

这样做的依据是什么?有哪些考虑? 我们可以将 32 更改为另一个更大的数字吗?我想重新配置它。

【问题讨论】:

    标签: hadoop hdfs acl


    【解决方案1】:

    ACL 在 HDFS-4685 中实现 - HDFS 中 ACL 的实现。

    据我所知,没有关于 32 限制的设计决定。但是,由于大多数 Hadoop 系统在 Linux 上运行,并且此功能受到 Linux ACL 的启发,因此该值很可能是从 ext3 的限制中借来的如中所述 POSIX Access Control Lists on Linux Andreas Grünbacher。

    文章继续提到,过多的 ACL 会产生问题,并且还显示了启用 ACL 时引入的性能差异(请参阅标题为“EA 和 ACL 性能”的部分)。

    【讨论】:

    • 非常感谢。在一些特殊情况下,我想将max_entries(current is 32)设置为64。因为有些文件和目录需要超过32个acl条目(比如40个)。您认为将常量 MAX_ENTRIES 修改为 64 是否可行? (如果我能容忍性能下降。)
    • 只要您从自己的 jar 文件中轻松使用 Hadoop,我认为没有任何问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-05
    • 1970-01-01
    • 1970-01-01
    • 2012-09-26
    • 1970-01-01
    • 2019-02-19
    • 2022-12-10
    相关资源
    最近更新 更多