婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Hbase入門詳解

Hbase入門詳解

熱門標簽:智能電話機器人坐席 申請400電話價格多少 廈門營銷外呼系統(tǒng)平臺 安陽ai電銷機器人軟件 外呼系統(tǒng)不彈窗 涪陵商都400電話開通辦理 云會外呼系統(tǒng) 柳州市機器人外呼系統(tǒng)報價 外呼系統(tǒng)的經營范圍

1、hbase概述

1.1 hbase是什么

hbase是基于hdfs進行數(shù)據(jù)的分布式存儲,具有高可靠、高性能、列存儲、可伸縮、實時讀寫的nosql數(shù)據(jù)庫。

hbase可以存儲海量的數(shù)據(jù),并且后期查詢性能很高,可以實現(xiàn)上億條數(shù)據(jù)的查詢秒級返回結果。

1.2 hbase表的特性

1、大

  • hbase表可以存儲海量的數(shù)據(jù)。

2、無模式

  • mysql表中每一行列的字段是相同,而hbase表中每一行數(shù)據(jù)可以有截然不同的列。

3、面向列

  • hbase表中的數(shù)據(jù)可以有很多個列,后期它就是按照不同的列去存儲數(shù)據(jù),寫入到不同的文件中。
  • 面向列族進行存儲數(shù)據(jù)。

4、稀疏

  • 在hbase表中為null的列并不占用實際的存儲空間。

5、數(shù)據(jù)的多版本

  • 對于hbase表中的數(shù)據(jù)在進行數(shù)據(jù)更新的時候,它并沒有把之前的結果數(shù)據(jù)直接刪除掉,而是保留數(shù)據(jù)的多個版本,每一個數(shù)據(jù)都給一個版本號,這個版本號就是按照我們插入數(shù)據(jù)的時間戳去確定。

6、數(shù)據(jù)類型單一

  • 無論是什么類型的數(shù)據(jù),最后都被轉換成了字節(jié)數(shù)組存儲在hbase表中

1.3 hbase表的邏輯視圖

2、hbase的集群結構

1、client

  • 提供了對hbase表操作的一些java接口。
  • client 維護著一些 cache 來加快對 hbase 的訪問
  • client 會將查詢過的位置信息保存緩存起來,緩存不會主動失效

2、zookeeper

客戶端操作hbase表數(shù)據(jù)需要一個zk集群

作用

1、zk保存了hbase集群的元數(shù)據(jù)信息

存儲 Hbase 的 schema,包括有哪些 table,每個 table 有哪些 column family

2、zk保存所有hbase表的尋址入口

后期通過客戶端接口去操作hbase數(shù)據(jù)的時候,需要連接上zk集群
存貯所有 Region 的尋址入口----root 表在哪臺服務器上

3、通過引入了zk之后,實現(xiàn)了整個hbase集群高可用

4、zk保存了HMaster和HRegionServer它們的注冊和心跳信息

后期哪一個HRegionServer掛掉之后,zk也會感知到,然后把這個信息通知給老大HMaster

3、HMaster

它是整個hbase集群老大

作用

1、它接受客戶端創(chuàng)建表、刪除表的請求。處理 schema 更新請求

2、它會給HRegionServer分配對應的region,進行數(shù)據(jù)的管理

3、它會把掛掉的HRegionServer所管理的region重新分配給其他的活著的HRegionServer

4、它會實現(xiàn)HRegionServer負載均衡,避免某一個HRegionServer管理的region過多。

4、HRegionServer

它是整合hbase集群的小弟

作用

1、負責管理HMaster老大給它分配的region

2、它會接受到客戶端的讀寫請求

3、它會把在運行過程中,變得過大的region數(shù)據(jù)進行切分

5、Region

它是整個hbase表中分布式存儲的最小單元

它的數(shù)據(jù)是基于hdfs進行存儲

3、hbase集群安裝部署

前提條件

  • 先搭建好zk、hadoop集群

1、下載對應的安裝包

  • http://archive.apache.org/dist/hbase/1.2.1/hbase-1.2.1-bin.tar.gz
  • hbase-1.2.1-bin.tar.gz

2、規(guī)劃安裝目錄

  • /export/servers

3、上傳安裝包到服務器中

4、解壓安裝包到指定的規(guī)劃目錄

  • tar -zxvf hbase-1.2.1-bin.tar.gz -C /export/servers

5、重命名解壓目錄

  • mv hbase-1.2.1 hbase

6、修改配置文件

