美文网首页
Spark 广播join 与 Hive map join

Spark 广播join 与 Hive map join

作者: Eqo | 来源:发表于2022-06-12 21:33 被阅读0次

    Sprak 广播变量


    image.png

    广播变量(Broadcast Variables)允许开发人员在每个节点(Worker or Executor)缓存只读变量,而不是在Task之间传递这些变量。调用sc.broadcast(v)创建一个广播变量,该广播变量的值封装在v变量中,可使用获取该变量value的方法进行访问。

    原理 将小表的数据 广播到每个executor 所在的内存当中, 每个executor内可能有多个task,但是只存在一个小表的数据

    image.png

    Hive 对 大表和小表join的优化 就会走Map join
    每个block 就是一个task任务
    原理 将小表数据 先读到每个task 任务所在的内存当中,有几个task 就有几个 bkl

    相关文章

      网友评论

          本文标题:Spark 广播join 与 Hive map join

          本文链接:https://www.haomeiwen.com/subject/gqrnmrtx.html