Apache Spark 将事件计数放入时间戳桶
Apache Spark Counts of Events into Timestamp Buckets
我已将我的数据加载到 Spark 数据帧中,并正在使用 Spark SQL 进一步处理它。
我的问题很简单:
我有这样的数据:
Event_ID Time_Stamp
1 2018-04-11T20:20..
2 2018-04-11T20:20..+1
等等。
我想获取每 2 分钟发生的事件数。
所以,
我的输出将是:
Timestamp No_of_events
2018-04-11T20:20.. 2
2018-04-11T20:20..+2 3
在 Pandas 中很容易,但我不知道如何在 Spark 中做到这一点 SQL。
上述格式数据必须将时间戳作为一列,在该时间段内发生的事件数(即 b/w 时间戳和时间戳 + 2 分钟)作为另一列。
非常感谢任何帮助。
谢谢。
您可以尝试使用 window 函数:
df.groupBy(window(df["Time_Stamp"], "2 minutes"))
.count()
.show()
我已将我的数据加载到 Spark 数据帧中,并正在使用 Spark SQL 进一步处理它。
我的问题很简单:
我有这样的数据:
Event_ID Time_Stamp
1 2018-04-11T20:20..
2 2018-04-11T20:20..+1
等等。
我想获取每 2 分钟发生的事件数。
所以,
我的输出将是:
Timestamp No_of_events
2018-04-11T20:20.. 2
2018-04-11T20:20..+2 3
在 Pandas 中很容易,但我不知道如何在 Spark 中做到这一点 SQL。
上述格式数据必须将时间戳作为一列,在该时间段内发生的事件数(即 b/w 时间戳和时间戳 + 2 分钟)作为另一列。
非常感谢任何帮助。
谢谢。
您可以尝试使用 window 函数:
df.groupBy(window(df["Time_Stamp"], "2 minutes"))
.count()
.show()