开发者社区> 问答> 正文

长尾是什么意思?

长尾是什么意思?

展开
收起
游客i2i5j3xkpqrwe 2023-12-04 22:05:00 60 0
3 条回答
写回答
取消 提交回答
  • 2023-12-05 16:19:43
    赞同 展开评论 打赏
  • 长尾问题是分布式计算里最常见的问题之一,也是典型的疑难杂症。究其原因,是因为数据分布不均,导致各个节点的工作量不同,整个任务就需要等最慢的节点完成才能完成。处理这类问题的思路就是把工作分给多个Worker去执行,而不是一个Worker单独抗下最重的那份工作。

    导致长尾的原因:某些 instance(可能是map, 也可能是reduce) 处理的数据量远远超过其他 instance 处理的数据量,这些instance的运行时长远远超过其他instance的平均运行时长,导致整个任务运行时间超长,造成任务延迟。
    image.png

    ——参考链接

    2023-12-05 00:37:53
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    长尾问题在分布式计算中非常常见,也是一个典型的疑难杂症。该问题的根本原因是数据分布不均,导致各个节点的工作量不同,整个任务就需要等待最慢的节点完成才能结束。处理长尾问题的一种有效方式是将工作分派给多个Worker进行执行,而不是让一个Worker单独承担最重的工作量。此外,如果遇到Join操作时出现某个Key里的数据特别多的情况,也可能出现长尾问题。在这种情况下,可以考虑使用Mapjoin对小表进行缓存以优化性能。

    2023-12-04 22:41:13
    赞同 展开评论 打赏
问答地址:
关联地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载