需要把hadoop安裝目錄下/etc/hadoop文件夾中

  • core-site.xml
  • hdfs-site.xml

需要把以上2個hadoop的配置文件拷貝到hbase安裝目錄下的conf文件夾中

1、vim hbase-env.sh

#配置java環(huán)境變量
export JAVA_HOME=/export/servers/jdk
#指定hbase集群由外部的zk集群去管理,不在使用自帶的zk集群
export HBASE_MANAGES_ZK=false

2、vim hbase-site.xml

       <!-- 指定hbase在HDFS上存儲的路徑 -->
    <property>
        <name>hbase.rootdir</name>
<value>hdfs://node1:9000/hbase</value>
    </property>
        <!-- 指定hbase是分布式的 -->
    <property>
<name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
        <!-- 指定zk的地址,多個用“,”分割 -->
    <property>
        <name>hbase.zookeeper.quorum</name>
<value>node1:2181,node2:2181,node3:2181</value>
    </property>

3、vim regionservers

#指定哪些節(jié)點是HRegionServer
node2
node3

4、vim backup-masters

#指定哪些節(jié)點是備用的Hmaster
node2

7、配置hbase環(huán)境變量

vim /etc/profile

export HBASE_HOME=/export/servers/hbase
export PATH=$PATH:$HBASE_HOME/bin

8、分發(fā)hbase目錄和環(huán)境變量

scp -r hbase node2:/export/servers
scp -r hbase node3:/export/servers
scp /etc/profile node2:/etc
scp /etc/profile node3:/etc

9、讓所有hbase節(jié)點的環(huán)境變量生效

在所有節(jié)點上執(zhí)行

  • source /etc/profile

4、hbase集群的啟動和停止

1、啟動hbase集群

先啟動zk和hadoop集群

然后通過hbase/bin

start-hbase.sh

  • 你在哪里啟動這個腳本,首先在當前機器啟動一個HMaster進程(它就是活著的HMaster)
  • 通過regionservers文件在對應的節(jié)點來啟動HRegionServer
  • 通過backup-masters文件在對應的節(jié)點來啟動備用的HMaster

2、停止hbase集群

通過hbase/bin

stop-hbase.sh

hbase集群web管理界面

1、啟動好hbase集群之后

訪問地址

HMaster主機名:16010

5、hbase shell 命令行操作

hbase/bin/hbase shell 進入到hbase shell客戶端命令操作

1、創(chuàng)建一個表

create 't_user_info','base_info','extra_info'
create 't1', {NAME => 'f1'}, {NAME => 'f2'}, {NAME => 'f3'}

2、查看有哪些表

list
類似于mysql表中sql:show tables

3、查看表的描述信息

describe 't_user_info'

4、修改表的屬性

#修改列族的最大版本數(shù)
alter 't_user_info', NAME => 'base_info', VERSIONS => 3

5、添加數(shù)據(jù)到表中

put 't_user_info','00001','base_info:name','zhangsan'
put 't_user_info','00001','base_info:age','30'
put 't_user_info','00001','base_info:address','beijing'
put 't_user_info','00001','extra_info:school','shanghai'
put 't_user_info','00002','base_info:name','lisi'

6、查詢表的數(shù)據(jù)

//按照條件查詢
get 't_user_info','00001'
get 't_user_info','00001', {COLUMN => 'base_info'}
get 't_user_info','00001', {COLUMN => 'base_info:name'}
get 't_user_info','00001',{TIMERANGE => [1544243300660,1544243362660]}
get 't_user_info','00001',{COLUMN => 'base_info:age',VERSIONS =>3}
//全表查詢
scan 't_user_info'

7、刪除數(shù)據(jù)

delete 't_user_info','00001','base_info:name'
deleteall 't_user_info','00001'

8、刪除表

disable 't_user_info'
drop 't_user_info'

