У меня есть R, установленный на некоторых узлах данных, и я могу написать задания Map Reduce для вызова R через JRI.
Затем, чтобы заставить R вызываться через запрос куста, я переопределяю метод terminate в GenericUDAFEvaluator и создаю там объекты Rengine.
Старая работа с картами требовала от меня выполнения -Dmapred.child.env="R_HOME=/usr/lib64/R"
, прежде чем она заработает.
Когда я делаю это в улье (через set 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.jar
и hadoop-2.0.0-cdh4.1.1