2015-06-03 56 views
0

我試圖從HBase的表讀取值與decalre值作爲PARAMPIG動態參數

rawConfig = LOAD 'hbase://mytable.config' 
     USING org.apache.pig.backend.hadoop.hbase.HBaseStorage(
     'm:config', 
     '-gte myTsFlag -lte myTsFlag}' 
    ) as (
     tsConfig:chararray 
    ); 

rawCache = FOREACH rawConfig generate (IsEmpty(tsConfig) ? '0':tsConfig) as lastTs; 

現在我想設置的rawCache.$0.lastTs值作爲放慢參數,這樣我可以在加載使用鄰桌

這不起作用

%declare myConfig rawCache.$0.lastTs; 
raw = LOAD 'hbase://mytable.users' 
     USING org.apache.pig.backend.hadoop.hbase.HBaseStorage(
     'm:1', 
     '-minTimestamp $myConfig' 
    ) as (email:chararray); 

關於如何使用上表中的值的任何想法?

對豬比較新,所以我可能完全錯了:)。

回答

0

引用的聲明應該工作:

%declare myConfig 'rawCache.$0.lastTs' 
+0

仍然得到同樣的 '錯誤豬腳本無法驗證:了java.lang.RuntimeException:無法實例化「org.apache.pig.backend.hadoop.hbase .HBaseStorage'與參數'[m:1,-minTimestamp rawCache。$ 0.lastTs]'' – Rishabh

+0

對不起,那肯定是錯誤的答案。我沒有注意到你的參數是豬的命令。 – FtoTheZ