• HBase shell常用命令


    1.进入Hbase shell命令

       $>hbase shell

    2.建议参照"help"命令

    3.shell命令

      --> create创建表命令:

          >create 'table_name','baseinfo','address'  

          其中表名是table_name,列簇是baseinfo和address。

      -->put插入数据

          >put 'table_name','row-1','baseinfo:name','zhangsan'

          >put 'table_name','row-1','baseinfo:age','12'

          >put 'table_name','row-1','baseinfo:sex','男'

          >put 'table_name','row-1','address:city','北京'

            其中row-1是rowkey,列簇后面的是列,最后一个字段是value值

      -->scan扫描表

          >scan 'table_name'

            输出全部table_name表的信息和数据

      -->get获取单条数据命令

          >get 'table_name','row-1'

            其中table_name是表名,row-1是rowkey,得到的是row-1的全部数据

      -->delete删除记录命令

          >delete 'table_name','row-1','baseinfo:name'

            其中table_name是表名,row-1是rowkey,baseinfo是列簇,name是列

      -->describe描述指令检索结构

          >desc 'table_name'

      -->修改版本号

        默认版本是1

          >alter 'table',{NAME=>'baseinfo',VERSION=>5}

      通过scan '表名',{VERSION=>*}指令,检索当前表的数据版本

      执行delete删除指令时,如需按照ts(timestamp)时间戳进行删除操作时,之前版本一并删除掉

      -->drop删除table指令

        >disbale 'ns1:tablename'  //首先要禁用table

        >drop 'ns1:tablename'  //删除table

          其中ns1是命名空间

      -->get_table指令:将table映射成相对应的变量(table实例),通过table实例对表进行相关操作

        >t1 = get_table 'table_name'

        >t1.scan

        >t1.put 'row-2','baseinfo:name','zhangsan'

        >t1.get 'row-2'

    namespace名字空间,相当于传统数据库的表空间

      >create namespace 'ns1'

      >describe_namespace 'ns1'

    balance负载均衡指令,需使用开关模式,原因是负载均衡比较耗费资源

      >balance_switch true  //开启负载均衡

      >balancer       //执行负载均衡

      >balance_switch false  //关闭负载均衡

      >balancer 'force'    //强制负载均衡

    4.meta元数据内容
    -------------------------------------------
    1.使用scan扫描[hbase:meta]
      hbase(main):003:0> scan 'hbase:meta'
      ROW                COLUMN+CELL
    customer,,1533056364951.4e6032c76b column=info:regioninfo, timestamp=1533073783155, value={ENCODED => 4e6032c76b12fe55be487eadc40a70f0, NA
    12fe55be487eadc40a70f0. ME => 'customer,,1533056364951.4e6032c76b12fe55be487eadc40a70f0.', STARTKEY => '', ENDKEY => ''}
    customer,,1533056364951.4e6032c76b column=info:seqnumDuringOpen, timestamp=1533073783155, value=x00x00x00x00x00x00x00x1E
    12fe55be487eadc40a70f0.
    customer,,1533056364951.4e6032c76b column=info:server, timestamp=1533073783155, value=master:16020
    12fe55be487eadc40a70f0.
    customer,,1533056364951.4e6032c76b column=info:serverstartcode, timestamp=1533073783155, value=1533069282809
    12fe55be487eadc40a70f0.
    hbase:namespace,,1532995591775.5a1 column=info:regioninfo, timestamp=1533073782978, value={ENCODED => 5a1c1a877777167a858f23905b72396e, NA
    c1a877777167a858f23905b72396e. ME => 'hbase:namespace,,1532995591775.5a1c1a877777167a858f23905b72396e.', STARTKEY => '', ENDKEY => ''}
    hbase:namespace,,1532995591775.5a1 column=info:seqnumDuringOpen, timestamp=1533073782978, value=x00x00x00x00x00x00x00x1F
    c1a877777167a858f23905b72396e.
    hbase:namespace,,1532995591775.5a1 column=info:server, timestamp=1533073782978, value=master:16020
    c1a877777167a858f23905b72396e.
    hbase:namespace,,1532995591775.5a1 column=info:serverstartcode, timestamp=1533073782978, value=1533069282809
    c1a877777167a858f23905b72396e.
    ns1:student,,1533068816416.bfda8a0 column=info:regioninfo, timestamp=1533069385014, value={ENCODED => bfda8a08fdfccb4124b1a4e483f02b5b, NA
    8fdfccb4124b1a4e483f02b5b. ME => 'ns1:student,,1533068816416.bfda8a08fdfccb4124b1a4e483f02b5b.', STARTKEY => '', ENDKEY => ''}
    ns1:student,,1533068816416.bfda8a0 column=info:seqnumDuringOpen, timestamp=1533069385014, value=x00x00x00x00x00x00x00x06
    8fdfccb4124b1a4e483f02b5b.
    ns1:student,,1533068816416.bfda8a0 column=info:server, timestamp=1533069385014, value=master:16020
    8fdfccb4124b1a4e483f02b5b.
    ns1:student,,1533068816416.bfda8a0 column=info:serverstartcode, timestamp=1533069385014, value=1533069282809
    8fdfccb4124b1a4e483f02b5b.
      3 row(s) in 0.3440 seconds
        说明:regionname格式:
        <table_name>+","+<startKey>+","+<timestamp>+"."+<ENCODED>MD5生成码(生成规则由“{<table_name>+","+<startKey>+","+<timestamp>+"."}”)

    5.split切分

      指令:>split 'ns1:student','row-sm'  //将student表强制在row-sm位置切分

    6.merge合并

      指令:>merge_region '857d52f5591906576a85809db8522cbf','441d5e059755eae0f0b4582e915f6408'

    //后两个指的是regionname

    7.move移动指令

      >move '441d5e059755eae0f0b4582e915f6408'  //  随机指定regionserver

      >move '441d5e059755eae0f0b4582e915f6408','slave1,16020,1533138423796'  //指定move到slave1,16020,1533138423796这个regionserver

    8.预分区

      >create 'ns1:t1', 'f1', SPLITS => ['10', '20', '30', '40']

        说明:在ns1命名空间下,创建t1表,列簇为f1;预分区为5个:['',10);[10,20);[20,30);[30,40);[40,'']

  • 相关阅读:
    java web分页查询初试
    SQL注入原理深度解析
    JS 清除IE缓存
    Android 代码混淆及第三方jar包不被混淆
    [leetcode]Unique Paths II
    ffmpeg API录制rtsp视频流
    HDU 2045 不容易系列之(3)—— LELE的RPG难题
    Ffmpeg和SDL创建线程(转)
    “富豪相亲大会”究竟迷失了什么?
    Ffmpeg和SDL如何同步视频(转)
  • 原文地址:https://www.cnblogs.com/lyr999736/p/9417694.html
Copyright © 2020-2023  润新知