大數據hadoop學習【8】-----HBase分佈式數據庫表及表中數據的基本操作


隨着時間的慢慢推移,大數據基礎課程也在慢慢的往後學習,前面我們介紹了通過Java編程實現了對hadoop文件系統HDFS進行了一系列的操作,對於hdfs的學習也可以暫告一段落,本次博客,林君學長將帶大家瞭解HBase分佈式數據庫的操作與編程,並通過一系列的例題進行相應的輔助瞭解哦,一起來看吧!
本次的實驗目的如下:

  • 掌握HBase操作常用Shell命令
  • 掌握HBase數據表的創建、添加數據、查看數據、刪除數據、刪除表、查詢歷史數據等操作

項目環境如下:

  • 軟件:VMWare虛擬機 15.0
  • 系統環境:Linux
  • 操作系統:ubuntuKylin 16.04
  • 開發環境 :JAVA,Hadoop

一、HBase相關介紹

1、HBase定義

1)、HBase是一個分佈式的、面向列的開源數據庫,源於Google的一篇論文《BigTable:一個結構化數據的分佈式存儲系統》。HBase以表的形式存儲數據,表有行和列組成,列劃分爲若干個列族/列簇(column family)。
欲瞭解HBase的官方資訊,請訪問HBase官方網站:
http://hbase.apache.org/

2、Hbase的三種模式

1)、HBase的運行有三種模式:單機模式、僞分佈式模式、分佈式模式。

  • 單機模式:在一臺計算機上安裝和使用HBase,不涉及數據的分佈式存儲
  • 僞分佈式模式:在一臺計算機上模擬一個小的集羣
  • 分佈式模式:使用多臺計算機實現物理意義上的分佈式存儲

本次的學習,林君學長主要是在僞分佈模式下進行的相關操作哦!

二、 利用Shell命令進行Hbase表的相關操作

1、新建終端,運行Hbase

1)、運行SSH

ssh localhost

在這裏插入圖片描述
2)、運行hadoop

start-dfs.sh

在這裏插入圖片描述
3)、運行hbase

start-hbase.sh

在這裏插入圖片描述

2、HBase數據庫中表的創建

1)、進入hbase中的shell界面

hbase shell

在這裏插入圖片描述
2)、HBase中用create命令創建表

create 'student','Sname','Ssex','Sage','Sdept','course'

在這裏插入圖片描述
3)、查詢‘student’表

describe 'student'

在這裏插入圖片描述

3、HBase數據庫表數據的基本操作—添加數據

1)、添加數據

put 'student','10000','Sname','ZhangSan'
put 'student','10000','course:math','80'
put 'student','10000','Ssex','男'
get 'student','10000'

爲student表添加了學號爲10000,名字爲ZhangSan的一行數據,其行鍵爲10000。並添加課程分數和性別,後通過get命令進行查看

在這裏插入圖片描述

4、HBase數據庫表數據的基本操作—查看數據

1)、get命令查看數據

get 'student','10000'

命令執行截圖如下, 返回的是‘student’表‘95001’行的數據:
在這裏插入圖片描述
2)、scan命令查看數據

scan 'student'

命令執行截圖如下, 返回的是‘student’表的全部數據:
在這裏插入圖片描述

5、HBase數據庫表數據的基本操作—刪除數據

1)、delete用於刪除一個數據,是put的反向操作

delete 'student','10000','Ssex'

在這裏插入圖片描述
在這裏插入圖片描述
可以看到,性別一列已經被刪除
2.)、deleteall操作用於刪除一行數據。

deleteall 'student','10000'

在這裏插入圖片描述
上面添加的數據已經被完全刪除啦!

三、刪除表

刪除表有兩步,第一步先讓該表不可用,第二步刪除表!

1、讓該表不可用

disable 'student' 

在這裏插入圖片描述

2、刪除該表

drop 'student'

在這裏插入圖片描述

四、查詢表歷史數據

查詢錶的歷史版本,需要兩步:
1、在創建表的時候,指定保存的版本數
2、插入數據然後更新數據,使其產生歷史版本數據

1、在創建表的時候,指定保存的版本數(假設指定爲5)

create 'teacher',{NAME=>'username',VERSIONS=>5}

在這裏插入圖片描述

2、插入數據然後更新數據,使其產生歷史版本數據

注意:這裏插入數據和更新數據都是用put命令

put 'teacher','1000','username','ChenYiYue'
put 'teacher','1000','username','ChenYiYue1'
put 'teacher','1000','username','ChenYiYue2'
put 'teacher','1000','username','ChenYiYue3'
put 'teacher','1000','username','ChenYiYue4'  
put 'teacher','1000','username','ChenYiYue5'

在這裏插入圖片描述

3、查詢時,指定查詢的歷史版本數。默認會查詢出最新的數據

有效取值爲1到5

get 'teacher','1000',{COLUMN=>'username',VERSIONS=>5}
get 'teacher','1000',{COLUMN=>'username',VERSIONS=>2}

在這裏插入圖片描述

4、退出Hbase數據庫

1)、退出Hbase數據庫的shell界面

exit

在這裏插入圖片描述
2)、一次關閉hbase、hadoop、ssh
使用記得要有良好的習慣,對維護自己的hadoop和hbase有很大的好處,記得不用的時候關閉哦!

stop-hbase.sh
stop-dfs.sh
exit

在這裏插入圖片描述
以上就是本次博客的全部內容啦,希望對本次博客的閱讀,可以幫助小夥伴們更好的解決Hbase數據庫表的用法哦!
遇到問題的小夥伴,記得在評論區留言、林君學長看到會爲大家解答的,這個學長不太冷!

陳一月的又一天編程歲月^ _ ^

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章