hbase 表结构

#命名空间:namespace => database

list_namespace				#查看所有命名空间列表
create_namespce 'NS_NAME' 	#创建命名空间
drop_namespace 'NS_NAME'  	#删除命令空间

#数据表:namespace:table

list_namespace_tables 'NS_NAME'							#查看指定命名空间下的所有列表
	list													#查看当前hbase中的所有表
	create 'NS_NAME:TBL_NAME','CF_NAME01',...,'CF_NAMEN'	#创建表,加命令空间名,否则默认在default
	create 'NS_NAME:TBL_NAME',
	{
		NAME => 'base', 
		BLOOMFILTER => 'ROW', 
		IN_MEMORY => 'false', 
		VERSIONS => '1',
		KEEP_DELETED_CELLS => 'FALSE', 
		DATA_BLOCK_ENCODING => 'NONE', 
		COMPRESSION => 'NONE', 
		TTL => 'FOREVER', MIN_VER
		SIONS => '0', 
		BLOCKCACHE => 'true', 
		BLOCKSIZE => '65536', 
		REPLICATION_SCOPE => '0'
	},{
		NAME => 'base', 
		BLOOMFILTER => 'ROW', 
		IN_MEMORY => 'false', 
		VERSIONS => '1',
		KEEP_DELETED_CELLS => 'FALSE', 
		DATA_BLOCK_ENCODING => 'NONE', 
		COMPRESSION => 'NONE', 
		TTL => 'FOREVER', MIN_VER
		SIONS => '0', 
		BLOCKCACHE => 'true', 
		BLOCKSIZE => '65536', 
		REPLICATION_SCOPE => '0'
	},...
	
	==========================================================
	hbase(main):009:0> create_namespace 'test'
	Took 0.1331 seconds                                                                                                                                                                         
	
	hbase(main):010:0> create 'test:employee','base','kpi','pos'
	Created table test:employee
	Took 0.6986 seconds                                                                                                                                                                         
	=> Hbase::Table - test:employee
	==========================================================
	
	desc 'NS_NAME:TBL_NAME'			#查看表结构
	is_disable 'NS_NAME:TBL_NAME'	#查看表是否已禁用
	disabled 'NS_NAME:TBL_NAME'		#禁用数据表
	drop 'NS_NAME:TBL_NAME'			#删除数据表(被禁用的表才可以删除)
	is_enabled 'NS_NAME:TBL_NAME'	#查看表是否已启用
	enable 'NS_NAME:TBL_NAME'		#启用数据表

#列簇:namespace:table:colum_family

