ApachePhoenix常用命令及基本操作

注意:

  • 使用Phoenix前先启动HBase
  • Phoenix会自动把小写字母转成大写,如果要保持小写字母,需要在字符外添加双引号
  • Linux中启动Phoenix

    cd /export/server/apache-phoenix-5.0.0-HBase-2.0-bin/bin/
    
    # 当前虚拟机中安装了anaconda,所以python版本是3.8,而默认启动使用的是python2
    python2 sqlline.py node1.itcast.cn:2181
  • 创建表

    create table [if not exists] 表名 (
       rowkey名称 数据类型 primary key,
       列族名.列名1 数据类型,
       列族名.列名2 数据类型,
       ...
    );
  • 查看所有表

    # system namespace的都是phoenix创建
    !table
  • 查看表结构

    !desc 表名
  • 查看详细数据

    explain select * from 表名 limit 10;
  • 删除表

    drop table [if exists] 表名
  • 退出终端

    !quit
  • 向表插入数据(没数据就是插入,有数据就是更新)

    upsert into 表名(列族.列限定符1,列族.列限定符2) values(xxx, yyy, zzz)
  • 删除数据

    delete from 表名 where "id" = '000001';
  • 分页查询

    select * from ORDER_DTL limit 10 [offset 5];
  • rowkey预分区

    create table [if not exists] 表名 (
       rowkey名称 数据类型 primary key,
       列族名.列名1 数据类型,
       列族名.列名2 数据类型,
       ...
    )
    compession='GZ'    # 指定数据压缩格式
    split on ('3','5','7');    # 分成4个区
  • rowkey加盐预分区

    create table [if not exists] 表名 (
       rowkey名称 数据类型 primary key,
       列族名.列名1 数据类型,
       列族名.列名2 数据类型,
       ...
    )
    compession='GZ'    # 指定数据压缩格式
    salt_buckets=10;    # 分成10个区
  • Phoenix 建立视图,映射HBase中的表

    # 注意:视图名称需与表名一致,视图列名和hbase列族名 的列限定符 保持一致
    create view "名称空间"."表名"(
    pk varchar primary key,
    "列族名".“列限定符” 数据类型,
    . . .
    );
  • 全局索引(单独创建索引表,先查索引表再回到目标表查找)

    # 创建全局索引
    create index 索引名称 on 表名(列名1, 列名2...);
    
    # 删除全局索引
    drop index 索引名称 on 表名;
  • 本地索引(不会单独创建索引表,直接在目标表修改索引字段)

    # 创建本地索引
    create local index 索引名称 on 表名(列名1, 列名2 . . .)
    
    # 删除本地索引
    drop index 索引名称 on 表名;
  • 覆盖索引(无法单独使用,配合以上索引使用,查询时不用去目标表查询,直接从全局/本地索引中获取出数据)

    # 创建覆盖索引
    creare [local] index 索引名称 on 表名(列名1, 列名2...) include(列名3)
    
    # 删除覆盖索引,得和前者索引一起删才行
    drop index 索引名称 on 表名;
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奇迹虎虎

客官,赏个银子吧,别下次一定了

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值