6、hbase的內部原理

  • Table 中的所有行都按照 row key 的字典序排列
  • Table 在行的方向上分割為多個 Hregion
  • region 按大小分割的(默認 10G),每個表一開始只有一個 region , region 不斷增大,當增大到一個閥值的時候,Hregion 就會等分會兩個新的 Hregion。當 table中的行不斷增多,就會有越來越多Hregion。
  • Hregion 是 Hbase 中分布式存儲和負載均衡的最小單元。最小單元就表示不同的 Hregion可以分布在不同的 HRegion server 上。
  • HRegion 雖然是負載均衡的最小單元,但并不是物理存儲的最小單元。HRegion 由一個或者多個 Store 組成,每個 store 保存一個 column family。每個 Strore 又由一個 memStore 和 0 至多個 StoreFile 組成。寫操作先寫入 memstore,當 memstore 中的數(shù)據(jù)量達到某個閾值(默認128M或1個小時),Hregionserver 啟動flashcache 進程寫入 storefile,每次寫入形成單獨一個 storefile。
  • 當 storefile 的個數(shù)超過一定閾值后(默認參數(shù) hbase.hstore.blockingStoreFiles=10),多個storeFile會進行合并,當該region的所有store的storefile大小之和,即所有store的大小超過 hbase.hregion.max.filesize=10G 時,這個 region 會被拆分會把當前的 region分割成兩個,并由 Hmaster 分配給相應的 region 服務器,實現(xiàn)負載均衡。
  • 每個 HRegionServer 中都有一個 HLog 對象,HLog 是一個實現(xiàn) Write Ahead Log 的類,在每次用戶操作寫入 MemStore 的同時,也會寫一份數(shù)據(jù)到 HLog 文件中, HLog 文件定期會滾動出新的,并刪除舊的文件(已持久化到 StoreFile 中的數(shù)據(jù))。當 HRegionServer 意外終止后,HMaster 會通過 Zookeeper 感知到,HMaster 首先會處理遺留的 HLog 文件,將其中不同 Region 的 Log 數(shù)據(jù)進行拆分,分別放到相應 region 的目錄下,然后再將失效的 region 重新分配,領取到這些 region 的 HRegionServer 在 Load Region的過程中,會發(fā)現(xiàn)有歷史 HLog 需要處理,因此會 Replay HLog 中的數(shù)據(jù)到 MemStore 中,然后 flush 到 StoreFiles,完成數(shù)據(jù)恢復。

7、hbase的尋址機制

尋找 RegionServer

  • ZooKeeper–> -ROOT-(單 Region)–> .META.–> 用戶表

-ROOT-表

  • 表包含.META.表所在的 region 列表,該表只會有一個 Region;
  • root region 永遠不會被 split,保證了最多需要三次跳轉,就能定位到任意 region 。
  • Zookeeper 中記錄了-ROOT-表的 location。

.META.表

  • 表包含所有的用戶空間 region 列表,以及 RegionServer 的服務器地址
  • .META.表每行保存一個 region 的位置信息,row key 采用表名+表的最后一行編碼而成。
  • 為了加快訪問,.META.表的全部 region 都保存在內存中。

聯(lián)系 regionserver 查詢目標數(shù)據(jù)

regionserver 定位到目標數(shù)據(jù)所在的 region,發(fā)出查詢請求

region 先在 memstore 中查找,命中則返回

如果在 memstore 中找不到,則在 storefile 中掃描(可能會掃描到很多的 storefile----bloomfilter 布隆過濾器)布隆過濾器可以快速的返回查詢的rowkey是否在這個storeFile中, 但也有誤差, 如果返回沒有,則一定沒有,如果返回有, 則可能沒有

8、Hbase高級應用

建表

BLOOMFILTER 默認是 Row 布隆過濾器

  • 對 ROW,行鍵的哈希在每次插入行時將被添加到布隆。
  • 對 ROWCOL,行鍵 + 列族 + 列族修飾的哈希將在每次插入行時添加到布隆

VSRSIONS 默認是 1 數(shù)據(jù)版本

  • 如果我們認為我們的數(shù)據(jù)沒有這么大的必要保留這么多,隨時都在更新,而老版本的數(shù)據(jù)對我們毫無價值,那將此參數(shù)設為 1 能節(jié)約 2/3 的空間

COMPRESSION 默認值是 NONE 壓縮

  • GZIP / LZO / Zippy / Snappy

disable_all ‘toplist.*' disable_all 支持正則表達式,并列出當前匹配的表 drop_all也相同

hbase 表預分區(qū)----手動分區(qū)

一種可以加快批量寫入速度的方法是通過預先創(chuàng)建一些空的 regions,這樣當數(shù)據(jù)寫入 HBase時,會按照 region 分區(qū)情況,在集群內做數(shù)據(jù)的負載均衡。減少數(shù)據(jù)達到 storefile 大小的時候自動分區(qū)的

時間消耗,并且還有以一個優(yōu)勢,就是合理設計 rowkey 能讓各個 region 的并發(fā)請求平均分配(趨于均勻) 使 IO 效率達到最高,

行鍵設計

列族盡量少, 一般2-3個

