Posted on 2012-07-25 11:12
云云 閱讀(1421)
評論(1) 編輯 收藏
HBase提供了setCaching設(shè)置 cache數(shù)量,但是很多時候 如果設(shè)置不當,會相當耗內(nèi)存。
如果不設(shè)置該值,默認是1條。如果設(shè)置該值很大,是可以加快速度,同時也消耗了太多的內(nèi)存。
所以 合理的設(shè)置就很重要了。
當設(shè)置了setCaching(n)后,我們的server會從regin server上讀取出n條數(shù)據(jù)。
那么client端讀取數(shù)據(jù)的時候會直接從server的緩存中返回,
但是如果每次你只需要讀取100條記錄,但是設(shè)置了setCaching(1000),那么每次
都會從region server 多余的拿出900條記錄,這樣會讓應(yīng)用的server內(nèi)存吃不消了
比較好的解決方案就是 設(shè)置setCaching(n)為實際需要的記錄數(shù)。