HBase列族數(shù)量

2018-03-15 14:31 更新

HBase列族數(shù)量

HBase 目前對(duì)于兩列族或三列族以上的任何項(xiàng)目都不太合適,因此請(qǐng)將模式中的列族數(shù)量保持在較低水平。目前,flushing 和 compactions 是按照每個(gè)區(qū)域進(jìn)行的,所以如果一個(gè)列族承載大量數(shù)據(jù)帶來(lái)的 flushing,即使所攜帶的數(shù)據(jù)量很小,也會(huì) flushing 相鄰的列族。當(dāng)許多列族存在時(shí),flushing 和 compactions 相互作用可能會(huì)導(dǎo)致一堆不必要的 I/O(要通過(guò)更改 flushing 和 compactions 來(lái)針對(duì)每個(gè)列族進(jìn)行處理)。

如果你可以在你的模式中嘗試使用一個(gè)列族。在數(shù)據(jù)訪問(wèn)通常是列作用域的情況下,僅引入第二和第三列族;即你查詢一個(gè)列族或另一個(gè)列族,但通常不是兩者同時(shí)存在。

ColumnFamilies的基數(shù)

在一個(gè)表中存在多個(gè) ColumnFamilies 的情況下,請(qǐng)注意基數(shù)(即行數(shù))。如果 ColumnFamilyA 擁有100萬(wàn)行并且 ColumnFamilyB 擁有10億行,則ColumnFamilyA 的數(shù)據(jù)可能會(huì)分布在很多很多地區(qū)(以及 Region Server)中。這使得 ColumnFamilyA 的大規(guī)模掃描效率較低。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)