使用spark或flink时,hdfs上的位置感知是如何实现的?

vwoqyblh  于 2021-06-24  发布在  Flink
关注(0)|答案(1)|浏览(413)

我想知道spark或flink执行引擎(主调度器)如何为每个块找到合适的worker。
namenode将能够告诉他们区块的确切位置,但这项任务是由spark和flink的作业经理完成的,还是这是Yarn发挥作用的地方?

syqv5f0l

syqv5f0l1#

我只能替Flink说。这个 JobManager 从请求块信息 HDFS Namenode 并计算块任务分配。首先,将本地块分配给每个 TaskManger (商标)。如果一个tm没有任何本地块,它就会分配远程块。如果没有任何本地块可用,所有剩余的块将均匀地分配给所有的tms(以获得良好的负载平衡)。

相关问题