在配置单元中使用Javascript映射Reduce
我一直在Mongo DB中使用JavaScript编写的Map Reduce函数。现在由于大数据,我不得不转而使用Hadoop和Hive 因此,我需要使用JavaScript函数作为映射和缩减脚本来实现HiveQL 我读过很多文件,说剧本没有语言限制。供参考:- 当我尝试使用HiveQL时,甚至使用这个简单的JavaScript函数作为映射脚本在配置单元中使用Javascript映射Reduce,javascript,hadoop,mapreduce,hive,hiveql,Javascript,Hadoop,Mapreduce,Hive,Hiveql,我一直在Mongo DB中使用JavaScript编写的Map Reduce函数。现在由于大数据,我不得不转而使用Hadoop和Hive 因此,我需要使用JavaScript函数作为映射和缩减脚本来实现HiveQL 我读过很多文件,说剧本没有语言限制。供参考:- 当我尝试使用HiveQL时,甚至使用这个简单的JavaScript函数作为映射脚本 function map(data){ return data; } 我得到这个错误 *Error: java.lang.RuntimeExc
function map(data){
return data;
}
我得到这个错误
*Error: java.lang.RuntimeException: Hive Runtime Error while closing operators
at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.close(ExecMapper.java:232)
at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:429)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:162)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1491)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:157)
Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: [Error 20003]: An error occurred when trying to close the Operator running your custom script.
at org.apache.hadoop.hive.ql.exec.ScriptOperator.close(ScriptOperator.java:550)
at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:610)
at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:610)
at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:610)
at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.close(ExecMapper.java:205)
... 8 more*
您至少可以显示MapReduce函数吗?函数map(element){return element;}这是我尝试实现的最基本的map函数。但无法共享实际函数。