hbase操作学习

1.namespace

  1. list_namespace 展示数据库
  2. create_namespace

    可以带属性名 属性值
cpp 复制代码
create_namespace 'mydb',{'author'=>'hjp','ctime'=>'2023-10-18'}
  1. describe_namespace '库名'

    查看库的详细信息

  2. alter_namespace '库名'

    修改表的详细信息

    删除就是把method设置为unset

  3. drop_namespace '库名'

    删除只能删空的,如果不空就得先删数据,

2.ddl

1.创建表
cpp 复制代码
 create 'bigdata:student',{NAME=>'info'},{NAME=>'msg'}

注意格式

create '库名:表名',{族名,属性}

库名可以省略,省略就是到默认库创建

如果没有别的属性,只有列族,可以不写NAME

create 'bigdata:student','info','msg'

2.list destribe desc

查看表

这两个都行,一个查的是表,一个查的是表的详细信息

但是destribe查询表需要带库名,如果不带,查的就是默认的库

3.alter

修改表

添加列族

alter 'student1','f3'

和创建一个用法

4.drop

删除表

每个表都有状态,enabled是可用,而如果要删除,先将他修改为不可用状态然后再进行删除

disable 表

drop 表

在这里插入图片描述

5.exists

检测表是否存在

6. list_regions

查看表的regions

存的是start_key和end_key ,这里和分区分桶不同,分区分桶是哈希,而这个是切分

3. dml

1.put
复制代码
添加数据和列(列不是列族)
注意,这里的添加指的是加进去一个新版本,而查询每次查询的都是最新版本,但是原来的版本是否保存是由表和族的VERSIONS决定,
put 表名,行key,列族:列名,''
![在这里插入图片描述](https://img-blog.csdnimg.cn/a3575c99c8334d879ca0b81766ad7015.png)
2.get
复制代码
查询单条数据
get 表名,行key
这样查询的是整个表的全部列
也可以单独查询列
get 表名,行key, 族:列![在这里插入图片描述](https://img-blog.csdnimg.cn/819b8ed80adf46cdbb989d841d03b750.png)


3.scan

扫描

可以查全表,但是一般来说没必要,大数据环境下,数据量太大,检索太耗资源(时间 性能 )

按照key的范围查

默认范围左闭右开。

注意,key的排序是字典序

hbase:025:0> scan 'bigdata:student',{STARTROW => '1001',STOPROW => '1002'}

也可以同时查询多个版本

scan 'stu',{RAW=>true,VERSIONS=>3}

4.delete 和deleteall

delete 'stu','1001','f1:name' 删除最新的

deleteall 'stu','1001','f1:name' 这一条的全部版本的列都删除

4.JAVA

1. ddl

admin

通过admin进行对表结构的操作

2.dml

tablename

相关推荐
砚边数影4 小时前
运营商网管系统重构:如何解决海量投诉数据下的“查询延迟”与“写入瓶颈”?
网络·数据库·时序数据库·kingbase·kingbasees·数据库平替用金仓·金仓数据库
shsh2004 小时前
mybatis plus打印sql日志
数据库·sql·mybatis
山峰哥4 小时前
数据库调优实战:索引策略与查询优化案例解析
服务器·数据库·sql·性能优化·编辑器
瞎某某Blinder5 小时前
DFT学习记录[4] 电子和空穴的有效质量计算全流程
python·学习
c***03235 小时前
MySQL 启动失败 (code=exited, status=1FAILURE) 异常解决方案
数据库·mysql
ritxgt0065 小时前
MySQL 数据增删改查
android·数据库·mysql
t***44235 小时前
mysql之数字函数
数据库·mysql
zlpzpl6 小时前
MySQL 的 INSERT(插入数据)详解
android·数据库·mysql
zhangfeng11336 小时前
Warmup Scheduler深度学习训练中,在训练初期使用较低学习率进行预热(Warmup),然后再按照预定策略(如余弦退火、阶梯下降等)衰减学习率的方法
人工智能·深度学习·学习
摩拜芯城IC6 小时前
8通道TDM分组传输IC DS34S108GN芯片参数资料 E1/T1分组化芯片
数据库