如果熱點資料的rowkey
字首一樣,則很容易被儲存在同一regionserver
上,這樣就會造成訪問的效能瓶頸;
rowkey
字首提供乙個隨機字串,可以更好的分布在集群中,但是失去了排序特性;
rowkey
應該設計的精簡,過長會加長硬碟和網路io的開銷.
scan
返回的資料是按照rowkey
排序;
api
可以設定startrow
、stoprow
查詢範圍內資料;
如rowkey
是時間日期格式,以下可以查詢2020
年的資料:
scan scan =
newscan()
;scan.
setstartrow
(bytes.
tobytes
("20200101"))
;scan.
setstoprow
(bytes.
tobytes
("20210101"))
;
注意[startrow
,stoprow
)左閉右開.
rowkey設計原則
rowkey是二進位製碼流,可以是任意字串,最大長度64kb。一 rowkey長度原則 建議越短越好,因為如果要儲存多行資料的話,單憑rowkey就要占用很多的儲存空間,這樣會嚴重影響hfile的儲存效率。二 rowkey雜湊原則 如果rowkey按照時間戳的方式遞增,不要將時間放在二進位製碼的前面...
python字典排序
1 準備知識 在python裡,字典dictionary是內建的資料型別,是個無序的儲存結構,每一元素是key value對 如 dict 其中 username 和 database 是key,而 password 和 master 是value,可以通過d key 獲得對應值value的引用,但...
字典排序相關
一 字典排序的規則 兩個字串 stra a1 a2 am strb b1 b2 bn 1.如果其中乙個字串是另乙個字串的子串,那麼子串要小於另乙個字串 2.如果這兩個字串沒有子串的關係,那麼從前往後遍歷stra和strb,找到第一對不相同的字元ai和bi,如果aibi,則stra大於strb 3.具...