oozie—输出数据超出其限制[2048]

s3fp2yjn  于 2021-06-29  发布在  Hive
关注(0)|答案(4)|浏览(570)

我正在尝试运行一个简单的工作流来执行配置单元脚本。这个配置单元脚本只调用连接(表非常大);一旦配置单元脚本执行结束,我本来希望看到工作流状态从running变为successful,但这并没有发生。
这是工作流日志的内容:

2016-05-31 15:52:34,590 WARN 

org.apache.oozie.action.hadoop.HiveActionExecutor: 
SERVER[hadoop02] U
SER[scapp] 
GROUP[-] 
TOKEN[] 
APP[wf-sqoop-hive-agreement] 
JOB[0000001-160531143657136-oozie-oozi-W] 
ACTION[0000001-160531143657136-oozie-oozi-W@hive-query-agreement] Launcher 
ERROR, reason: Main class [org.apache.oozie.action.hadoop.HiveMain], exception invoking main(), Output data exceeds its limit [2048] 2016-05-31 15:52:34,591 

WARN org.apache.oozie.action.hadoop.HiveActionExecutor: 
SERVER[hadoop02] 
USER[scapp] 
GROUP[-] 
TOKEN[] 
APP[wf-sqoop-hive-agreement] 
JOB[0000001-160531143657136-oozie-oozi-W] 
ACTION[0000001-160531143657136-oozie-oozi-W@hive-query-agreement] 
Launcher exception: Output data exceeds its limit [2048] 
org.apache.oozie.action.hadoop.LauncherException: Output data exceeds its limit [2048]  
at org.apache.oozie.action.hadoop.LauncherMapper.getLocalFileContentStr(LauncherMapper.java:415)    
at org.apache.oozie.action.hadoop.LauncherMapper.handleActionData(LauncherMapper.java:391)  
at org.apache.oozie.action.hadoop.LauncherMapper.map(LauncherMapper.java:275) at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:54)  
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:453)  
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)   
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163)     
at java.security.AccessController.doPrivileged(Native Method)   
at javax.security.auth.Subject.doAs(Subject.java:415)   
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671)     
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
hpxqektj

hpxqektj1#

@我不认为属性表示它的大小(mb)。根据oozie-default.xml文件中的以下条目,大小以“字符”为单位,即字节。

<property>
     <name>oozie.action.max.output.data</name>
     <value>2048</value>
     <description>
         Max size in characters for output data.
     </description>
 </property>
9cbw7uwe

9cbw7uwe2#

它与下面的属性有关,您能为它增加值并重试吗?
oozie-default.xml文件

<property>
<name>oozie.action.max.output.data</name>
<value>XXXX</value>
</property>

ambari:在oozie服务配置->oozie.action.max.output.data=4096中添加这个
为了得到查询的结果,尽可能地增加这个值。当前结果超过2048b,请尝试将值加倍。

wdebmtf2

wdebmtf23#

我认为您的配置单元查询的执行会导致巨大的输出,并且不会被重定向到某个地方。
我建议select查询的输出应该放在hdfs的某个地方,因为您需要将select查询的输出重定向到一些外部/内部配置单元表。
参考:https://cwiki.apache.org/confluence/display/hive/languagemanual+dml#languagemanualdml-将数据从查询写入文件系统

4dbbbstv

4dbbbstv4#

我想你可能包括 <capture-output> 元素或工作流的任何其他操作。尝试从工作流中删除该元素,然后再次运行它。 <capture-output> 将保留ssh命令的标准输出,限制为2kib[2048字节]
你可以在这里了解更多

相关问题