W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
要啟用HBase的內(nèi)存壓縮,請在您希望的行為的每個列族上設(shè)置IN_MEMORY_COMPACTION屬性。該IN_MEMORY_COMPACTION屬性可以是四個值之一:
要在radish表中的info列系列上啟用BASIC,請禁用該表并將該屬性添加到info列族,然后重新啟用:
hbase(main):002:0> disable 'radish'
Took 0.5570 seconds
hbase(main):003:0> alter 'radish', {NAME => 'info', IN_MEMORY_COMPACTION => 'BASIC'}
Updating all regions with the new schema...
All regions updated.
Done.
Took 1.2413 seconds
hbase(main):004:0> describe 'radish'
Table radish is DISABLED
radish
COLUMN FAMILIES DESCRIPTION
{NAME => 'info', VERSIONS => '1', EVICT_BLOCKS_ON_CLOSE => 'false', NEW_VERSION_BEHAVIOR => 'false', KEEP_DELETED_CELLS => 'FALSE', CACHE_DATA_ON_WRITE => 'false', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', MIN_VERSIONS => '0', REPLICATION_SCOPE => '0', BLOOMFILTER => 'ROW', CACHE_INDEX_ON_WRITE => 'false', IN_MEMORY => 'false', CACHE_BLOOMS_ON_WRITE => 'false', PREFETCH_BLOCKS_ON_OPEN => 'false', COMPRESSION => 'NONE', BLOCKCACHE => 'true', BLOCKSIZE => '65536', METADATA => {
'IN_MEMORY_COMPACTION' => 'BASIC'}}
1 row(s)
Took 0.0239 seconds
hbase(main):005:0> enable 'radish'
Took 0.7537 seconds
請注意IN_MEMORY_COMPACTION屬性如何顯示為METADATA映射的一部分。
還有一個全局配置hbase.hregion.compacting.memstore.type,您可以在hbase-site.xml文件中設(shè)置該配置。使用它來設(shè)置創(chuàng)建新表時的默認值(在創(chuàng)建列族存儲時,我們首先查看列族配置,以查找IN_MEMORY_COMPACTION設(shè)置 ,如果沒有,我們將查詢hbase.hregion.compacting.memstore .type值使用其內(nèi)容;默認為BASIC)。
默認情況下,新的hbase系統(tǒng)表將具有BASIC內(nèi)存中壓縮集。若要另行指定,在新表創(chuàng)建時,將hbase.hregion.compacting.memstore.type設(shè)置為NONE(注意,設(shè)置此值后創(chuàng)建系統(tǒng)表將不具有追溯效果;您將必須更改表以設(shè)置內(nèi)存屬性為NONE)。
當內(nèi)存刷新發(fā)生時,通過將已配置的區(qū)域刷新大?。ㄔ诒砻枋龇性O(shè)置或從hbase.hregion.memstore.flush.size讀?。┏粤凶鍞?shù),然后乘以hbase.memstore.inmemoryflush.threshold.factor來計算。默認值為0.014。
監(jiān)視管道承載的刷新次數(shù),以便符合memstore大小調(diào)整的范圍,但您也可以通過設(shè)置hbase.hregion.compacting.pipeline.segments.limit來設(shè)置總刷新次數(shù)的最大值。默認值為2。
創(chuàng)建列族Store時,它會說明哪些memstore類型有效。在撰寫本文時,有一個老式的DefaultMemStore,它填充ConcurrentSkipListMap,然后刷新到磁盤或新的CompactingMemStore,它是提供這種新的內(nèi)存中壓縮工具的實現(xiàn)。以下是來自RegionServer的日志行,該日志行顯示了一個名為family的列族Store,配置為使用CompactingMemStore:
請注意IN_MEMORY_COMPACTION屬性如何顯示為_METADATA_映射的一部分。
2018-03-30 11:02:24,466 INFO [Time-limited test] regionserver.HStore(325):Store = family,memstore type = CompactingMemStore,storagePolicy = HOT,verifyBulkLoads = false,parallelPutCountPrintThreshold = 10
在CompactingMemStore類(org.apache.hadoop.hbase.regionserver.CompactingMemStore)上啟用TRACE級別日志記錄,以查看其操作的詳細信息。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: