zoukankan      html  css  js  c++  java
  • hbase的简单操作

    基本命令

      1)打开hbase shell

         2)创建表

    # create '表名', '列族1', '列族2'
    create 'user', 'info', 'data'

      3)添加数据

    #put '表名', '行键', '列族:key', 'value'
    put 'user', 'r001', 'info:name', 'zhangsan' put 'user', 'r001', 'info:gender', 'female' put 'user', 'r001', 'info:age', 20 put 'user', 'r001', 'data:pic', 'picture'

        4)查询数据

    #get '表名', '行键'                获取user表中row key为r001的所有信息
    get 'user', 'r001'

    #get '表名', '行键', '列族' 获取user表中row key为r001,info列族的信息
    get 'user', 'r001', 'info'

    #get '表名', '行键', '列族:key', '列族:key' 获取user表中row key为r001,info列族的name、age列标示符的信息
    get 'user', 'r001', 'info:name', 'info:age'

    #get '表名', '行键', '列族1','列族2' 获取user表中row key为r001,info、data列族的信息, 两种写法
    get 'user','r001', 'info','data'
    get 'user','r001', {COLUMN=> ['data','info']}

    #获取user表中row key为r001,cell的值为zhangsan的信息
    get 'user','r001',{FILTER=> "ValueFilter(=,'binary:zhangsan')"}

    #获取user表中row key为r001,列标示符中含有a的信息
    get 'user', 'r001', {FILTER => "(QualifierFilter(=,'substring:a'))"}

    通过scan 条件查询

    # 查询user表中的所有信息
    scan 'user'

    # 查询user表中列族为info的信息
    scan 'user', {COLUMNS => 'info'}

    # 查询user表中列族为info和data的信息
    scan 'user', {COLUMNS => ['info', 'data']}

    # 查询user表中列族为info列为name和列族为data列为pic的信息
    scan 'user', {COLUMNS => ['info:name', 'data:pic']}

    # 查询user表中列族为info、列标示符为name的信息,并且版本最新的5个
    scan 'user', {COLUMNS => 'info:name', VERSIONS => 5}

    # 查询user表中列族为info,rk范围是[r001, r003)的数据
    scan 'user', {COLUMNS => 'info', STARTROW => 'r001', ENDROW => 'r003'}

    # 查询user表中row key以rk字符开头的
    scan 'user',{FILTER=>"PrefixFilter('rk')"}

    # 查询user表中指定范围的数据 后面是时间戳
    scan 'user', {TIMERANGE => [1608023312246, 1608023314231]}

      5)更新数据

    更新数据与插入操作相同
    # 将user表的f1列族版本号改为5 
    alter 'user', NAME => 'info', VERSIONS => 5

      6)删除数据

    # 删除user表row key为r001,列标示符为info:name的数据
    delete 'user', 'r001', 'info:name'

    # 删除user表row key为r001,列标示符为data:pic,timestamp为1608023312246的数据
    delete 'user', 'r001', 'data:pic', 1608023312246

    #删除一个列族 两种写法
    alter 'user', NAME => 'info', METHOD => 'delete'
    alter 'user', 'delete' => 'info'

    #清空数据表
    truncate 'user' scan 'user'

    # 首先需要先让该表为disable状态
    disable 'user'

    # 删除表 删除前必须把表禁用了 ,执行上一命令
    drop 'user'

  • 相关阅读:
    C# 显式创建线程 or 使用线程池线程--new Thread() or ThreadPool.QueueUserWorkItem()
    B树、B-树、B+树、B*树详解
    C# Volatile 类
    volatile(C# 参考)
    C#中volatile的用法
    C#编程总结(六)异步编程
    C#编程总结(五)多线程带给我们的一些思考
    C#编程总结(三)线程同步
    C#编程总结(二)多线程基础
    C#编程总结(一)序列化
  • 原文地址:https://www.cnblogs.com/lihui123/p/14140074.html
Copyright © 2011-2022 走看看