栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

hbase列式存储操作

hbase列式存储操作

需要了解Hbase相关知识可以先参考下面链接文章,是其他博主系统化整理后的。
https://www.jianshu.com/p/b23800d9b227
下面是一些Hbase的操作命令,给大家整理出来,方便大家学习

一.创建语法 创建namespace

hbase>create_namespace ‘ai_ns’

删除namespace

hbase>drop_namespace 'ai_ns’

查看有哪些namespace

hbase>list_namespace

在namespace下创建表

hbase>create ‘ai_ns:testtable’, ‘fm1’

查看namespace下的表

hbase>list_namespace_tables ‘ai_ns’

创建表 (注:列族最多五个,但里面的列不限)

create ‘表名’,’列族名’

查看表结构

desc ‘t_user’

二.修改语法 增加列族

alter ‘表名’, ‘列族名’
示例:
alter ‘tbl_user’, ‘address’

删除列族

alter ‘表名’, {NAME=> ‘列族名’, METHOD=> ‘delete’}
示例:
alter ‘tbl_user’, {NAME=> ‘address’, METHOD=> ‘delete’}

删除列族示例

alter ‘表名’, {NAME=> ‘列族名’, METHOD=> 'delete’}
示例:
alter ‘tbl_user’, {NAME=> ‘address’, METHOD=> 'delete’}

三.表是否存在语法 表是否存在

exists ‘表名’
示例:
exists ‘tbl_user’

四.删除表语法

注!!!:删除表先禁用,在删除!!!

禁用表

disable ‘表名’

查看表是否禁用

is_enabled ‘表名’

删除表

drop ‘表名’
以下所有命令需要指定 namesapce 的,只需要在表名前指定就行,即 namespace:tablename

五.插入数据语法

put ‘表名’, ‘行键’, ‘列族名’, ‘列值’
示例:
put ‘tbl_user’, ‘mengday’, ‘info:id’, ‘1’

指定 namespace 时:namespace:tablename
示例:
put ‘id_map:tbl_user’, ‘mengday’, ‘info:id’, ‘1’

六.扫描数据语法 全表扫描scan

scan ‘表名’
示例:
scan ‘tbl_user’

扫描整个列簇

scan ‘表名’, {COLUMN=>‘列族名’}
示例:
scan ‘tbl_user’, {COLUMN=>‘info’}

扫描整个列簇的某个列

scan ‘表名’, {COLUMN=>‘列族名:列名’}
示例:
scan ‘tbl_user’, {COLUMN=>‘info:age’}

七.获取数据get 获取某一行的数据

get ‘表名’, ‘行键’
示例:
get ‘tbl_user’, ‘mengday’

获取某一行某列族的数据

get ‘表名’, ‘行键’, '列族名’
示例:
get ‘tbl_user’, ‘mengday’

get ‘表名’, ‘行键’, ‘列族名:列名’
示例:
get ‘tbl_user’, ‘mengday’, ‘info’

删除某个列族中的某个列delete

delete ‘表名’, ‘行键’, ‘列族名:列名’
示例:
delete ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’

删除某行数据deleteall

deleteall ‘表名’, ‘行键’
示例:
deleteall ‘tbl_test’, ‘rowKey1’

清空整个表的数据truncate

truncate ‘表名’
示例:
truncate ‘tbl_user’

查询表中有多少行count

count ‘表名’
示例:
count ‘tbl_user’

COLUMNS: 查询同一个列族的多个列

scan ‘表名’, {COLUMNS => [ ‘列族名1:列名1’, ‘列族名1:列名2’, …]}
示例:
scan ‘tbl_user’, {COLUMNS => [ ‘info:id’, ‘info:age’]}

LIMIT 返回的行数

scan ‘表名’, { LIMIT => 行数}
示例:
scan ‘tbl_user’, { LIMIT => 2 }

八.FILTER条件过滤器

过滤器之间可以使用AND、OR连接多个过滤器。

ValueFilter 值过滤器 binary 等于某个值

scan ‘表名’, FILTER=>“ValueFilter(=,‘binary:列值’)”

substring:包含某个值

scan ‘表名’, FILTER=>“ValueFilter(=,‘substring:列值’)”
示例:
scan ‘tbl_user’, FILTER=>“ValueFilter(=, ‘binary:26’)”
scan ‘tbl_user’, FILTER=>“ValueFilter(=, ‘substring:6’)”

ColumnPrefixFilter 列名前缀过滤器 substring:包含某个值

scan ‘表名’, FILTER=>“ColumnPrefixFilter(‘列名前缀’)”
示例:
scan ‘tbl_user’, FILTER=>“ColumnPrefixFilter(‘birth’)”

通过括号、AND和OR的条件组合多个过滤器

scan ‘tbl_user’, FILTER=>“ColumnPrefixFilter(‘birth’) AND ValueFilter(=,‘substring:26’)”

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/303815.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号