设为首页 加入收藏

TOP

hbase產檢刪除修改表
2019-05-12 02:08:26 】 浏览:115
Tags:hbase 修改
import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.TableNotFoundException;
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.regionserver.BloomType;
import org.junit.Before;
import org.junit.Test;

public class Test01 {
	
	static Connection coon = null;
	
	
	
	@Before
	public static void init() throws IOException{
		//构建连接对象
		 Configuration conf = HBaseConfiguration.create();
		 coon = ConnectionFactory.createConnection(conf);
		
		 conf.set("hbase.zookeeper.quorum", "hadoop1:2181,hadoop2:2181,hadoop3:2181");
	}
	
	@Test//創建表
	public static void CreateTable() throws IOException{
		
		// 从连接中构造一个DDL操作器
		Admin addmin = coon.getAdmin();
		
		//创建一个表定义描述对象
		HTableDescriptor hTableDescriptor = new HTableDescriptor(TableName.valueOf("user_info"));
		
		// 创建列族描述对象
		HColumnDescriptor hColumnDescriptor = new HColumnDescriptor("base_info");
		HColumnDescriptor hColumnDescriptor2 = new HColumnDescriptor("base_info2");
		
		//表描述对象中加入列族描述信息
		hTableDescriptor.addFamily(hColumnDescriptor);
		hTableDescriptor.addFamily(hColumnDescriptor2);
		
		//用DD操作对象:addmin来建表
		addmin.createTable(hTableDescriptor);
		
		addmin.close();
	}
	
	@Test//刪除表
	public static void dropTable() throws IOException{
		Admin admin = coon.getAdmin();
		
		//停用表
		admin.disableTable(TableName.valueOf("user_info"));
		
		//刪除表
		admin.deleteTable(TableName.valueOf("user_info"));
		
		
	}
	@Test
	public static void alterTable() throws TableNotFoundException, IOException{
		
		Admin admin = coon.getAdmin();
		//取出舊表定義
		HTableDescriptor tableDescriptor = admin.getTableDescriptor(TableName.valueOf("user_info"));
		
		//重新構造列族定義
		HColumnDescriptor hColumnDescriptor = new HColumnDescriptor("other_info");
		hColumnDescriptor.setBloomFilterType(BloomType.ROW);
		//表定義對象加入列祖描述信息
		tableDescriptor.addFamily(hColumnDescriptor);
		//修改表
		 admin.modifyTable(TableName.valueOf("user_info"), tableDescriptor);
		
	}

}

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇数据库中间件-MyCat 下一篇局部变量、全局变量、堆、堆栈、..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目