美文网首页数客联盟大数据我爱编程
HBase多租户-Namespace Quota管理

HBase多租户-Namespace Quota管理

作者: guoqian123 | 来源:发表于2017-07-07 14:41 被阅读134次

在多租户的HBase环境中,通常给一个租户分配一个namespace,因此namespace的容量管理是多租户管理必不可少的一部分.目前namespace支持三种容量的管理,table的最大数目,region的最大数目和namespace占用的文件系统空间.本文给出了通过hbase shell和JAVA API两种方式设置namespace quota的方法.

Number-of-Tables Quotas和Number-of-Regions Quotas

设置namespace quota之前,必须要在hbase-site里加一项配置,否则不会生效.

hbase.quota.enable=true

hbase shell设置Quota

创建namespace时设置quota

create_namespace 'myns', {'hbase.namespace.quota.maxtables'=>'2'}

增加或修改namespace quota

alter_namespace 'myns', {METHOD => 'set', 'hbase.namespace.quota.maxregions' => '5'}

删除namespace quota

alter_namespace 'myns', {METHOD => 'unset', NAME => 'hbase.namespace.quota.maxtables'}

如果创建表的操作超过了maxregions阈值,HBase shell会给出错误提示:

hbase(main):001:0> create 'myns:t1','f1'

ERROR: The table myns:t1 is not allowed to have 1 regions. The total number of regions permitted is only 5, while current region count is 5. This may be transient, please retry later if there are any ongoing split operations in the namespace.

JAVA API设置Quota

connection = ConnectionFactory.createConnection(conf);
Admin admin = this.connection.getAdmin();
NamespaceDescriptor namespaceDescriptor = NamespaceDescriptor.create("myns").build();
namespaceDescriptor.setConfiguration(
        "hbase.namespace.quota.maxtables", "10");
namespaceDescriptor.setConfiguration(
        "hbase.namespace.quota.maxregions", "100");
admin.createNamespace(namespaceDescriptor);
admin.close();

注: 以上两种quota管理从HDP2.4开始就支持,更早之前的HDP版本没有调研是否支持.

Namespace Storage Quota

HDP2.6加入了新的feature,支持给namespace设置文件系统空间容量,并且提供了多种策略定义当容量超过阈值之后的行为. 具体命令可以参考 Hortonworks官方文档: HBase Quota Management

在此之前的版本,要想限制namespace占用的空间大小,只能利用hdfs给namespace所在的目录设置容量限制.

相关文章

  • HBase多租户-Namespace Quota管理

    在多租户的HBase环境中,通常给一个租户分配一个namespace,因此namespace的容量管理是多租户管理...

  • HBase读写数据流程

    hbase的系统表 hbase:namespace 存储了hbase中的所有namespace的信息 hbase...

  • Hbase多租户(1)

    Hbase 1.1.0 版本后社区给出处理 multiple workloads的方案,Quotas、Reques...

  • HBase多租户系统设计

    面向多租户的数据安全和资源隔离能力,提供标准的用户名密码认证、ACL、Quota、Resource Group等特...

  • K8S命令汇总

    常用命令 namespace命令(多租户管理) pv命令 查看token K8S污点机制 节点污点的变动会影响到新...

  • 基于Kubernetes中networkPolicy的隔离策略测

    前言 Kubernetes提供了namesapce,用来做多租户隔离,但是如果不配置网络策略,namespace的...

  • hbase namespace

    在关系数据库系统中,命名空间namespace指的是一个表的逻辑分组,同一组中的表有类似的用途。hbase命名空间...

  • HBASE命令

    1. HBASE命令 1.1 namespace概述 在HBase中,namespace命名空间指对一组表的逻辑分...

  • 多租户开发框架

    一、项目简介 多租户开发框架 二、实现功能 权限用户(菜单节点、权限角色、管理员管理、操作日志) 租户管理(租户财...

  • Hbase 海量数据仓库

    HBASE简介 a). 没有数据库的概念,只有namesapce● hbase:系统内建表,包括namespace...

网友评论

    本文标题:HBase多租户-Namespace Quota管理

    本文链接:https://www.haomeiwen.com/subject/cxolhxtx.html