好网站建设,WordPress适合建大型网站吗,免费查公司信息,邯郸网站建设推广文章目录 一. DDL1. 表的DDL1.1. 创建表1.2. 删除表 2. 列族的DDL2.1. 增加一个列簇2.2. 删除列族2.3. 修改列族版本#xff08;ing#xff09; 二. DML1. 插入与更新数据2. 删除数据3. 清空表 三. DQL1. scan#xff1a;查一批数据1.1. 查询全部1.2. 过滤rowkey1.3. 过滤列… 文章目录 一. DDL1. 表的DDL1.1. 创建表1.2. 删除表 2. 列族的DDL2.1. 增加一个列簇2.2. 删除列族2.3. 修改列族版本ing 二. DML1. 插入与更新数据2. 删除数据3. 清空表 三. DQL1. scan查一批数据1.1. 查询全部1.2. 过滤rowkey1.3. 过滤列1.4. 列族查询 2. get查询一条1.1. 指定rowkey1.2. 过滤值1.3. 过滤列 先进入到shell中 ./bin/hbase shell -- 查看Hbase服务器状态
status-- 查看当前数据库中有哪些表
list-- 列出一些表的详细信息
describe book 一. DDL
1. 表的DDL
1.1. 创建表 创建student表 包含base_f1、base_f2两个列族create student, base_f1, base_f2
或者
create user, {NAME base_f1, VERSIONS 1}{NAME base_f2} 1.2. 删除表
-- 先disable 再drop hbase
disable student
drop student -- 如果不进行disable直接drop会报错 ERROR: Table student is enabled. Disable it first. 2. 列族的DDL
2.1. 增加一个列簇 alter book,date
2.2. 删除列族
alter student, delete base_f12.3. 修改列族版本ing alter book,{NAMEdate,VERSIONS3}} 二. DML
1. 插入与更新数据
-- put 表名称, rowkey, 列族:列名, 值
-- 因为表中只定义了列族所以列族下的新列可以直接在插入数据下添加
-- 向表中添加数据在想HBase的表中添加数据的时候只能一列一列的添加不能同时添加多列。put staff1,0101,info2:nnn1,test
更新操作同插入操作一模一样只不过有数据就更新(实际是加了一个版本)没数据就添加
更新版本号 -- 将student表的 base_info 列族版本号改为5alter student, NAME base_f1, VERSIONS 52. 删除数据 -- 删除student表 rowkey为rk01列标示符为 base_f1:name 的数据delete student, rk01, base_f1:name-- 指定时间戳删除
delete student, rk01, base_f1:name, 1392383705316 3. 清空表 truncate book 三. DQL
1. scan查一批数据
1.1. 查询全部
scan staff1ROW COLUMNCELL0101 columninfo1:sea, timestamp1711098585861, valuetest0102 columninfo2:addr, timestamp1711098585993, valuetest10102 columninfo2:name, timestamp1711098585923, valuetest10102 columninfo2:sea1, timestamp1711098585895, valuetest1 -- 过滤查询
scan book,{LIMIT2}-- 包含STARTROW不包含ENDROW
scan book,{STARTROW1,ENDROW3}
1.2. 过滤rowkey
-- 查询student表中row key以rk字符开头的scan student,{FILTERPrefixFilter(rk)}1.3. 过滤列
-- 查询student表中列族为 base_f1 和 base_f2且列标示符中含有aa字符的信息scan student, {COLUMNS [base_f1 , base_f2], FILTER (QualifierFilter(,substring:aa))}1.4. 列族查询 -- 列族
scan student, {COLUMNS [base_f1, base_f2]} --列族:列
scan student, {COLUMNS [base_f1:name, base_f2:address]}-- 列族:列 并指定最新的三个版本
scan student, {COLUMNS base_f1:name, VERSIONS 3}2. get查询一条
1.1. 指定rowkey --获取student表中row key为rk01的所有信息
get student, rk01-- 获取user表中row key为rk0001base_info列族的所有信息
get student, rk01, base_f1-- 获取student表中row key为rk0001base_info列族的name、age列标示符的信息
get student, rk01, base_f1:name, base_f2:address1.2. 过滤值
-- 获取student表中row key为rk01值为zhangsan的信息get student, rk01, {FILTER ValueFilter(, name:zhangsan)} 1.3. 过滤列 -- 获取student表中row key为rk01列中含有a的信息
get student, rk01, {FILTER (QualifierFilter(,substring:a))}