91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

hbase中cache與batch是什么意思

發布時間:2021-12-08 15:18:00 來源:億速云 閱讀:243 作者:小新 欄目:云計算

這篇文章主要為大家展示了“hbase中cache與batch是什么意思”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“hbase中cache與batch是什么意思”這篇文章吧。

cache:
     在默認情況下,如果你需要從hbase中查詢數據,在獲取結果ResultScanner時,hbase會在你每次調用ResultScanner.next()操作時對返回的每個Row執行一次RPC操作。即使你使用ResultScanner.next(int nbRows)時也只是在客戶端循環調用RsultScanner.next()操作,你可以理解為hbase將執行查詢請求以迭代器的模式設計,在執行next()操作時才會真正的執行查詢操作,而對每個Row都會執行一次RPC操作。
 
     因此顯而易見的就會想如果我對多個Row返回查詢結果才執行一次RPC調用,那么就會減少實際的通訊開銷。這個就是hbase配置屬性“hbase.client.scanner.caching”的由來,設置cache可以在hbase配置文件中顯示靜態的配置,也可以在程序動態的設置。
 
     cache值得設置并不是越大越好,需要做一個平衡。cache的值越大,則查詢的性能就越高,但是與此同時,每一次調用next()操作都需要花費更長的時間,因為獲取的數據更多并且數據量大了傳輸到客戶端需要的時間就越長,一旦你超過了maximum heap the client process 擁有的值,就會報outofmemoryException異常。當傳輸rows數據到客戶端的時候,如果花費時間過長,則會拋出ScannerTimeOutException異常。
 
batch:
     在cache的情況下,我們一般討論的是相對比較小的row,那么如果一個Row特別大的時候應該怎么處理呢?要知道cache的值增加,那么在client process 占用的內存就會隨著row的增大而增大。在hbase中同樣為解決這種情況提供了類似的操作:Batch。可以這么理解,cache是面向行的優化處理,batch是面向列的優化處理。它用來控制每次調用next()操作時會返回多少列,比如你設置setBatch(5),那么每一個Result實例就會返回5列,如果你的列數為17的話,那么就會獲得四個Result實例,分別含有5,5,5,2個列。

RPCs=(Rows* Cols per Row) / Min(Cols per Row, Batch size) / Scanner caching

以上是“hbase中cache與batch是什么意思”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

疏附县| 石泉县| 湘阴县| 望都县| 运城市| 加查县| 汉寿县| 镶黄旗| 昌吉市| 黄山市| 兰坪| 宁南县| 高碑店市| 孟州市| 竹北市| 柳江县| 扎囊县| 石林| 延庆县| 德庆县| 盐津县| 汽车| 象山县| 东山县| 项城市| 宁乡县| 美姑县| 麟游县| 新竹县| 改则县| 赤水市| 巴青县| 濮阳市| 弋阳县| 右玉县| 航空| 盐源县| 武穴市| 巴林右旗| 保亭| 绥化市|