rowkey

  • 根據(jù)字典序的特性, 將需要批量查詢的數(shù)據(jù)盡可能連續(xù)存放( 矛 )
  • 盡可能將查詢條件關鍵詞拼裝到 rowkey 中,查詢頻率最高的條件盡量往前靠
  • rowkey建議越短越好,不要超過 16 個字節(jié)

盡量減少行鍵和列族的大小在 HBase 中,value 永遠和它的 key 一起傳輸?shù)?br /> HFile中每個cell都會存儲rowkey, rowkey過大會影響存儲效率
MemStore 將緩存部分數(shù)據(jù)到內存,如果 rowkey 字段過長,內存的有效利用率就會降低,系統(tǒng)不能緩存更多的數(shù)據(jù),這樣會降低檢索效率。

建議將 rowkey 的高位作為散列字段,由程序隨機生成,低位放時間字段,這樣將提高數(shù)據(jù)均衡分布在每個 RegionServer,以實現(xiàn)負載均衡的幾率。( 盾 )

rowkey矛盾

  • HBase 中的行是按照 rowkey 的字典順序排序的,這種設計優(yōu)化了 scan 操作,可以將相關的行以及會被一起讀取的行存取在臨近位置,便于 scan。然而糟糕的rowkey 設計是熱點的源頭。

熱點解決

  • 加鹽 在rowkey前加隨機字符串
  • 哈希 哈希會使同一行永遠用一個前綴加鹽
  • 反轉 反轉固定長度或者數(shù)字格式的 rowkey 犧牲了rowkey的有序性
  • 時間戳反轉

可以用 Long.Max_Value - timestamp 追加到 key 的末尾,例如 [key][reverse_timestamp] ,[key] 的最新值可以通過 scan [key]獲得[key]的第一條記錄,因為 HBase 中 rowkey 是有序的,第一條記錄是最后錄入的數(shù)據(jù)。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

標簽:孝感 晉城 撫順 南充 福州 蕪湖 巴中 綏化