put 'NS_NAME:TBL_NAME','ROW_KEY','CF_NAME:COL_NAME','value'
get 'NS_NAME:TBL_NAME','ROW_KEY','CF_NAME:COL_NAME01[:COL_NAME]',...
scan 'NS_NAME:TBL_NAME',
	{
		STARTROW=>'START_ROW_KEY',	#inclusive
		ENDROW=>'END_ROW_KEY',		#exclusive
		COLUMNS=>['CF_NAME:COL_NAME',...],
		FILTER=>"ColumnPrefixFilter('') AND ValueFilter(=,'substring:88')"
	}
	======================================================================
	hbase(main):022:0> put 'test:employee','ZB_ADM_21062401','base:name','henry'
	hbase(main):033:0> get 'test:employee','ZB_ADM_21062401','base','kpi','pos'
	COLUMN                                           CELL                                                                                                                                       
	 base:age                                        timestamp=2021-06-24T09:39:27.893, value=18                                                                                                
	 base:name                                       timestamp=2021-06-24T09:38:36.578, value=henry                                                                                             
	 base:phone                                      timestamp=2021-06-24T09:39:51.095, value=13898767876                                                                                       
	 kpi:2018                                        timestamp=2021-06-24T09:40:15.731, value=586                                                                                               
	 kpi:2019                                        timestamp=2021-06-24T09:40:25.870, value=1228                                                                                              
	 kpi:2020                                        timestamp=2021-06-24T09:40:36.029, value=1569                                                                                              
	 pos:                                            timestamp=2021-06-24T09:42:12.582, value=manager       
	
	hbase(main):034:0> get 'test:employee','ZB_ADM_21062401','base:name','kpi:2020','pos'
	COLUMN                                           CELL                                                                                                                                       
	 base:name                                       timestamp=2021-06-24T09:38:36.578, value=henry                                                                                             
	 kpi:2020                                        timestamp=2021-06-24T09:40:36.029, value=1569                                                                                              
	 pos:                                            timestamp=2021-06-24T09:42:12.582, value=manager 

	hbase(main):035:0> get 'test:employee','ZB_ADM_21062401','base:name','kpi:2020','pos:manager'
	COLUMN                                           CELL                                                                                                                                       
	 base:name                                       timestamp=2021-06-24T09:38:36.578, value=henry                                                                                             
	 kpi:2020                                        timestamp=2021-06-24T09:40:36.029, value=1569 


	hbase(main):003:0> scan 'test:employee',{FILTER=>"ValueFilter(=,'substring:156')"}
	ROW                                              COLUMN+CELL                                                                                                                                
	 ZB_ADM_21062401                                 column=kpi:2020, timestamp=2021-06-24T09:40:36.029, value=1569
	 ZB_ADM_21062404                                 column=kpi:2020, timestamp=2021-06-24T09:40:36.029, value=156                                                                                                                                                                         
	hbase(main):004:0> scan 'test:employee',{FILTER=>"ValueFilter(=,'binary:156')"}
	ROW                                              COLUMN+CELL                                                                                                                                
	ZB_ADM_21062404                                 column=kpi:2020, timestamp=2021-06-24T09:40:36.029, value=156 

#列名20开头,值包含2

hbase(main):008:0> scan 'test:employee',{FILTER=>"ColumnPrefixFilter('20') AND ValueFilter(=,'substring:2')"}
	ROW                                              COLUMN+CELL                                                                                                                                
	 ZB_ADM_21062401                                 column=kpi:2019, timestamp=2021-06-24T09:40:25.870, value=1228                                                                             
	 ZB_ADM_21062402                                 column=kpi:2018, timestamp=2021-06-24T09:57:37.895, value=128                                                                              
	 ZB_ADM_21062402                                 column=kpi:2019, timestamp=2021-06-24T09:57:45.249, value=256 
	======================================================================== 
	 
#列:namespace:table:colum_family:colum 
#单元:namespace:table:colum_family:colum:cell{value,version,timestamp}	
	

#--------------------------------hive + hbase-------------------------------------

#解压拷贝
	cd /opt/software/hbase235/lib
	cp /opt/software/hive312/lib/hive-hbase-handler-3.1.2.jar ./
	cd /opt/software/hive312/lib/
	cp /opt/software/hbase235/lib/hbase-client-2.3.5.jar ./
	cp /opt/software/hbase235/lib/hbase-hadoop2-compat-2.3.5.jar ./
	cp /opt/software/hbase235/lib/hbase-hadoop-compat-2.3.5.jar ./
	cp /opt/software/hbase235/lib/hbase-it-2.3.5.jar ./
	cp /opt/software/hbase235/lib/hbase-server-2.3.5.jar ./
	
	create external table hb_test_employee(
	empId string,
	name string,
	age int,
	phone string,
	sale2018 int,
	sale2019 int,
	sale2020 int,
	pos2018 string,
	pos2019 string,
	pos2020 string
	)
	stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
	with serdeproperties("hbase.columns.mapping"=
	":key,base:name,base:age,base:phone,kpi:2018,kpi:2019,kpi:2020,pos:2018,pos:2019,pos:2020")
	tblproperties("hbase.table.name"="test:employee");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值