2013-05-29 48 views
2

我在某些數據節點上安裝了R,並且可以編寫Map reduce作業以通過JRI調用R。來自Hive UDF/UDAF的JRI

接下來,要通過配置單元查詢來調用R,我重寫GenericUDAFEvaluator中的terminate方法並在那裏創建Rengine對象。

舊的mapred作業需要我做-Dmapred.child.env="R_HOME=/usr/lib64/R"才能工作。

當我在配置單元中執行此操作(通過設置mapred.child.env =「R_HOME =/usr/lib64/R」;),然後運行查詢時,作業在安裝時失敗。

更一般這種成功從蜂巢:

select count(*) from some_table limit 10; 

但這種失敗:

set mapred.child.env='abc=pqr'; 
select count(*) from some_table limit 10; 

我有hive-hwi-0.9.0-cdh4.1.1.jarhadoop-2.0.0-cdh4.1.1

回答

1

我刪除從SET語句引號和它的工作。所以做:

set mapred.child.env=abc=pqr;

select count(*) from some_table limit 10;

這工作