开发者社区 问答 正文

如何同时处理多个map任务的中间结果?

如何同时处理多个map任务的中间结果?

展开
收起
游客fbdr25iajcjto 2021-12-06 22:03:01 578 分享 版权
1 条回答
写回答
取消 提交回答
  • reduce任务的上游map任务可能有多个,根据之前的分析:

    知道这些中间结果的Block及数据缓存在ShuffleBlockFetcherIterator的results:new LinkedBlockingQueue[FetchResult]中。

    ShuffleBlockFetcherIterator作为迭代器,每次迭代ShuffleBlockFetcherIterator,会先从results:new LinkedBlockingQueue[FetchResult]中取出一个FetchResult,并构造此FetchResult的迭代器。

    2021-12-06 22:03:47
    赞同 展开评论
问答标签:
问答地址: