【问题标题】:Dynamically calculating oozie parameter (number of reducers for MR action)动态计算oozie参数(MR动作的reducer数量)
【发布时间】:2021-09-21 18:53:48
【问题描述】:

在我的 oozie 工作流程中,我动态创建了一个配置单元表,比如 T1。然后这个 hive 操作之后是 map-reduce 操作。我想将减速器属性(mapred.reduce.tasks)的数量设置为等于字段(T1.group)的不同值。任何想法如何动态设置一些 oozie 参数的值以及如何从 hive distinct action 获取参数值到 oozie 参数?

【问题讨论】:

    标签: hadoop oozie


    【解决方案1】:

    我希望这可以帮助:

    1. 照常创建 hive 表。
    2. 执行另一个 Hive 查询,计算列的不同值并将其写入 hdfs 中的文件。
    3. 创建一个Shell 操作,它将读取文件并以key=value 的形式回显该值。为 shell 操作启用 capture-output
    4. 这是您的 MR 操作。现在使用 Oozie EL 函数访问动作数据。例如${wf:actionData('ShellAction')['key']},将此值传递给 MR 操作的 configuration 标记中的 mapred.reduce.tasks

    【讨论】:

    • 是否也可以将“密钥”作为参数传递?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-13
    • 1970-01-01
    • 2014-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多