日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
輕松搞定HBase數(shù)據(jù)庫:快速掌握查看技巧!(如何查看hbase數(shù)據(jù)庫)

HBase是一種存儲(chǔ)海量結(jié)構(gòu)化數(shù)據(jù)的分布式數(shù)據(jù)庫,在大數(shù)據(jù)領(lǐng)域廣泛應(yīng)用。然而,HBase的查詢語言與傳統(tǒng)關(guān)系型數(shù)據(jù)庫不同,需要掌握不同的上手方法和技巧。本篇文章將介紹HBase的查看技巧,幫助讀者輕松搞定HBase數(shù)據(jù)庫。

一、基本介紹

HBase是一種基于列族的分布式數(shù)據(jù)庫系統(tǒng)。它具備水平擴(kuò)展性、快速讀寫能力和數(shù)據(jù)安全性等特點(diǎn),廣泛應(yīng)用于互聯(lián)網(wǎng)、金融、電商等行業(yè)。HBase的數(shù)據(jù)模型類似于關(guān)系型數(shù)據(jù)庫的表格,但是更為靈活。HBase中的表格被劃分為行和列族,行由行鍵標(biāo)識(shí),列族由列族名標(biāo)識(shí),列由列名和時(shí)間戳標(biāo)識(shí)。一個(gè)表格可以包含多個(gè)列族,每個(gè)列族可以包含多個(gè)列。

二、HBase的Shell操作

HBase提供了與數(shù)據(jù)庫進(jìn)行交互的Shell界面。需要使用start-hbase.sh命令啟動(dòng)HBase。然后,在Terminal中輸入hbase shell命令,即可進(jìn)入HBase Shell界面。

1.列出所有的表格

在HBase Shell中,可以使用list命令列出所有的表格。例如,輸入list,即可看到HBase中當(dāng)前所有的表格。

2.創(chuàng)建表格

HBase中創(chuàng)建表格需要指定表格名稱、列族和分區(qū)數(shù)。例如,輸入create ‘mytable’, ‘mycf’,即可創(chuàng)建一個(gè)名為mytable的表格,包含一個(gè)名為mycf的列族。

3.插入數(shù)據(jù)

在HBase Shell中,可以使用put命令插入數(shù)據(jù)。例如,輸入put ‘mytable’, ‘row1’, ‘mycf:col1’, ‘hello’,即可在mytable表格的之一行中插入一條數(shù)據(jù),行鍵為row1,列族為mycf,列名為col1,值為hello。

4.查看數(shù)據(jù)

在HBase Shell中,可以使用get命令查看數(shù)據(jù)。例如,輸入get ‘mytable’, ‘row1’,即可查看mytable表格中行鍵為row1的數(shù)據(jù)。

5.刪除數(shù)據(jù)

在HBase Shell中,可以使用delete命令刪除數(shù)據(jù)。例如,輸入delete ‘mytable’, ‘row1’, ‘mycf:col1’,即可刪除mytable表格中行鍵為row1、列族為mycf、列名為col1的數(shù)據(jù)。

三、HBase的Web UI操作

除了Shell界面,HBase還提供了Web界面進(jìn)行操作。HBase的Web UI默認(rèn)端口為16010。在瀏覽器中輸入http://localhost:16010即可進(jìn)入Web UI界面。

1.列出所有的表格

在HBase的Web UI中,可以看到所有的表格及其狀態(tài)。例如,點(diǎn)擊Tables選項(xiàng)卡,即可看到HBase中的所有表格及其詳細(xì)信息。

2.創(chuàng)建表格

在HBase的Web UI中,可以使用New Table按鈕創(chuàng)建新表格。在彈出的對(duì)話框中,需要指定表格的名稱、列族、分區(qū)數(shù)等信息。

3.插入數(shù)據(jù)

在HBase的Web UI中,可以使用Insert Row按鈕插入數(shù)據(jù)。在彈出的對(duì)話框中,需要指定表格名稱、行鍵、列族、列名和值等信息。

4.查看數(shù)據(jù)

