Hadoop 关于oozie启动器作业的澄清
我需要一些关于oozie启动器工作的澄清 1) 启动程序作业是按每个工作流应用程序(有多个操作)启动的,还是按工作流应用程序中的每个操作启动的 2) 用例:我有包含多个Hadoop 关于oozie启动器作业的澄清,hadoop,oozie,Hadoop,Oozie,我需要一些关于oozie启动器工作的澄清 1) 启动程序作业是按每个工作流应用程序(有多个操作)启动的,还是按工作流应用程序中的每个操作启动的 2) 用例:我有包含多个shell操作(内部执行spark、hive、pig操作等)的工作流。使用shell的原因是,可以使用自定义逻辑计算分区日期等附加参数,并使用.q文件将其传递给配置单元 示例Shell文件: hive -hiveconf DATABASE_NAME=$1 -hiveconf MASTER_TABLE_NAME=$2 -hiveco
shell
操作(内部执行spark、hive、pig操作等)的工作流。使用shell
的原因是,可以使用自定义逻辑计算分区日期等附加参数,并使用.q文件将其传递给配置单元
示例Shell文件:
hive -hiveconf DATABASE_NAME=$1 -hiveconf MASTER_TABLE_NAME=$2 -hiveconf SOURCE_TABLE_NAME=$3 -hiveconf -f $4
示例.q文件:
use ${hiveconf:DATABASE_NAME};
insert overwrite into table ${hiveconf:MASTER_TABLE_NAME} select * from ${hiveconf:SOURCE_TABLE_NAME};
我将oozie.launcher.mapreduce.job.queuename
和mapreduce.job.queuename
设置为不同的队列,以避免单个队列中的任务槽不足。我还在相应的shell
操作中省略了
。但是,我仍然看到启动器作业占用了启动器队列中的大量内存
- 这是因为启动器作业缓存来自配置单元的日志输出吗
- 当以我的方式执行shell操作时,是否有必要给启动器作业足够的内存
- 如果显式限制启动器作业内存,会发生什么情况
我强烈建议您分别使用oozie actions、Hive、Pig等,因为它可以让oozie更好地处理您的工作流程和操作。感谢您的回复。你能详细说明一下怎样做更好吗?我的意思是,除了需要在shell操作中显式设置的配置(可能是oozie.hive.defaults等属性)之外,从线程队列内存消耗的角度来看,还有什么好处吗?谢谢您的回复。你能详细说明一下怎样做更好吗?我的意思是,除了需要在shell操作中显式设置的配置(可能是oozie.hive.defaults等属性)之外,从线程队列内存消耗的角度来看,还有什么好处吗?