当前位置: 首页 > news >正文

hbase学习2

一、表管理操作

  1. 创建表
    hbase
    create '表名', '列族1', '列族2', ...

示例:创建student表,有info和score两个列族

create 'student', 'info', 'score'
2. 查看所有表
hbase
list
3. 查看表描述
hbase
describe '表名'
describe 'student'
4. 检查表是否存在
hbase
exists '表名'
5. 禁用/启用表
hbase
disable '表名' # 禁用表(删除前必须先禁用)
enable '表名' # 启用表
is_disabled '表名' # 检查是否禁用
is_enabled '表名' # 检查是否启用
6. 删除表
hbase
disable '表名'
drop '表名'
7. 修改表(添加列族)
hbase
alter '表名', '列族名'
alter 'student', 'contact'
二、数据操作(CRUD)

  1. 插入/更新数据
    hbase
    put '表名', '行键', '列族:列名', '值'

示例:

put 'student', '1001', 'info:name', '张三'
put 'student', '1001', 'info:age', '20'
put 'student', '1001', 'score:math', '85'
2. 查询数据
hbase

获取整行数据

get '表名', '行键'
get 'student', '1001'

获取指定列族

get '表名', '行键', '列族'
get 'student', '1001', 'info'

获取指定列

get '表名', '行键', '列族:列名'
get 'student', '1001', 'info:name'
3. 扫描表数据
hbase

扫描整个表

scan '表名'
scan 'student'

限制扫描行数

scan '表名', {LIMIT => 10}
scan 'student', {LIMIT => 5}

按范围扫描

scan '表名', {STARTROW => '起始行键', ENDROW => '结束行键'}
scan 'student', {STARTROW => '1001', ENDROW => '1005'}

扫描指定列

scan '表名', {COLUMNS => ['列族:列名']}
scan 'student', {COLUMNS => ['info:name', 'score:math']}
4. 删除数据
hbase

删除整个行

deleteall '表名', '行键'
deleteall 'student', '1001'

删除指定列

delete '表名', '行键', '列族:列名'
delete 'student', '1001', 'info:age'
三、集群与状态管理

  1. 查看集群状态
    hbase
    status
    status 'summary' # 简要状态
    status 'detailed' # 详细状态
  2. 查看版本信息
    hbase
    version
  3. 查看当前用户
    hbase
    whoami
  4. 查看表数量统计
    hbase
    count '表名'
    count 'student'
    四、高级操作
  5. 清空表(保留表结构)
    hbase
    truncate '表名'
    truncate 'student'
  6. 压缩表
    hbase
    major_compact '表名' # 主要压缩
    minor_compact '表名' # 次要压缩
  7. 分屏显示(防止数据过多)
    hbase
    scan 'student',
  8. 过滤器查询
    hbase

值过滤器

scan 'student', {FILTER => "ValueFilter(=, 'binary:张三')"}

列前缀过滤器

scan 'student', {FILTER => "ColumnPrefixFilter('na')"}
五、帮助命令

  1. 查看所有命令帮助
    hbase
    help
  2. 查看具体命令帮助
    hbase
    help '命令名'
    help 'create'
    help 'scan'
    六、实用示例组合
    示例1:创建表并插入数据
    hbase
    create 'user', 'basic', 'address'
    put 'user', '001', 'basic:name', 'Alice'
    put 'user', '001', 'basic:age', '25'
    put 'user', '001', 'address:city', 'Beijing'
    示例2:查询特定数据
    hbase

查询所有数据

scan 'user'

只查询基本信息

get 'user', '001', 'basic'

只查询姓名

get 'user', '001', 'basic:name'
示例3:范围查询
hbase

查询行键001到003的数据

scan 'user', {STARTROW => '001', ENDROW => '004'}

http://www.rkmt.cn/news/7828.html

相关文章:

  • MySQL迁移至GreatSQL后,timestamp字段插入报错解析
  • 大模型decoder中权重矩阵的理解 - 实践
  • 【初赛】数 - Slayer
  • 【初赛】链表 - Slayer
  • 第2章 zynq开发板FSBL的生成和NAND烧录
  • 工具大全
  • RocketMQ vs kafka
  • LobeChat搭建
  • url测试脚本2
  • C# 2025年6-9月TIOBE排名增长及未来展望
  • 飞算 JavaAI 启用体验全解析
  • 采用tree命令导出文件夹/文件的目录树(linux)
  • 深入解析 JVM 类加载机制:从字节码到运行时对象
  • 博弈论学习(第二天)
  • PHP 和 Elasticsearch:给你的应用加个强力搜索引擎
  • 一款多功能Linux服务器Web管理面板
  • 完整教程:C/C++:看简介吧= ̄ω ̄=(2)
  • 题解:P12558 [UOI 2024] Heroes and Monsters
  • 数据分析与产品、运营、市场之间如何有效对齐 - 详解
  • P14053 [SDCPC 2019] Median 题解
  • lQueryDef查询Evaluate报该几何不包含M值问题。
  • 我的首个RCE漏洞发现之旅:Apache ActiveMQ远程代码执行实战
  • 北京市社保费用差额补缴计算工具
  • 使用自签名SSL证书有什么风险?
  • US$149 Foxwell NT630 Elite ABS and Airbag Reset Tool with SAS
  • 【API接口】最新可用手机号归属地查询接口
  • UE5创建的对象无法用ai操控
  • 【API接口】最新可用番茄畅听接口
  • 【API接口】最新可用七猫短剧接口
  • 搜索百科(2):Apache Solr — 企业级搜索的开源先锋