在HBase的Web UI中,可以使用Browse按鈕查看數(shù)據(jù)。首先需要選擇要瀏覽的表格,然后輸入行鍵和列族,即可查看對(duì)應(yīng)的數(shù)據(jù)。

5.刪除數(shù)據(jù)

在HBase的Web UI中,可以使用Delete按鈕刪除數(shù)據(jù)。首先需要選擇要?jiǎng)h除的表格,然后選擇要?jiǎng)h除的行和列族,即可刪除對(duì)應(yīng)的數(shù)據(jù)。

四、HBase的Java API操作

除了Shell界面和Web界面,HBase還提供了Java API接口進(jìn)行操作。主要分為HBase的數(shù)據(jù)訪問層和客戶端程序兩部分。

1.HBase的數(shù)據(jù)訪問層

HBase的數(shù)據(jù)訪問層指的是與HBase進(jìn)行數(shù)據(jù)交互的底層API接口。它主要包括連接HBase集群、創(chuàng)建表格、插入數(shù)據(jù)、查詢數(shù)據(jù)和刪除數(shù)據(jù)等操作。其中,HBase的數(shù)據(jù)訪問層主要由HBaseAPI類和HTable類實(shí)現(xiàn)。

HBaseAPI類位于org.apache.hadoop.hbase.client包中。它代表了一個(gè)HBase連接客戶端,負(fù)責(zé)與HBase進(jìn)行交互。HBaseAPI類主要包括創(chuàng)建HBase連接、關(guān)閉HBase連接、創(chuàng)建HBase表格、獲取HBase表格、插入數(shù)據(jù)、查詢數(shù)據(jù)和刪除數(shù)據(jù)等方法。

HTable類實(shí)現(xiàn)了對(duì)HBase表格的操作。它位于org.apache.hadoop.hbase.client包中。HTable類主要包括插入數(shù)據(jù)、獲取數(shù)據(jù)、刪除數(shù)據(jù)、掃描數(shù)據(jù)等方法。

2.客戶端程序

客戶端程序指的是使用HBase API進(jìn)行開發(fā)的程序。它主要包括數(shù)據(jù)插入、查詢和刪除等操作。在Java中,使用HBase API進(jìn)行數(shù)據(jù)操作需要遵循以下步驟:

1)創(chuàng)建HBase連接

2)獲取HBase表格

3)進(jìn)行數(shù)據(jù)操作

4)釋放資源

五、

HBase是一種分布式數(shù)據(jù)庫系統(tǒng),具備水平擴(kuò)展性、快速讀寫能力和數(shù)據(jù)安全性等特點(diǎn)。在HBase中,需要掌握不同的上手方法和技巧。本篇文章介紹了HBase的查看技巧,包括Shell操作、Web UI操作和Java API操作。通過學(xué)習(xí)本篇技巧,讀者可以快速掌握HBase數(shù)據(jù)庫的查看方法,提高數(shù)據(jù)操作效率,更好地應(yīng)用HBase數(shù)據(jù)庫。

相關(guān)問題拓展閱讀:

  • 如何使用Spark/Scala讀取Hbase的數(shù)據(jù)
  • hbaseshelltext如何顯示命令

如何使用Spark/Scala讀取Hbase的數(shù)據(jù)

使用Spark/Scala讀取Hbase的數(shù)據(jù) 必須使用高亮參數(shù)啟動(dòng)Spark-shell,否則當(dāng)你遍歷RDD時(shí)會(huì)出現(xiàn)如下的Exception java.io.NotSerializableException: org.apache.hadoop.hbase.io.ImmutableBytesWritable spark-shell–conf spark.serializer=org.apache.spark.serializer.KryoSerializer 以下代碼,經(jīng)過粗改MaprDB實(shí)測(cè)通過 import org.apache.spark._ import org.apache.spark.rdd.NewHadoopRDD import org.apache.hadoop.hbase.{HBaseConfiguration, HTableDescriptor} import org.apache.hadoop.hbase.client.HBaseAdmin import org.apache.hadoop.hbase.mapreduce.TableInputFormat import org.apache.hadoop.fs.Path; import org.apache.hadoop.hbase.HColumnDescriptor import org.apache.hadoop.hbase.util.Bytes import org如何使用Spark/Scala讀取游凳稿Hbase的神孝數(shù)據(jù)

