MapReduce掃描緩存

2018-03-31 15:05 更新

MapReduce掃描緩存

現(xiàn)在,TableMapReduceUtil 恢復(fù)了在傳入的 Scan 對(duì)象中設(shè)置掃描程序緩存(在將結(jié)果返回給客戶端之前緩存的行數(shù))的選項(xiàng)。由于 HBase 0.95(HBASE-11558)中的錯(cuò)誤,此功能丟失。這是為 HBase 0.98.5 和0.96.3 而定的。選擇掃描儀緩存的優(yōu)先順序如下:

  1. 在掃描對(duì)象上設(shè)置的緩存設(shè)置。
  2. 通過配置選項(xiàng) hbase.client.scanner.caching 指定的緩存設(shè)置,可以在 hbase-site.xml 中手動(dòng)設(shè)置或通過輔助方法 TableMapReduceUtil.setScannerCaching() 設(shè)置。
  3. 默認(rèn)值 HConstants.DEFAULT_HBASE_CLIENT_SCANNER_CACHING,設(shè)置為 100。

優(yōu)化緩存設(shè)置是客戶端等待結(jié)果的時(shí)間和客戶端需要接收的結(jié)果集的數(shù)量之間的一種平衡。如果緩存設(shè)置過大,客戶端可能會(huì)等待很長(zhǎng)時(shí)間,否則請(qǐng)求可能會(huì)超時(shí)。如果設(shè)置太小,掃描需要返回幾個(gè)結(jié)果。如果將 scan 視為 shovel,則更大的緩存設(shè)置類似于更大的 shovel,而更小的緩存設(shè)置相當(dāng)于更多的 shovel,以填充 bucket。

上面提到的優(yōu)先級(jí)列表允許您設(shè)置合理的默認(rèn)值,并針對(duì)特定操作對(duì)其進(jìn)行覆蓋。

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

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)