MapReduce掃描緩存

2018-03-31 15:05 更新

MapReduce掃描緩存

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

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

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

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

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號