hbaseshelltext如何顯示命令

hadoop

Hxbase shell 基本操作命令

溫舊酒一壺~

轉(zhuǎn)載

關(guān)注

2點(diǎn)贊·1726人閱讀

版權(quán)聲明:原文鏈接:

目錄

一、 HBase Shell

二、general命名

1.顯示集群狀態(tài)status

2. 查詢數(shù)據(jù)庫版本version

3. 顯示當(dāng)前清逗族用戶與組 whoami

 4. 查看操作表的命令table_help

5. 退出HBase Shell exit

三、ddl命令

1. 創(chuàng)建表create

2. 修改(添加、刪除)表結(jié)構(gòu)Schema alter

2.1 添加一個(gè)列族

 2.2 刪除一個(gè)列族

 2.3 修改列族的屬性可以修改列族的VERSIONS、IN_MEMORY

3. 異步修改Schema alter_async

4. 獲取alter_async執(zhí)行的狀態(tài) alter_status

5. 獲取表的描述describe

 6. 列舉所有表list

 7. 表是否存在exists

 8. 啟用表enable和禁用表disable

 9. 禁用滿足正則表達(dá)式的所有表disable_all

10. 啟用滿足正則表達(dá)式的所有表enable_all

11. 刪除表drop

?

12. 刪除滿足正則表達(dá)式的所有表drop_all

13. 獲取某個(gè)表賦值給一個(gè)變量 get_table

 14. 獲取rowKey所在的區(qū) locate_region

?

 15. 顯示hbase所支持的所有過濾器show_filters

四、namespace命令

1. 列舉命名空間 list_namespace

 2. 獲取命名空間描述 describe_namespace

?

 3. 查看命名空間下的所有表 list_namespace_tables

 4. 創(chuàng)建命名空間create_namespace

 5. 修改命名空間的屬性

6. 刪除命名空間drop_namespace

五:dml命令

1. 插入或者修改數(shù)據(jù)put

 2. 全表掃描scan

1、掃描整個(gè)列簇

 2、掃描整個(gè)列簇的某個(gè)列

 3. 獲取數(shù)據(jù)get

4. 刪除某個(gè)列族中的某個(gè)列delete

?

 5. 刪除某行數(shù)據(jù)deleteall

 6. 清空整個(gè)表的數(shù)據(jù)truncate

 7. 查詢表中有多少行count

 8. 自增incr

?

 9. 計(jì)數(shù)器get_counter

10. 修飾詞

10.1 COLUMNS: 查詢同一個(gè)列族的多個(gè)列

 10.2 TIMESTAMP 指定時(shí)間戳

10.3 TIMERANGE表示的是”>=開始時(shí)間 and status

hbase> status ‘simple’

hbase> status ‘summary’

hbase> status ‘detailed’

hbase> status ‘replication’

hbase> status ‘replication’, ‘source’

hbase> status ‘replication’, ‘sink’

登錄后復(fù)制

2. 查詢數(shù)據(jù)庫版本version

3. 顯示當(dāng)前用戶與組 whoami

 4. 查看操作表的命令table_help

5. 退出HBase Shell exit

exit

登錄后復(fù)制

三、ddl命令

1. 創(chuàng)建表create

注意:創(chuàng)建表時(shí)只需要指定列族名稱,不需要指定列名。

# 語法

create ‘表名’, {NAME => ‘列族名1’}, {NAME => ‘列族名2’}, {NAME => ‘列族名3’}

# 此種方式是上上面的簡(jiǎn)寫方式,使用上面方式可以為列族指定更多的屬性,如VERSIONS、TTL、BLOCKCACHE、CONFIGURATION等屬性

create ‘表名’, ‘列族名1’, ‘列族名2’, ‘列族名3’

create ‘表名’, {NAME => ‘列族名1’, VERSIONS => 版本號(hào), TTL => 過期時(shí)間, BLOCKCACHE => true}

# 示例

