亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Thrift中實現按照時間戳范圍操作Hbase數據

系統 4105 0

在一次做項目的過程中,要實現一個功能,功能描述為前端給定日期范圍,在該日期范圍內取出指定行的信息。在Thrift常用的API中,取出一行所有的數據接口為getVer(),getver()具體描述如下:

Thrift中實現按照時間戳范圍操作Hbase數據

如果想取到帶有時間戳的數據,有一個接口為getVerTs,getVerTs內容描述如下:

Thrift中實現按照時間戳范圍操作Hbase數據

但是此接口只能取到小于該時間戳的數據,如果想取到時間戳范圍內的數據還是無能為力,為了實現此功能,接著又去嘗試了getVer()中參數5map的用法,以為在map中添加timestamp的限制條件就好了。

于是搜啊搜,Google,Baidu都嘗試了,關于map的使用例子卻找不到,于是就按照網上給的map的含義自己寫,但是npm start后一大堆錯誤,最后實在沒辦法只好放棄此種方法。

然后就靜下心來看了看自己寫的代碼,自己處理hbase返回數據的方式,忽然,恍然大悟,自己費盡心思想用map實現,其實根本不需要,只需要對其得到的數據加上限制條件就OK了。我的代碼如下:

  
      
         1
      
       client.getVer
      
        (
        
          'rdga_by_plate',
          
            encodedPlate,
            
              'KEY:ID',
              
                '10000',
                
                  null,
                  
                    AsyncSearchIdAjaxQuery
                    
                      );
                    
                  
                
              
            
          
        
      
      
function AsyncSearchIdAjaxQuery(err,idValueAjaxQuery) 2 { 3 if (err) 4 { 5 console.log('getRow error:' , err); 6 } 7 else 8 { 9 console.log("The ajax startdate is:" ,dateToTimestamp(inputedStartDate)); 10 console.log("The ajax enddate is:" ,dateToTimestamp(inputedEndDate)); 11 var rowKeys = new Array(); 12 var timestampNum = 0 ; 13 var startDateTimestamp = dateToTimestamp(inputedStartDate); 14 var endDateTimestamp = dateToTimestamp(inputedEndDate); 15 for ( var key in idValueAjaxQuery) 16 { 17 // console.log("The key is:",key); 18 19 console.log('Row value:' , idValueAjaxQuery[key].value.toString()); 20 console.log('Timestamp: ' ,idValueAjaxQuery[key].timestamp.toString()); 21 if (idValueAjaxQuery[key].timestamp.toString() >= startDateTimestamp && idValueAjaxQuery[key].timestamp.toString() <= endDateTimestamp) 22 { 23 rowKeys.push(idValueAjaxQuery[key].value.toString()); 24 timestampNum++ ; 25 }
26 client.getRows ( 'rdga_by_id', rowKeys, null, AsyncSearchDetailsAjaxQuery ); 27 } 28 29 } 30 }

getVer得到的數據在idValueAjaxQuery中,它的里面包括timestamp的內容,要想實現時間戳范圍內查找數據,此時在21行加上限制條件,此時符合條件的idValueAjaxQuery中的value值就會放置在rowKeys數組中,這時通過26行的getRows得到的內容就是時間戳范圍內的數據。

    

Thrift中實現按照時間戳范圍操作Hbase數據


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲欧美日韩在线不卡中文 | 成人亚洲在线 | 四虎4hu影库免费永久国产 | 天天爽影院一区二区在线影院 | 欧美日韩中文字幕久久伊人 | www.欧美com | 杨幂国产精品福利在线观看 | 色狠狠婷婷97| 美女久久| 国产视频精品视频 | 日本中文字幕不卡 | 精品欧美一区二区在线观看 | 久久伊人一区二区三区四区 | 亚洲欧美日韩中文字幕在线 | 免费又爽又黄禁片视频在线播放 | 国产精品成人扳一级aa毛片 | 国产美女mm131爽爽爽免费 | 538在线视频二三区视视频 | 国产精品视频公开费视频 | 免费一级特黄视频 | 女人大毛片一级毛片一 | 伊人国产在线播放 | 精品视频在线观看一区二区 | 欧美视频三区 | 中国jizz妇女jizz妇女 | 精品国产欧美一区二区三区成人 | 久久91精品综合国产首页 | 26uuu另类欧美亚洲日本 | 青青青久在线视频免费观看 | 青青草一区二区免费精品 | 国产呦系列 欧美呦 日韩呦 | 鲁啊鲁啊鲁在线视频播放 | 看全色黄大色大片免费久久久 | 欧美日韩国产人成在线观看 | 久久草在线看 | 91蝌蚪在线播放 | 黄色短视频在线播放 | 天天色天天 | 午夜男人 | 四虎永久在线精品视频免费观看 | 免费久福利视频在线观看 |