天天看點

HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

HBase基本文法

  • HBase操作
  • HBase基本指令
    • 使用者權限管理
    • 表管理
    • 行管理
    • 列簇管理
  • 将文檔資料導入HBase

HBase操作

通過hbase shell進入

  • version – 檢視版本
    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
  • status – 檢視叢集狀态
    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
  • whoami – 檢視目前有效使用者名
    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
  • help – 檢視幫助指令

HBase基本指令

使用者權限管理

1、檢視權限

  • 文法:user_permission [‘表名’…]
  • 例:檢視customer表權限

    hbase(main)> user_permission 'customer'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

2、配置設定權限

  • 文法 : grant ‘使用者名’, ‘RWXCA’
  • 權限用五個字母表示: “RWXCA”.

    READ(‘R’), WRITE(‘W’), EXEC(‘X’), CREATE(‘C’), ADMIN(‘A’)

  • 例:給使用者‘root’配置設定讀寫執行管理的權限,

    hbase(main)> grant 'root', 'RWXCA'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

3、收回權限

  • 與配置設定權限類似,文法:revoke ‘使用者名’ [,‘表名’…]

表管理

1、建立表

  • 文法:create ‘表名’,{NAME=>‘列簇名’},{NAME=>‘列簇名’}…
  • 例:建立表customer,列簇為addr、order

    hbase(main)> create 'customer',{NAME=>'addr'},{NAME=>'order'}

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

2、 删除表

  • 分兩步:首先disable,然後drop
  • 文法:disable ‘表名’----> drop ‘表名’
  • 例:删除cust表

    hbase(main)> disable 'cust'

    hbase(main)> drop 'cust'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

3、修改表名

  • 步驟:

    1、拍攝快照

    文法:snapshot ‘表名’,‘鏡像名’

    例:

    hbase(main)> snapshot 'customer','temp'

    2、克隆快照,命名為新表名

    文法:clone_snapshot ‘鏡像名’,‘新表名’

    例:

    hbase(main)> clone_snapshot 'temp','cust'

    3、删除快照

    文法:delete_snapshot ‘鏡像名’

    例:

    hbase(main)> delete_snapshot 'temp'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

4、檢視有哪些表

hbase(main)> lis

HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

行管理

1、添加資料

  • 文法:put ‘表名’,‘行鍵’,‘列簇名:列名’,‘值’[,時間戳]
  • 例:

    hbase(main)> put 'customer','1','addr:city','montoreal'

    hbase(main)> put 'customer','1','addr:address','210021 xiaohang road'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

2、修改資料

  • 文法與添加資料一緻
  • 例:

    hbase(main)> put 'customer','1','addr:city','nanjing'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

3、删除行

  • 可以單獨删除行,行内資料全部删除
  • 文法:delete ‘表名’ , ‘行鍵’
  • 例:

    #删除第二行資料:

    hbase(main)> delete 'customer','2'

    #統計行數:

    hbase(main)> count 'customer'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

列簇管理

1、增加列簇

  • 文法:alter ‘表名’,NAME=>‘列簇名’
  • 例:

    hbase(main)> alter 'customer',NAME=>'sample'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

2、删除列簇

  • 文法:alter ‘表名’,NAME=>‘列簇名’,METHOD=>‘delete’
  • 例:

    hbase(main)> alter 'customer',NAME=>'sample',METHOD=>'delete'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

3、修改列簇

  • 步驟:先加,後删

4、查詢資料

  • a)查詢某行記錄

    文法:get ‘表名’, ‘行鍵’ [,‘列簇名’]

    例:

    hbase(main)> get 'customer','1','addr:city'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
  • b)掃描表

    文法:scan ‘表名’, {COLUMNS => ‘列簇名’, LIMIT => num}

    另外,還可以添加STARTROW、TIMERANGE和FITLER等進階功能

    例:

    hbase(main)> scan 'customer',{COLUMNS=>'addr:city'}

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

    hbase(main)> scan 'customer',{LIMIT=>1}

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

将文檔資料導入HBase

步驟:

  • 1、HBase指令:

    ##建立表emp_basic

    hbase(main)> create 'emp_basic',{NAME=>'emp'},{NAME=>'time'}

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
  • 2、linux指令:

    ##把文檔上傳HDFS

    hdfs dfs -put /root/emp_basic.csv /test/

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
    ##通過hbase shell導入文檔資料

    hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator="," -Dimporttsv.columns="HBASE_ROW_KEY,emp:name,emp:job_title,emp:company,time:sDate,time:eDate" "emp_basic" /test/emp_basic.csv

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase
  • 3、HBase指令:

    ##檢視文檔是否導入成功

    hbase(main)> scan 'emp_basic'

    HBase基本文法HBase操作HBase基本指令将文檔資料導入HBase

繼續閱讀