create ‘tbl_user’, ‘info’, ‘detail’

create ‘t1’, {NAME => ‘f1’, VERSIONS => 1, TTL =>, BLOCKCACHE => true}

登錄后復(fù)制

2. 修改(添加、刪除)表結(jié)構(gòu)Schema alter

2.1 添加一個(gè)列族

# 語法

alter ‘表名’, ‘列族名’

# 示例

alter ‘tbl_user’, ‘a(chǎn)ddress’

登錄后復(fù)制

 2.2 刪除一個(gè)列族

# 語法

alter ‘表名’, {NAME=> ‘列族名’, METHOD=> ‘delete’}

# 示例

alter ‘tbl_user’, {NAME=> ‘a(chǎn)ddress’, METHOD=> ‘delete’}

登錄后復(fù)制

 2.3 修改列族的屬性

可以修改列族的VERSIONS、IN_MEMORY

# 修改f1列族的版本為5

alter ‘t1’, NAME => ‘f1’, VERSIONS => 5

# 修改多個(gè)列族,修改f2為內(nèi)存,版本號(hào)為5

alter ‘t1’, ‘f1’, {NAME => ‘f2’, IN_MEMORY => true}, {NAME => ‘f3’, VERSIONS => 5}

# 也可以修改table-scope屬性,例如MAX_FILESIZE, READON,MEMSTORE_FLUSHSIZE, DEFERRED_LOG_FLUSH等。

# 例如,修改region的更大大小為128MB:

alter ‘t1’, MAX_FILESIZE => ”

登錄后復(fù)制

3. 異步修改Schema alter_async

# change or add the ‘f1’ column family in table ‘t1’ from defaults

to instead keep a maximum of 5 cell VERSIONS

alter_async ‘t1’, NAME => ‘f1’, VERSIONS => 5

# delete the ‘f1’ column family in table ‘ns1:t1’

alter_async ‘ns1:t1’, NAME => ‘f1’, METHOD => ‘delete’

alter_async ‘ns1:t1’, ‘delete’ => ‘f1’

# change the max size of a family to 128MB

alter ‘t1’, METHOD => ‘table_att’, MAX_FILESIZE => ”

alter ‘t1’, {NAME => ‘f1’}, {NAME => ‘f2’, METHOD => ‘delete’}

登錄后復(fù)制

4. 獲取alter_async執(zhí)行的狀態(tài) alter_status

alter_status ‘表名’

登錄后復(fù)制

5. 獲取表的描述describe

# 語法

describe ‘表名’

# 示例

describe ‘tbl_user’

登錄后復(fù)制

 6. 列舉所有表list

 7. 表是否存在exists

# 語法

exists ‘表名’

# 示例

exists ‘tbl_user’

登錄后復(fù)制

 8. 啟用表enable和禁用表disable

通過enable和disable來啟用/禁用這個(gè)表,相應(yīng)的可以通過is_enabled和is_disabled來檢查表是否被禁用。

# 語法

enable ‘表名’

is_enabled ‘表名’

disable ‘表名’

is_disabled ‘表名’

# 示例

disable ‘tbl_user’

is_disabled ‘tbl_user’

enable ‘tbl_user’

is_enabled ‘tbl_user’

登錄后復(fù)制

 9. 禁用滿足正則表達(dá)式的所有表disable_all

匹配除“\n”和”\r”之外的任何單個(gè)字符

*匹配前面的子表達(dá)式任意次

# 匹配以t開頭的表名

disable_all ‘t.*’

# 匹配指定命名空間ns下的以t開頭的所有表

disable_all ‘ns:t.*’

# 匹配ns命名空間下的所有表

disable_all ‘ns:.*’

登錄后復(fù)制

10. 啟用滿足正則表達(dá)式的所有表enable_all

enable_all ‘t.*’

enable_all ‘ns:t.*’

enable_all ‘ns:.*’

登錄后復(fù)制

11. 刪除表drop

需要先禁用表,然后再刪除表,啟用的表是不允許刪除的

# 語法

disable ‘表名’

drop ‘表名’

# 示例

disable ‘tbl_user’

