【发布时间】:2022-01-22 19:07:15
【问题描述】:
正如问题所说,我的目标是在 Scala(在 Spark 应用程序上)中创建以 每小时 间隔从某个时间戳到另一个时间戳定义的时间戳序列,然后将此序列转换为DataFrame。
比如下面两个时间戳
val start_ts = "2019-11-20 00:00:00"
val end_ts = "2019-11-25 23:00:00"
我想获得从start_ts 到end_ts 的所有时间的一列(Date)的输出DataFrame,即
Date
2019-11-20 00:00:00
2019-11-20 01:00:00
2019-11-20 02:00:00
...
2019-11-25 21:00:00
2019-11-25 22:00:00
2019-11-25 23:00:00
【问题讨论】:
-
那么...你尝试了什么?它看起来不是一个难题。困扰您的具体问题是什么?是将其分配给所有工作节点还是其他?
-
我的问题是我是 Scala 的新手,在文档中我没有找到在两个时间戳之间创建每小时间隔的函数
-
我使用 JodaTime 的旧答案可能会有所帮助。将
from和toDateTime实例和Period更改为一小时。然后将Iterator转换为DataFramestackoverflow.com/questions/17690739/… -
如果您使用的是 spark 2.4+,请检查内置函数:explode + sequence:spark.apache.org/docs/2.4.0/api/sql/index.html#sequence
标签: scala apache-spark date apache-spark-sql timestamp