Hbase學習之四 Hbase表設計案例

2022-07-30 17:42:13 字數 1142 閱讀 1716

環境

虛擬機器:vmware 10

linux版本:centos-6.5-x86_64

客戶端:xshell4

ftp:xftp4

jdk8

hadoop-2.6.5

hbase-0.98.12.1-hadoop2

hbase中表的設計

主要是將原來的關係解開

問題:

例子:

表設計一: 

表設計二: 

這是乙個雙向查詢,根據人員查角色,根據角色查人員

問題:

0為頂級部門,1為子部門

放到一張表中不會對效率產生影響,因為hbase是海量儲存,海量讀寫的。

redis可以持久化到本地,可以解決併發的問題

表設計中的兩點:

1.加字首,為了便於區分

2.不加字首,進行解耦

表設計案例二:微博

規律:如果是一對多,從一端儲存多端的資訊就可以

如果是一對一,就是單一的操作,不用建兩張表

多對多建表的時候,資料冗餘比較嚴重,需要建雙端的查詢

微博的表設計:一對多

rowkey盡量短,

列族盡量少於三個,太多的話會增加磁碟io。

資料:hbase 表設計、讀表、寫表優化.doc

參考:

HBase學習之HBase的RowKey設計原則

hbase是三維有序儲存的,通過rowkey 行鍵 column key column family和qualifier 和timestamp 時間戳 這個三個維度可以對hbase中的資料進行快速定位。hbase中rowkey可以唯一標識一行記錄,在hbase查詢的時候,有以下幾種方式 通過get方...

HBase學習之路 四 理解HBase的基本架構

二 hbase表資料模型 三 hbase核心架構 四 hbase讀寫流程 五 總結 hbase是面向列的非關係型資料庫,可以簡單地總結,列是hbase最基本的單位,一行由多列組成。具體組成結構如下 1.行健 行健 rowkey 的作用是在hbase表中唯一標識一行,與關係型資料庫中的主鍵很類似,在同...

Hadoop學習筆記(四) HBase

hbase是乙個高可靠性 高效能 面向列 可伸縮的分布式儲存系統,它是google bigtable的開源實現,執行於hdfs檔案系統之上,利用mapreduce處理資料,使用zookeeper作為協同服務,因此可以容錯地儲存海量稀疏的資料。海量資料儲存,方便擴充套件 快速的隨機訪問,獨特的設計使得...