gpt4 book ai didi

hadoop - 关于 Hadoop 中的局部性问题和 block 管理

转载 作者:行者123 更新时间:2023-12-02 21:53:09 24 4
gpt4 key购买 nike

我一直在做我的毕业设计,我们正在尝试的主题
实现是在 Hadoop 上进行一些图像搜索。我们正在使用 OpenCV 库
图像处理。到目前为止,我们已经得到了一个可以工作的原型(prototype),但是效率
不符合我们的预期。

现在我们希望确保我们的映射作业正确分配给数据所在的从节点。(即,我们希望分配给该节点的作业仅处理确切节点上的 block )并且据我了解,这意味着我需要知道我的数据的每个 block 的下落,以及关于 block 的一些其他信息。(例如,哪个 block 分配给哪个从节点......等等)我在 Http 管理界面上找到了一些信息。(使用端口 50030 的那个默认)
但这还不够,收集我需要的信息也很耗时。那么,有什么办法可以看到这些信息呢?任何日志文件或 API?

而且,如果我们对 Hadoop 调度程序分配任务的方式不满意,有没有办法干扰每个单独 block 的分配方式?或者 Hadoop 如何拆分输入?我知道手动完成最初由调度程序完成的所有工作将是一场噩梦,但我希望将此作为我们最后的手段。

使长话短说,

  • 我可以通过 Hadoop 的 Logs/API 获取任何 block 级信息吗?比如有多少 block , block 的位置……等等,jobtracker的Http接口(interface)上的信息是不够的。
  • 有没有办法干扰作业分配、 block 分配以及 Hadoop 拆分输入的方式?

  • 提前致谢。

    最佳答案

  • 您可以通过代码或命令行获取 block / block 信息。见 How to check the distributed data over hdfs用于命令行信息。
  • 是的,可能有。您可以覆盖 InputSplit/RecordReader修改输入的拆分方式,但您可能无法轻松地完成您想要的操作。
  • 关于hadoop - 关于 Hadoop 中的局部性问题和 block 管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18210560/

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