当我在位于伦敦时区的一组机器上提交作业时,仪表板上的Spark Master具有正确的时间,但历史服务器的仪表板显示的时间是提前1小时,即GMT。有没有办法在Apache Spark中解决这个问题?
答案 0 :(得分:1)
您的日志时间戳最有可能没有错误"时区,但要么您的火花群位于GMT中,要么将conf设置为:
spark.conf.set("spark.sql.session.timeZone", "GMT")
将此行明确更改为伦敦时区(BST?)
或者使用花哨的from_utc_timestamp函数,它允许您在转换ts时指定时区
同时检查你的ts是否以毫秒为单位,并在JVM中设置-Duser.timezone配置spark.executor.extraJavaOptions