hbase 电商2

一、基础读写操作

  1. 命名空间管理
    • 创建命名空间:create_namespace 'ns_ecommerce'
    • 列出所有命名空间:list_namespace
    • 删除命名空间:drop_namespace 'ns_ecommerce'
    • 修改命名空间属性:alter_namespace 'ns_ecommerce', {METHOD => 'set', 'PROPERTY_NAME' => 'PROPERTY_VALUE'}
  2. 表结构管理
    • 创建表(指定列族):create 'ns_ecommerce:order', 'info', 'detail'
    • 修改列族(增加版本数):alter 'ns_ecommerce:order', {NAME => 'info', VERSIONS => 5}
    • 禁用表:disable 'ns_ecommerce:order'
    • 删除表:drop 'ns_ecommerce:order'
    • 列出所有表:list
    • 查看表结构:desc 'ns_ecommerce:order'
  3. 数据读写
    • 插入数据:put 'ns_ecommerce:order', 'order_001', 'info:user_id', 'u_1001'
    • 全表扫描:scan 'ns_ecommerce:order'
    • 读取单行数据:get 'ns_ecommerce:order', 'order_001'
    • 删除单元格数据:delete 'ns_ecommerce:order', 'order_001', 'info:user_id'
    • 删除整行数据:deleteall 'ns_ecommerce:order', 'order_001'

二、复杂读写操作

  1. 列族属性配置
    • 修改列族 TTL(生存时间,单位秒):alter 'ns_ecommerce:order', {NAME => 'detail', TTL => 86400}
    • 修改列族压缩格式:alter 'ns_ecommerce:order', {NAME => 'detail', COMPRESSION => 'SNAPPY'}
  2. 条件扫描
    • 指定行范围扫描:scan 'ns_ecommerce:order', {STARTROW => 'order_001', STOPROW => 'order_010'}
    • 指定列族 / 列扫描:scan 'ns_ecommerce:order', {COLUMNS => ['info:user_id', 'detail:amount']}
    • 限制扫描行数:scan 'ns_ecommerce:order', {LIMIT => 10}
    • 指定版本数扫描:scan 'ns_ecommerce:order', {VERSIONS => 3}
  3. 版本数据读取
    • 获取单行多版本数据:get 'ns_ecommerce:order', 'order_001', {VERSIONS => 5}

三、高级操作

  1. 数据追加与统计
    • 追加数据:append 'ns_ecommerce:order', 'order_001', 'detail:remark', 'gift included'
    • 统计表行数:count 'ns_ecommerce:order'
  2. 集群与命名空间信息
    • 查看集群状态:status
    • 列出命名空间下所有表:list_namespace_tables 'ns_ecommerce'
    • 描述命名空间:describe_namespace 'ns_ecommerce'
  3. 快照与恢复
    • 创建表快照:snapshot 'ns_ecommerce:order', 'snap_order_2024'
    • 恢复快照:restore_snapshot 'snap_order_2024'
    • 克隆快照为新表:clone_snapshot 'snap_order_2024', 'ns_ecommerce:order_bak'
  4. Region 管理
    • 拆分 Region:split 'ns_ecommerce:order', 'order_050'
    • 合并两个 Region:merge_region 'region_id1', 'region_id2'
    • 查看表的 Region 拆分点:get_splits 'ns_ecommerce:order'

四、过滤器应用

  • 值过滤(匹配包含指定字符串的值):scan 'ns_ecommerce:order', {FILTER => "ValueFilter(=, 'substring:100')"}
  • 列名前缀过滤:scan 'ns_ecommerce:order', {FILTER => "ColumnPrefixFilter('user')"}
  • 行键前缀过滤:scan 'ns_ecommerce:order', {FILTER => "PrefixFilter('order_00')"}
  • 单列值过滤(筛选指定列值等于某值的行):scan 'ns_ecommerce:order', {FILTER => "SingleColumnValueFilter('info', 'user_id', =, 'binary:u_1001')"}
相关推荐
全栈前端老曹25 分钟前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
神梦流39 分钟前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
让学习成为一种生活方式1 小时前
trf v4.09.1 安装与使用--生信工具42-version2
数据库
啦啦啦_99991 小时前
Redis-5-doFormatAsync()方法
数据库·redis·c#
生产队队长1 小时前
Redis:Windows环境安装Redis,并将 Redis 进程注册为服务
数据库·redis·缓存
老邓计算机毕设1 小时前
SSM找学互助系统52568(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb 毕业设计
痴儿哈哈1 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
Σίσυφος19002 小时前
PCL法向量估计 之 方向约束法向量(Orientation Guided Normal)
数据库
老毛肚2 小时前
手写mybatis
java·数据库·mybatis
海山数据库2 小时前
移动云大云海山数据库(He3DB)postgresql_anonymizer插件原理介绍与安装
数据库·he3db·大云海山数据库·移动云数据库