HBase之表空间
1、介绍
在HBase中,namespace命名空间指对一组表的逻辑分组,类似RDBMS中的database,方便对表在业务上划分。Apache HBase从0.98.0, 0.95.2两个版本开始支持namespace级别的授权操作,HBase全局管理员可以创建、修改和回收namespace的授权。 2、namespace
HBase系统默认定义了两个缺省的namespace
hbase:系统内建表,包括namespace和meta表
default:用户建表时未指定namespace的表都创建在此 创建namespace:
hbase(main):010:0* create_namespace 'datamanage' 查看namespace:
hbase(main):011:0> describe_namespace 'datamanage'
DESCRIPTION
{NAME =>'datamanage'}
列出所有namespace:
hbase(main):012:0> list_namespace
NAMESPACE
datamanage
default
hbase 在namespace下创建表:
hbase(main):013:0> create 'datamanage:testtable','colfam01'
=> Hbase::Table - datamanage:testtable
查看namespace下的表
hbase(main):015:0> list_namespace_tables 'datamanage'
TABLE
testtable 删除namespace: hbase(main):016:0> drop_namespace 'datamanage' ERROR: org.apache.hadoop.hbase.constraint.ConstraintException: Only empty namespaces can be removed. Namespace datamanage has 1 tables
at org.apache.hadoop.hbase.master.TableNamespaceManager.remove(TableNamespaceManager.java:200)
at org.apache.hadoop.hbase.master.HMaster.deleteNamespace(HMaster.java:2488)
at org.apache.hadoop.hbase.master.MasterRpcServices.deleteNamespace(MasterRpcServices.java:489)
at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:55730)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2178)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:112)
at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:133)
at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:108)
at java.lang.Thread.run(Thread.java:745) Here is some help for this command:
Drop the named namespace. The namespace must be empty.
#删除表
hbase(main):017:0> disable 'datamanage:testtable'
hbase(main):018:0> drop 'datamanage:testtable'
#删除datamanage命名空间
hbase(main):019:0> drop_namespace 'datamanage'
java API:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.*;
import org.apache.hadoop.hbase.client.Admin;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.util.Bytes; import java.io.IOException; /**
* Hbase namespace
*/
public class NameSpaceInHbase {
public static void main(String[] args) throws IOException { Configuration conf = HBaseConfiguration.create();
Connection connection = ConnectionFactory.createConnection(conf);
//管理员对象
Admin admin = connection.getAdmin();
//创建命名空间
NamespaceDescriptor namespaceDescriptor = NamespaceDescriptor.create("datastrom3").build();
admin.createNamespace(namespaceDescriptor);
//表名
TableName tableName = TableName.valueOf("datastrom3","testtable3");
//表描述
HTableDescriptor desc = new HTableDescriptor(tableName);
//列族描述datastrom
HColumnDescriptor coldef = new HColumnDescriptor(Bytes.toBytes("colfam3"));
//表加入列族
desc.addFamily(coldef);
//创建表
admin.createTable(desc);
//校验表是否可用
boolean avail = admin.isTableAvailable(tableName);
System.out.println("Table available: "+avail);
}
} /**
preHell:
========
nextShell:
hbase(main):005:0> list
TABLE
testtable2
user
2 row(s) in 0.0070 seconds java output:
=====
Table available: true shell:
=====
hbase(main):022:0> list
TABLE
datastrom3:testtable3
...
**/
HBase之表空间的更多相关文章
- HBase(八): 表结构设计优化
在 HBase(六): HBase体系结构剖析(上) 介绍过,Hbase创建表时,只需指定表名和至少一个列族,基于HBase表结构的设计优化主要是基于列族级别的属性配置,如下图: 目录: BLOOMF ...
- ORA-01653 无法在表空间扩展的解决办法 -- 增加表空间大小或给表空间增加数据文件
转自原文 ORA-01653 无法在表空间扩展的解决办法 -- 增加表空间大小或给表空间增加数据文件 当前系统的数据量越来越大的,昨天还运行正常的数据库,突然无法使用了.经过定位发现是"OR ...
- Oracle 表空间和用户权限管理
一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...
- Oracle:一个用户操作多个表空间中表的问题(转)
原文地址:http://blog.csdn.net/shmiloy001/article/details/6287317 首先,授权给指定用户. 一个用户的默认表空间只能有一个,但是你可以试下用下面的 ...
- Oracle创建表空间
1.创建表空间 导出Oracle数据的指令:/orcl file=C:\jds.dmp owner=jds 导入Oracle数据的指令:imp zcl:/orcl file=C:\jds.dmp fu ...
- Oracle使用SQL传输表空间
源环境:RHEL 6.4 + Oracle 11.2.0.4 目的环境:RHEL 6.4 + Oracle 11.2.0.4 DG双机 要求:使用SQL传输表空间DBS_D_JINGYU从源环境到目的 ...
- Oracle架构设计01:表空间的管理维护规范
Oracle数据库的表空间管理可以说是非常简单和基础的一项维护工作,但是越简单的事情就越要制定统一的规范,这样数据库的各项管理工作才会愈加的简单高效. 那么接下来,问题来了.. Q1:当我们接手一个新 ...
- MapReduce和Spark写入Hbase多表总结
作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 大家都知道用mapreduce或者spark写入已知的hbase中的表时,直接在mapreduc ...
- (总结)Oracle 11g常用管理命令(用户、表空间、权限)
1.启动oracle数据库: 从root切换到oracle用户进入:su - oracle 进入sqlplus环境,nolog参数表示不登录:sqlplus /nolog 以管理员模式登录:sqlpl ...
随机推荐
- bnu A Matrix 北京邀请赛A题
A Matrix Time Limit: 2000ms Memory Limit: 65536KB 64-bit integer IO format: %lld Java class n ...
- Android Https
/** * HttpUrlConnection支持所有Https免验证,不建议使用 * * @throws KeyManagementException * @throws NoSuchAlgorit ...
- Struts2的配置
Struts2的配置 Struts2可以通过Convention插件管理Action和结果映射,也可以通过使用XML文件进行管理,这两种方式各有好处:使用Convention插件管理减少了XML文件的 ...
- FCKeditor使用方法技术详解
转载自 http://www.cnblogs.com/cchyao/archive/2010/07/01/1769204.html 1.概述 FCKeditor是目前最优秀的可见即可得网页编辑器之一, ...
- activiti学习总结
Activiti界面元素的使用总结 一.图形设计中元素的使用 1.SequenceFlow:连接线,可以连接两个任务,来管理流程实例的流向 -----General -----id:流程的id,用与程 ...
- BZOJ 2433 智能车比赛(计算几何+最短路)
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2433 题意:若干个矩形排成一排(同一个x之上最多有一个矩形),矩形i和i+1相邻.给定两 ...
- CodeForces 445B DZY Loves Chemistry
DZY Loves Chemistry Time Limit:1000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64 ...
- JaveScript变量作用域说明
JaveScript变量作用域说明 一:将var类型的变量视为变量,不带var类型的变量视为常量(但是注意php的常量不可以重新定义,而javascript中不带var类型的变量可以重新定义) ...
- C语言文法定义与C程序的推导过程
program à external_declaration | program external_declaration <程序> -> <外部声明> | < ...
- STORM_0003_linux_zookeeper_storm_遇到的几个问题
1. 首先是花费时间在windows的eclipse下面安装fatjar因为是新版的缘故,装了很久才装上. 后来发现其实mvn可以打包出没有依赖的jar包 2. 然后是按照在ubuntu环境中的mvn ...