1. 程式人生 > >hbase shell 命令行的操作

hbase shell 命令行的操作

family table method rowspan col nbsp 圖片 沒有 fff

現有一張表:

行號 info edu
name gender level
001 zhangSan male graduated
002 WangMaZi female post_graduated

一、建表

  1、語法(只需表明,各列族名):

    (1):create <tableName> , <colFamily> [ ,<colFamily1> ,... ,<colFamilyN> ]  // 相對(2)更簡潔

    (2):create <tableName>, {NAME=>‘colFamilyName‘ } [, {NAME=>‘colFamilyNameN‘ } ]

  2、測試:

    使用語法(1): 技術分享圖片

二、操作表中數據

  1、添加數據(要指明表名,行鍵,列族名,列名,值)

    i、語法(一次只能加一列):
      (1):put <tableName>, <rowKey> , < colFamily : col >,value [ , stampTime ]

    ii、測試:

      技術分享圖片

      技術分享圖片

      技術分享圖片

  2、查詢數據

    i、語法:

      (1)查詢一行數據:get ‘tableName‘ , ‘rowName‘

      (2)查詢指定列族的一行數據: get ‘tableName‘ , ‘rowName‘ , ‘colFamilyName‘

      (3)查詢指定列族及列名的一行數據:get ‘tableName‘ , ‘rowName‘ , ‘colFamilyName : columnName ‘

      (4)查詢表中所有行數據:scan ‘tableName‘

    ii、測試:

      (1)查詢一行數據

      技術分享圖片

      (2)查詢指定列族的一行數據

      技術分享圖片

      (3)查詢指定列族及列名的一行數據

      技術分享圖片

      (4)查詢所有行:

      技術分享圖片

  4、更新數據

    i、語法:

      (1):put ‘tableName‘ , ‘ rowName‘ , ‘colFamily:column‘ , ‘new value‘

    ii、測試:

      技術分享圖片

  5、刪除數據(!所謂的刪除並沒有刪除!)

    i、語法:

      (1)刪除單元格數據:delete ‘tableName‘ , ‘rowName‘ , ‘colFamily:column‘

      (2)刪除一行所有單元格:deleteall ‘tableName‘ ,‘rowName‘

    ii、測試:

      (1)刪除單元格數據:

      技術分享圖片

      (2)刪除一行數據

      技術分享圖片

三、更新表(指表的邏輯結構,與更新數據不同)

  1、語法:

    (1)刪除某一列族:alter ‘tableName‘ , NAME=‘colFamily‘, METHOD=‘delete‘

    (2)添加一列族:alter ‘tableName‘, NAME=‘new colFamily name‘

    (3)刪除表【兩步】:

      i、disable ‘tableName‘ #使表無效

      ii、drop ‘tableName‘

hbase shell 命令行的操作