gpt4 book ai didi

hadoop - 在小型HDFS文件上长时间运行的 map task

转载 作者:行者123 更新时间:2023-12-02 20:13:50 25 4
gpt4 key购买 nike

假设有一个文本文件包含10000行的情况,因此将其保存在HDFS中时,它会很小。现在,您的目标是在此小文件上运行映射/归约作业,希望文本文件的每一行都传递给映射器。但是,每个映射k,v的处理时间很长,您想在集群上启动尽可能多的映射器,以获取最大可能的并行度,从而尽快完成映射作业。

因为文件很小,所以它只能保存在一个或两个hdfs块中,并且我假设hadoop为该作业准备的映射数将等于恰好是一两个的hdfs块数。但这是不希望的,因为您要启动尽可能多的映射器。这是我的问题吗?

  • 在为小文件处理的场景中,控制适当数量的映射器有哪些选择?
  • 每个可用选项的优缺点是什么?
  • 最佳答案

    最好的方法是使用NLineInputFormat。根据文档NLineInputFormat which splits N lines of input as one split。这种方法的缺点是丢失了数据局部性,因为数据很小,这无关紧要。

    关于hadoop - 在小型HDFS文件上长时间运行的 map task ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9105260/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com