使用Hive Activity
运行一个AWS Data Pipeline
时,我的Hive活动失败并出现以下错误:
Diagnostics: Container [pid=,containerID=] is running beyond physical memory limits.
Current usage: 1.0 GB of 1 GB physical memory used;
2.8 GB of 5 GB virtual memory used. Killing container.
当我运行由Hive Activity手动执行的Hive脚本时,我必须执行它,如下所示:
hive \
-hiveconf tez.am.resource.memory.mb=16000 \
-hiveconf mapreduce.map.memory.mb=10240 \
-hiveconf mapreduce.map.java.opts=-Xmx8192m \
-hiveconf mapreduce.reduce.memory.mb=10240 \
-hiveconf mapreduce.reduce.java.opts=-Xmx8192m \
-hiveconf hive.exec.parallel=true
-f <hive script file path.>
通过这些设置,Hive脚本可以完美地执行。
现在问题是如何将这些设置传递给AWS数据管道的Hive Activity?我似乎无法找到将-hiveconf
传递给Hive活动的任何方法。
答案 0 :(得分:1)
您如何在DataPipeline中调用您的配置单元脚本? 如果您使用ShellCommandActivity,您应该能够像在命令行上那样传递这些-hiveconf,它应该可以正常运行。