我们如何在hadoop生态系统之上建立多租户?

时间:2015-07-10 09:57:58

标签: hadoop hive multi-tenant

我们正在努力在hadoop生态系统之上建立多租户。

我们的生态系统通常由hdfs,纱线,蜂巢,oozie,zookeeper等hadoop组件组成。

直到现在,我已经研究过像

这样的概念
  1. HDFS Federation
  2.   

    它借助每个联合HDFS分区的单独名称节点联合分布式存储(HDFS)。

         

    问题:假设您有2个租户用于单个群集,因此有2个名称节点,2个名称节点将意味着2个蜂巢服务器,2个oozie服务器以及类似的2个其他hadoop组件,它们将与各自的名称节点通信并在各自的名称中写入HDFS分区。

    1. Capacity scheduler
    2.   

      可以为每个租户强制执行计算配额(比如租户1 - 50%和租户2 - 50%)

      1. MAPR multi tenancy features
      2.   

        我找不到如何为hadoop集群开发类似的多租户环境。

        我想要做的就是每个租户(及其用户)都会有一个

        1. 计算配额(通过容量调度程序)
        2. HDFS中每个租户的HDFS目录(例如/ usr / tenant1,/ usr / tenant2)
        3.   

          属于tenant1组的所有用户都有权访问hdfs目录(/ usr / tenant1 / username)

          我面临的问题是...... 假设我从hive创建一个表作为tenant1用户,它创建了table / apps / hive / warehouse类似/ apps / oozie / data。我在想的是它会在用户的hdfs主目录中创建表,因此只有tenant1用户才能访问它。但它没有发生。

          我可以获得一些帮助,帮助我如何继续开发以在Hadoop生态系统上创建多租户?

1 个答案:

答案 0 :(得分:0)

您可以在某种程度上使用多个命名空间来实现,以满足您的要求。

我会请求您查看名称空间上的Apache博客。

https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/Federation.html

您可以在名称节点中实现多个名称空间。

亲切的问候 安德鲁