drop ‘tbl_user’

登錄后復(fù)制

12. 刪除滿足正則表達(dá)式的所有表drop_all

drop_all ‘t.*’

drop_all ‘ns:t.*’

drop_all ‘ns:.*’

登錄后復(fù)制

13. 獲取某個(gè)表賦值給一個(gè)變量 get_table

通過 var = get_table ‘表名’ 賦值給一個(gè)變量對(duì)象,然后對(duì)象.來調(diào)用,就像面向?qū)ο缶幊桃粯?,通過對(duì)象.方法來調(diào)用,這種方式在操作某個(gè)表時(shí)就不必每次列舉表名了。

 14. 獲取rowKey所在的區(qū) locate_region

locate_region ‘表名’, ‘行鍵’

登錄后復(fù)制

 15. 顯示hbase所支持的所有過濾器show_filters

過濾器用于get和scan命令中作為篩選數(shù)據(jù)的條件,類型關(guān)系型數(shù)據(jù)庫中的where的作用

四、namespace命令

1. 列舉命名空間 list_namespace

 2. 獲取命名空間描述 describe_namespace

 3. 查看命名空間下的所有表 list_namespace_tables

 4. 創(chuàng)建命名空間create_namespace

 5. 修改命名空間的屬性

# add/modify a property

alter_namespace ‘ns1’, {METHOD => ‘set’, ‘PROPERTY_NAME’ => ‘PROPERTY_VALUE’}

# delete a property

alter_namespace ‘ns1’, {METHOD => ‘unset’, NAME=>’PROPERTY_NAME’}

登錄后復(fù)制

6. 刪除命名空間drop_namespace

drop_namespace ‘命名空間名稱’

登錄后復(fù)制

五:dml命令

1. 插入或者修改數(shù)據(jù)put

# 語法

# 當(dāng)列族中只有一個(gè)列時(shí)’列族名:列名’使用’列族名’

put ‘表名’, ‘行鍵’, ‘列族名’, ‘列值’

put ‘表名’, ‘行鍵’, ‘列族名:列名’, ‘列值’

# 示例

# 創(chuàng)建表

create ‘tbl_user’, ‘info’, ‘detail’, ‘a(chǎn)ddress’

# 之一行數(shù)據(jù)

put ‘tbl_user’, ‘mengday’, ‘info:id’, ‘1’

put ‘tbl_user’, ‘mengday’, ‘info:name’, ‘張三’

put ‘tbl_user’, ‘mengday’, ‘info:age’, ’28’

put ‘tbl_user’, ‘mengday’, ‘detail:birthday’, ”

put ‘tbl_user’, ‘mengday’, ‘detail:email’, ‘

put ‘tbl_user’, ‘mengday’, ‘detail:create_time’, ‘:26:10’

put ‘tbl_user’, ‘mengday’, ‘a(chǎn)ddress’, ‘上海市’

# 第二行數(shù)據(jù)

put ‘tbl_user’, ‘vbirdbest’, ‘info:id’, ‘2’

put ‘tbl_user’, ‘vbirdbest’, ‘info:name’, ‘李四’

put ‘tbl_user’, ‘vbirdbest’, ‘info:age’, ’27’

put ‘tbl_user’, ‘vbirdbest’, ‘detail:birthday’, ”

put ‘tbl_user’, ‘vbirdbest’, ‘detail:email’, ‘

put ‘tbl_user’, ‘vbirdbest’, ‘detail:create_time’, ‘:26:10’

put ‘tbl_user’, ‘vbirdbest’, ‘a(chǎn)ddress’, ‘北京市’

# 之一行數(shù)據(jù)

put ‘tbl_user’, ‘xiaoming’, ‘info:id’, ‘3’

put ‘tbl_user’, ‘xiaoming’, ‘info:name’, ‘王五’

put ‘tbl_user’, ‘xiaoming’, ‘info:age’, ’26’

put ‘tbl_user’, ‘xiaoming’, ‘detail:birthday’, ”

put ‘tbl_user’, ‘xiaoming’, ‘detail:email’, ‘

