设为首页 加入收藏

TOP

hbase创建namespace,及创建表时指定namespace
2019-04-14 13:45:21 】 浏览:336
Tags:hbase 创建 namespace 指定

转自:http://blog.sina.com.cn/s/blog_7de580090102v117.html

public static void createTableAndNameSpace(String spaceName,String tableName) throws IOException {
        //创建namespace,名称只能是 alphanumeric characters,字母数字字符,
        admin.createNamespace(NamespaceDescriptor.create(spaceName).build());
        //然后创建表,指定属于哪个namespace,否则是默认namespace default,表名格式为 namespName:tableName
        //如果没有namesp不存在,需要进行第一步,否则会创建表失败
        TableDescriptorBuilder builder = TableDescriptorBuilder.newBuilder(TableName.valueOf(spaceName+":"+tableName));

        ColumnFamilyDescriptorBuilder cfDescriptorBuilder = ColumnFamilyDescriptorBuilder.newBuilder(Bytes.toBytes("cf1"));
        ColumnFamilyDescriptor cfDescriptor = cfDescriptorBuilder.build();

        builder.setColumnFamily(cfDescriptor);
        //创建表
        admin.createTable(builder.build());
        System.out.println("创建NameSpace"+spaceName+"和表"+tableName+"成功");
        admin.close();

    }

可以存在相同的表名,分别在两个不同的namespace,

创建表时,不指定namespace,属于默认的namespace,default;

创建表时,指定namespace,即表名为 namespaceName:tableName,如果namespace不存在,创建表会失败,需要先创建namespace,

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Spring + Hbase整合 下一篇Hbase导入数据

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目