zoukankan      html  css  js  c++  java
  • spark中groupByKey 和reduceByKey 的区别?

    在公司第二次写spark任务的时候,跑一小时的数据,大概4000万条客户端请求,因为使用了groupby统计客户端版本分布,结果任务先后出现了time out, out of memory异常(有时候成功,有时候失败)。

    学习笔记:

    他们都是要经过shuffle的,groupByKey在方法shuffle之间不会合并原样进行shuffle,。reduceByKey进行shuffle之前会先做合并,这样就减少了shuffle的io传送,所以效率高一点。

    我的spark任务每次跑4000万条数据,

    HDFS存的数据结构:
    versionCode,userId,url
    比如:10131,1001,/com/andy/login

    下面是我的真实数据进行groupby导致的问题,10131的应用版本,有2000多万的数据,10132只有几十万数据,导致在groupby的时候,有时候传输超时,有时候内存溢出。

    参考资料:

    https://blog.csdn.net/qq_38799155/article/details/80178022

  • 相关阅读:
    28完全背包+扩展欧几里得(包子凑数)
    HDU 3527 SPY
    POJ 3615 Cow Hurdles
    POJ 3620 Avoid The Lakes
    POJ 3036 Honeycomb Walk
    HDU 2352 Verdis Quo
    HDU 2368 Alfredo's Pizza Restaurant
    HDU 2700 Parity
    HDU 3763 CDs
    POJ 3279 Fliptile
  • 原文地址:https://www.cnblogs.com/mkl34367803/p/15717744.html
Copyright © 2011-2022 走看看