[英]Hbase as sink for Mapreduce: Exception in thread “main” org.apache.hadoop.hbase.client.RetriesExhaustedException
[英]How to process huge data in hbase by modifying org.apache.hadoop.hbase.mapreduce.RowCounter?
我的hbase表包含數百萬行。 如果我們進行掃描,則至少需要一個小時才能顯示所有記錄。 我們將日期存儲為行鍵。 我需要獲取日期的最小值和最大值。 我看到了一個實用程序org.apache.hadoop.hbase.mapreduce.RowCounter,它在5分鍾內計數了數百萬行。 有沒有辦法以同樣的方式來完成我的工作? 僅供參考:我正在使用Java。
如果您使用的是HBase 0.98,那么您的問題應該很容易。 您要做的就是獲取表中的第一行和最后一行(因為條目是有序的):
您可以在此處找到有關反向掃描的更多信息: https : //issues.apache.org/jira/browse/HBASE-4811
如果使用的是HBase的早期版本,則應考慮為表使用某些模型/約定。 第一行很容易獲得(再次對表進行一次掃描,限制為1),但是對於最后一行,不幸的是您沒有反向掃描功能。
由於HBase 0.98的解決方案非常簡單,無需進行解決,因此,如果您沒有該版本,我建議進行遷移。
您的方向正確。 RowCounter的用法是對Hbase行進行計數的有效方法,該行有數百萬條記錄。 您可以獲取RowCounter的源代碼並進行一些調整以實現您的要求
希望對您的事業有所幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.