put ‘tbl_user’, ‘xiaoming’, ‘detail:create_time’, ‘:26:10’

put ‘tbl_user’, ‘xiaoming’, ‘a(chǎn)ddress’, ‘杭州市’

登錄后復(fù)制

 2. 全表掃描scan

獲取表的所有數(shù)據(jù)

# 語法

scan ‘表名’

# 示例

scan ‘tbl_user’

登錄后復(fù)制

注意:中文編碼了

1、掃描整個(gè)列簇

# 語法

scan ‘表名’, {COLUMN=>’列族名’}

# 示例

scan ‘tbl_user’, {COLUMN=>’info’}

登錄后復(fù)制

 2、掃描整個(gè)列簇的某個(gè)列

# 語法

scan ‘表名’, {COLUMN=>’列族名:列名’}

# 示例

scan ‘tbl_user’, {COLUMN=>’info:age’}

登錄后復(fù)制

 3. 獲取數(shù)據(jù)get

# 語法

get ‘表名’, ‘行鍵’

# 示例

get ‘tbl_user’, ‘mengday’

登錄后復(fù)制

 根據(jù)某一行某列族的數(shù)據(jù)

# 語法

get ‘表名’, ‘行鍵’, ‘列族名’

# 示例

get ‘tbl_user’, ‘mengday’, ‘info’

登錄后復(fù)制

# 創(chuàng)建表,c1版本為4, 元數(shù)據(jù)mykey=myvalue

hbase(main):009:0> create ‘t1’, {NAME => ‘c1’, VERSIONS => 4}, METADATA => { ‘mykey’ => ‘myvalue’ }

0 row(s) in 2.2810 seconds

=> Hbase::Table – t1

# 添加列族c2, c3

hbase(main):010:0> alter ‘t1’, ‘c2’, ‘c3’

Updating all regions with the new schema…

1/1 regions updated.

Done.

Updating all regions with the new schema…

1/1 regions updated.

Done.

0 row(s) in 3.8320 seconds

# 出入數(shù)據(jù),c1 插入4個(gè)版本的值

hbase(main):011:0> put ‘t1’, ‘r1’, ‘c1’, ‘v1’

0 row(s) in 0.1000 seconds

hbase(main):012:0> put ‘t1’, ‘r1’, ‘c1’, ‘v11’

0 row(s) in 0.0180 seconds

hbase(main):013:0> put ‘t1’, ‘r1’, ‘c1’, ‘v111’

0 row(s) in 0.0140 seconds

hbase(main):014:0> put ‘t1’, ‘r1’, ‘c1’, ‘v1111’

0 row(s) in 0.0140 seconds

# 插入c2、c3的值

hbase(main):015:0> put ‘t1’, ‘r1’, ‘c2’, ‘v2’

0 row(s) in 0.0140 seconds

hbase(main):016:0> put ‘t1’, ‘r1’, ‘c3’, ‘v3’

0 row(s) in 0.0210 seconds

# 獲取rowKey=r1的一行記錄

hbase(main):017:0> get ‘t1’, ‘r1’

COLUMN CELL

c1: timestamp=, value=v1111

c2: timestamp=, value=v2

c3: timestamp=, value=v3

3 row(s) in 0.0550 seconds

# 獲取rowKey=r1并且 get ‘t1’, ‘r1’, {TIMERANGE => }

COLUMN CELL

c2: timestamp=, value=v2

1 row(s) in 0.0090 seconds

# 獲取指定列的值

hbase(main):019:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’}

COLUMN CELL

c1: timestamp=, value=v1111

1 row(s) in 0.0160 seconds

# 獲取指定列的值,多個(gè)值使用數(shù)組表示

hbase(main):020:0> get ‘t1’, ‘r1’, {COLUMN => }

COLUMN CELL

c1: timestamp=, value=v1111

c2: timestamp=, value=v2

c3: timestamp=, value=v3

3 row(s) in 0.0170 seconds

# 獲取c1的值,獲取4個(gè)版本的值,默認(rèn)是按照時(shí)間戳降續(xù)排序的

hbase(main):021:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, VERSIONS => 4}

COLUMN CELL

