不懂就问:跟据官网说明算的 StorageMemory 和 SparkUI 显示的对不上 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
heyyyy
V2EX    问与答

不懂就问:跟据官网说明算的 StorageMemory 和 SparkUI 显示的对不上

  •  
  •   heyyyy 2022-03-25 17:21:20 +08:00 1757 次点击
    这是一个创建于 1351 天前的主题,其中的信息可能已经有所发展或是发生改变。

    按照官网的说明:

    • spark.executor.memory 默认值:1g
    • spark.memory.fraction 默认值:0.6
    • spark.memory.storageFraction 默认值:0.5

    storageMemory = 1g * 0.6 * 0.5 = 217m, 但是 sparkUI 上显示的是 2GiB.

    网上有些文档记录了这个情况,理解可能原因有以下几个:

    • jvm 可用的最大内存比 spark.executor.memory 小,这项排除,程序中 jvm 可用内存是 3g+。
    • sparkUI 页面的单位换算有 bug,字节换算到 GB 的时候用的是 1000 而不是 1024 ,这项排除,我的 spark 版本是 3.0.0, 这个问题已经被修复: https://issues.apache.org/jira/browse/SPARK-25696
    • 堆外内存被开启使用:spark.memory.offHeap.enabled=true,这项排除,因为默认情况下是关闭的,我没有在 sparkSession 中开启。
    7 条回复    2022-03-25 22:44:50 +08:00
    heyyyy
        1
    heyyyy  
    OP
       2022-03-25 17:33:58 +08:00
    更正一下:storageMemory = (1g-300m) * 0.6 * 0.5 = 217m
    disk
        2
    disk  
       2022-03-25 19:12:26 +08:00
    你这算的有问题,storageMemory < (1g-300m) * 0.6 ,和 spark.memory.storageFraction 没关系。我在 3.2 上是正常的,你看下 Memory per Executor 是不是正确。
    heyyyy
        3
    heyyyy  
    OP
       2022-03-25 19:53:13 +08:00
    @disk (1g-300m) * 0.6 得到的是包括 ExecutionMemory 和 StorageMemory 的内存大小。
    disk
        4
    disk  
       2022-03-25 20:07:42 +08:00   1
    @heyyyy 对的,ExecutionMemory 和 StorageMemory 是共享内存的,spark.memory.storageFraction 只决定其中最大不可驱逐缓存的比例,和实际的 StorageMemory 没有关系。
    heyyyy
        5
    heyyyy  
    OP
       2022-03-25 21:14:44 +08:00
    @disk 谢谢大佬,client 模式下,sparkConf 中的 spark.executor.memory 不会生效,因为执行到那行的时候 jvm 已经启动过了。我的 jvm 参数是-Xmx4g ,spark 拿到的是 3.6g ,减去 ReservedMemory 的 300m 再乘以 0.6 跟 sparkUI 是一致的。
    inkerer
        6
    tinkerer  
       2022-03-25 21:28:09 +08:00
    跟踞 > 根据
    disk
        7
    disk  
       2022-03-25 22:44:50 +08:00
    @heyyyy client 模式下,也可以通过 sparkConf 的 spark.executor.memory 设置内存,但是 SparkContext 如果已经创建则设置不会生效。-Xmx 只是设置 spark 节点的内存,worker 内存和 executor 内存各有一套设置。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     862 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 21:53 PVG 05:53 LAX 13:53 JFK 16:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86