zoukankan      html  css  js  c++  java
  • spark history-server的使用

    为什么需要historyServer?

            在运行Spark Application的时候,Spark会提供一个WEBUI列出应用程序的运行时信息;但该WEBUI随着Application的完成(成功/失败)而关闭,也就是说,Spark Application运行完(成功/失败)后,将无法查看Application的历史记录。

            Spark history Server就是为了应对这种情况而产生的,通过配置可以在Application执行的过程中记录下了日志事件信息,那么在Application执行结束后,WEBUI就能重新渲染生成UI界面展现出该Application在执行过程中的运行时信息。


    historyServer需要在spark-defaults.conf中开启(如果log存于hdfs上,则需先开启hdfs)

    设置spark.eventLog.enabled为 true并且设置记录spark事件的目录:

    spark.eventLog.dir表示存放spark事件的地址,可以存在hdfs也可以存在本地file上



         同时还要在spark-env.sh中配置读取spark事件目录地址

         其中spark.history.ui.port是web UI端口 默认为18080,spark.history.retainedApplications是存放个内存中的日志个数(官网说明和源码中的说明有出入,以源码为准),spark.history.fs.logDirectory是读取spark事件的地址。




        其余配置信息可以去spark官网查看。


    最后在spark/sbin下执行start-history-server.sh          默认端口为18080

        启动后如图所示:

        


    存放spark事件的目录(我存在hdfs中),其中有你的环境变量信息,spark版本号等信息



    historyServer界面,里面有app运行的详细信息(GC,shuffle,task运行的详细信息等)



            Tip1:driver在SparkContext使用stop()方法后才将完整的信息提交到指定的目录,如果不使用stop()方法,即使在指定目录中产生该应用程序的目录,history server也将不会加载该应用程序的运行信息。在最后加上一行sc.stop()后,就可以显示。

            Tip2:以spark.history开头的需要配置在spark-env.sh中的SPARK_HISTORY_OPTS,以spark.eventLog开头的配置在spark-defaults.conf。


          


  • 相关阅读:
    《计算机网络 自顶向下方法》整理(二)应用层
    《计算机网络 自顶向下方法》整理(一)计算机网络和因特网
    《深入理解C#》整理10-使用async/await进行异步编程
    STM32 HAL库之串口详细篇
    .Net微服务实战之负载均衡(下)
    面试官:来,年轻人!请手撸5种常见限流算法!
    工具用的好,下班回家早!iTerm2使用技巧指北!
    Java编程规范(命名规则)
    Go语言快速安装手册
    Educational Codeforces Round 6 620E. New Year Tree(DFS序+线段树)
  • 原文地址:https://www.cnblogs.com/xiaomaohai/p/6158071.html
Copyright © 2011-2022 走看看