c1: timestamp=, value=v1111

c1: timestamp=, value=v111

c1: timestamp=, value=v11

c1: timestamp=, value=v1

4 row(s) in 0.0180 seconds

# 獲取c1的3個(gè)版本值

hbase(main):027:0* get ‘t1’, ‘r1’, {COLUMN => ‘c1’, VERSIONS => 3}

COLUMN CELL

c1:timestamp=, value=v1111

c1:timestamp=, value=v111

c1:timestamp=, value=v11

3 row(s) in 0.0090 seconds

# 獲取指定時(shí)間戳版本的列

hbase(main):022:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMESTAMP =>}

COLUMN CELL

c1: timestamp=, value=v111

1 row(s) in 0.0170 seconds

hbase(main):023:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMESTAMP =>, VERSIONS => 4}

COLUMN CELL

c1: timestamp=, value=v111

1 row(s) in 0.0130 seconds

# 獲取rowKey=r1中的值等于v2的所有列

hbase(main):024:0> get ‘t1’, ‘r1’, {FILTER => “ValueFilter(=, ‘binary:v2’)”}

COLUMN CELL

c2: timestamp=, value=v2

1 row(s) in 0.0510 seconds

hbase(main):025:0> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, ATTRIBUTES => {‘mykey’=>’myvalue’}}

COLUMN CELL

c1: timestamp=, value=v1111

1 row(s) in 0.0100 seconds

登錄后復(fù)制

4. 刪除某個(gè)列族中的某個(gè)列delete

# 語法

delete ‘表名’, ‘行鍵’, ‘列族名:列名’

create ‘tbl_test’, ‘columnFamily1’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value1’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column2’, ‘value2’

delete ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’

登錄后復(fù)制

 5. 刪除某行數(shù)據(jù)deleteall

# 語法

deleteall ‘表名’, ‘行鍵’

# 示例

deleteall ‘tbl_test’, ‘rowKey1’

登錄后復(fù)制

 6. 清空整個(gè)表的數(shù)據(jù)truncate

先disable表,然后再drop表,最后重新create表

truncate ‘表名’

登錄后復(fù)制

 7. 查詢表中有多少行count

# 語法

count ‘表名’

# 示例

count ‘tbl_user’

登錄后復(fù)制

 8. 自增incr

# 語法

incr ‘表名’, ‘行鍵’, ‘列族:列名’, 步長值

# 示例

# 注意:incr 可以對(duì)不存的行鍵操作,如果行鍵已經(jīng)存在會(huì)報(bào)錯(cuò),如果使用put修改了incr的值再使用incr也會(huì)報(bào)錯(cuò)

# ERROR: org.apache.hadoop.hbase.DoNotRetryIOException: Field is not a long, it’s 2 bytes wide

incr ‘tbl_user’, ‘xiaohong’, ‘info:age’, 1

登錄后復(fù)制

 9. 計(jì)數(shù)器get_counter

# 點(diǎn)擊量:日、周、月

create ‘counters’, ‘daily’, ‘weekly’, ‘monthly’

incr ‘counters’, ”, ‘daily:hits’, 1

incr ‘counters’, ”, ‘daily:hits’, 1

get_counter ‘counters’, ”, ‘daily:hits’

登錄后復(fù)制

10. 修飾詞

10.1 COLUMNS: 查詢同一個(gè)列族的多個(gè)列

# 語法

scan ‘表名’, {COLUMNS => }

# 示例

scan ‘tbl_user’, {COLUMNS => }

登錄后復(fù)制

 10.2 TIMESTAMP 指定時(shí)間戳

scan ‘t1’, {COLUMNS => ‘c2’, TIMESTAMP=>}

登錄后復(fù)制

10.3 TIMERANGE表示的是”>=開始時(shí)間 and }

# 示例

scan ‘tbl_user’,{TIMERANGE=>}

登錄后復(fù)制

 10.4 VERSIONS

默認(rèn)情況下一個(gè)列只能存儲(chǔ)一個(gè)數(shù)據(jù),后面如果修改數(shù)據(jù)就會(huì)將原來的覆蓋掉,可以通過指定VERSIONS時(shí)HBase一列能存儲(chǔ)多個(gè)值。

