内置日期和时间相关功能的时区火花处理

时间:2018-07-18 17:50:13

标签: apache-spark time apache-spark-sql

假设使用诸如current_timestamp()hour(),...之类的函数时,我有一个时间戳是从spark内部的minute() UDF获得的时间戳。如何指定时区?

我相信https://issues.apache.org/jira/browse/SPARK-18350引入了对此的支持。但是无法使其正常工作。类似于页面上的最后一条评论:

session.read.schema(mySchema)
            .json(path)
            .withColumn("year", year($"_time"))
            .withColumn("month", month($"_time"))
            .withColumn("day", dayofmonth($"_time"))
            .withColumn("hour", hour($"_time", $"_tz"))
     

看看小时函数的定义,它使用一个小时   可以使用可选的timeZoneId构造的表达式。一世   一直试图创建一个小时表达式,但这是   Spark内部构造-API禁止直接使用它。一世   猜想提供一个函数hour(t:Column,tz:Column)以及   现有的小时数(t:Column)不能令人满意。

我坚持尝试将特定时区传递给默认的内置时间UDF。

0 个答案:

没有答案