巨人網絡通訊聲明:本文標題《Hbase入門詳解》,本文關鍵詞  Hbase,入門,詳解,Hbase,入門,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Hbase入門詳解》相關的同類信息!
  • 本頁收集關于Hbase入門詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲精品国产成人久久av盗摄 | gogo大胆日本视频一区| 久久青草欧美一区二区三区| 成人av第一页| 秋霞午夜av一区二区三区| 国产视频一区二区在线| 日韩三级在线观看| 99热在这里有精品免费| 成人一区二区视频| 国产一区二区在线电影| 国产乱码精品一区二区三区五月婷| 亚洲欧美国产77777| 亚洲精品美国一| 亚洲精品日日夜夜| 中文字幕一区在线观看| 亚洲精品视频免费看| 欧美日韩另类一区| 波多野结衣在线一区| 国产精品小仙女| jiyouzz国产精品久久| 91丨九色丨尤物| 欧美日韩国产123区| 日韩精品影音先锋| 国产精品三级久久久久三级| 夜夜嗨av一区二区三区中文字幕| 亚洲成人久久影院| 蜜桃av一区二区| 成人免费视频视频| 欧美三级视频在线| 久久久久国产精品麻豆ai换脸| 中文字幕一区二区三区四区| 亚洲国产精品一区二区www在线| 91香蕉视频在线| 中文字幕乱码久久午夜不卡 | 国产成人高清视频| 在线观看日韩电影| 久久久.com| 日韩高清欧美激情| 欧美日韩在线精品一区二区三区激情 | 亚洲综合色区另类av| 99久久精品免费看国产免费软件| 精品理论电影在线观看 | 91丨九色丨国产丨porny| 欧美va亚洲va香蕉在线| 亚洲成人av一区二区三区| 99精品欧美一区二区蜜桃免费| 日韩视频免费观看高清完整版| 精品美女一区二区| 天天综合网 天天综合色| 欧美电影免费观看高清完整版在线 | 捆绑调教美女网站视频一区| 色视频一区二区| 国产福利一区二区三区| 色综合婷婷久久| 337p粉嫩大胆噜噜噜噜噜91av| 一区二区三区四区乱视频| www.成人在线| 亚洲人成在线播放网站岛国| 色悠久久久久综合欧美99| 中文字幕日韩一区二区| 97久久精品人人做人人爽| 久久影院午夜片一区| 国产一区999| 国产精品高潮呻吟| 日本黄色一区二区| 日韩av电影一区| 欧美一区二区二区| 精品在线播放免费| 国产色爱av资源综合区| 懂色av一区二区三区蜜臀| 亚洲天堂免费看| 欧美美女直播网站| 国产999精品久久久久久绿帽| 欧美性欧美巨大黑白大战| 欧美在线免费观看亚洲| 亚洲在线免费播放| 日韩欧美国产综合在线一区二区三区| 亚洲国产日韩综合久久精品| 精品1区2区在线观看| 高清国产一区二区三区| 亚洲蜜臀av乱码久久精品蜜桃| 日韩欧美久久一区| 欧美精品亚洲一区二区在线播放| 国内不卡的二区三区中文字幕| 国产精品国产精品国产专区不蜜 | 亚洲综合在线视频| 国产精品污网站| 2021中文字幕一区亚洲| 成人av网站在线观看免费| 久久99久久精品| 亚洲男人电影天堂| 亚洲精品在线三区| 日韩三级视频在线看| 色婷婷激情一区二区三区| 国产精品一二三区| 男女激情视频一区| 亚洲国产精品影院| 午夜激情一区二区| 亚洲欧美综合另类在线卡通| 欧美丰满少妇xxxbbb| 欧美日韩二区三区| 日韩欧美国产综合在线一区二区三区| 91精品国产综合久久福利软件| 91精品黄色片免费大全| 国产精品天美传媒| 天天爽夜夜爽夜夜爽精品视频| 婷婷中文字幕一区三区| 蜜臀av性久久久久av蜜臀妖精| 国产一区福利在线| 在线观看一区不卡| 欧美日韩国产大片| 亚洲精品第1页| 男女激情视频一区| 成人视屏免费看| 欧美日韩在线播放一区| 久久久精品tv| 婷婷久久综合九色综合绿巨人| 美日韩一区二区三区| 成人性生交大片免费看中文网站| 欧美日韩在线综合| 国产日韩欧美精品一区| 天堂一区二区在线免费观看| 国产91丝袜在线播放九色| 9191成人精品久久| 亚洲一区二区在线观看视频 | av一区二区久久| 欧美电影免费观看完整版| 欧美成人精品高清在线播放 | 丁香婷婷深情五月亚洲| 91色乱码一区二区三区| 日韩三级在线免费观看| 一区二区三区欧美| jlzzjlzz亚洲日本少妇| 亚洲免费在线看| 在线观看亚洲一区| 五月天欧美精品| 日韩精品一区二区三区视频播放 | 精品国产乱码久久久久久浪潮| 91精选在线观看| 日韩欧美123| 久久 天天综合| 国产清纯白嫩初高生在线观看91| 久久不见久久见中文字幕免费| 91精品在线免费观看| 国产一区视频网站| 一区二区理论电影在线观看| 五月婷婷久久综合| 欧美一区二区三区性视频| 中文字幕av一区二区三区高| 欧亚洲嫩模精品一区三区| 亚洲九九爱视频| www亚洲一区| 欧美无乱码久久久免费午夜一区 | 欧美日韩一本到| 99精品在线免费| 亚洲一区免费视频| 欧美精品一区二区三区高清aⅴ | 国产成人夜色高潮福利影视| 91日韩精品一区| 日本成人超碰在线观看| 亚洲婷婷综合色高清在线| 制服丝袜国产精品| 不卡的av网站| 久久66热re国产| 亚洲mv在线观看| 亚洲日本中文字幕区| 久久久www成人免费无遮挡大片| 在线日韩一区二区| 96av麻豆蜜桃一区二区| av不卡免费在线观看| 国产一区二区三区不卡在线观看| 亚洲综合色自拍一区| 中文字幕中文字幕一区二区| 日韩你懂的在线播放| 欧美在线观看视频一区二区三区| 成人免费看视频| 国产乱码精品一区二区三区忘忧草| 一区二区三区在线观看国产| 色综合色狠狠综合色| 91免费观看在线| 国产精品2024| 激情综合色综合久久综合| 视频在线观看一区| 亚洲成a人v欧美综合天堂| 亚洲综合男人的天堂| 日韩成人伦理电影在线观看| 日韩av网站在线观看| 成人深夜在线观看| 91伊人久久大香线蕉| 成人午夜短视频| 日韩电影在线一区二区| 久久精品免费观看| 丰满白嫩尤物一区二区| 欧美精品在线视频| 中文字幕日本不卡| 久久丁香综合五月国产三级网站| 不卡视频在线观看| 精品国产自在久精品国产| 亚洲欧美偷拍另类a∨色屁股| 首页综合国产亚洲丝袜|