create ‘tbl_test’, ‘columnFamily1’

describe ‘tbl_test’

# 修改列族版本號(hào)

alter ‘tbl_test’, { NAME=>’columnFamily1′, VERSIONS=>3 }

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value1’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value2’

put ‘tbl_test’, ‘rowKey1’, ‘columnFamily1:column1’, ‘value3’

# 默認(rèn)返回最新的一條數(shù)據(jù)

get ‘tbl_test’,’rowKey1′,’columnFamily1:column1′

# 返回3個(gè)

get ‘tbl_test’,’rowKey1′,{COLUMN=>’columnFamily1:column1′, VERSIONS=>3}

# 返回2個(gè)

get ‘tbl_test’,’rowKey1′,{COLUMN=>’columnFamily1:column1′, VERSIONS=>2}

登錄后復(fù)制

 10.5 STARTROW

ROWKEY起始行。會(huì)先根據(jù)這個(gè)key定位到region,再向后掃描

# 語法

scan ‘表名’, { STARTROW => ‘行鍵名’}

# 示例

scan ‘tbl_user’, { STARTROW => ‘vbirdbest’}

登錄后復(fù)制

 10.6 STOPROW :截止到STOPROW行,STOPROW行之前的數(shù)據(jù),不包括STOPROW這行數(shù)據(jù)

# 語法

scan ‘表名’, { STOPROW => ‘行鍵名’}

# 示例

scan ‘tbl_user’, { STOPROW => ‘vbirdbest’}

登錄后復(fù)制

10.7 LIMIT 返回的行數(shù) 

# 語法

scan ‘表名’, { LIMIT => 行數(shù)}

# 示例

scan ‘tbl_user’, { LIMIT => 2 }

登錄后復(fù)制

 11. FILTER條件過濾器

過濾器之間可以使用AND、OR連接多個(gè)過濾器。

ValueFilter 值過濾器

# 語法:binary 等于某個(gè)值

scan ‘表名’, FILTER=>”ValueFilter(=,’binary:列值’)”

# 語法 substring:包含某個(gè)值

scan ‘表名’, FILTER=>”ValueFilter(=,’substring:列值’)”

# 示例

scan ‘tbl_user’, FILTER=>”ValueFilter(=, ‘binary:26’)”

scan ‘tbl_user’, FILTER=>”ValueFilter(=, ‘substring:6’)”

登錄后復(fù)制

 ColumnPrefixFilter 列名前綴過濾器

# 語法 substring:包含某個(gè)值

scan ‘表名’, FILTER=>”ColumnPrefixFilter(‘列名前綴’)”

# 示例

scan ‘tbl_user’, FILTER=>”ColumnPrefixFilter(‘birth’)”

# 通過括號(hào)、AND和OR的條件組合多個(gè)過濾器

scan ‘tbl_user’, FILTER=>”ColumnPrefixFilter(‘birth’) AND ValueFilter(=,’substring:26′)”

登錄后復(fù)制

rowKey字典排序

關(guān)于如何查看hbase數(shù)據(jù)庫的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務(wù)、應(yīng)用軟件開發(fā)、網(wǎng)站建設(shè)推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎(chǔ)服務(wù)!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡(jiǎn)單好用,價(jià)格厚道的香港/美國云服務(wù)器和獨(dú)立服務(wù)器。創(chuàng)新互聯(lián)——四川成都IDC機(jī)房服務(wù)器托管/機(jī)柜租用。為您精選優(yōu)質(zhì)idc數(shù)據(jù)中心機(jī)房租用、服務(wù)器托管、機(jī)柜租賃、大帶寬租用,高電服務(wù)器托管,算力服務(wù)器租用,可選線路電信、移動(dòng)、聯(lián)通機(jī)房等。


分享標(biāo)題:輕松搞定HBase數(shù)據(jù)庫:快速掌握查看技巧!(如何查看hbase數(shù)據(jù)庫)
網(wǎng)站URL:http://www.dlmjj.cn/article/cocedos.html