Dataframe 如何创建具有递增时间戳列的数据帧?

Dataframe 如何创建具有递增时间戳列的数据帧?,dataframe,pyspark,Dataframe,Pyspark,我可以在数据帧列中插入timestamp。但是我希望timestamp列是唯一的值(或者本质上增加,甚至增加毫秒)。我现在拥有的- from datetime import datetime from pyspark.sql.functions import lit df = spark.createDataFrame(["10","11","13"], "string").toDF("age") df = df.withColumn("ts", lit(datetime.now())) dis

我可以在数据帧列中插入
timestamp
。但是我希望
timestamp
列是唯一的值(或者本质上增加,甚至增加毫秒)。我现在拥有的-

from datetime import datetime
from pyspark.sql.functions import lit
df = spark.createDataFrame(["10","11","13"], "string").toDF("age")
df = df.withColumn("ts", lit(datetime.now()))
display(df)

您无法获得每行的时间戳,该时间戳在数据帧上是唯一的,具体取决于Spark处理该行的时间,因为数据是分布式的,因此您永远无法控制该行的处理时间。也就是说:

  • 如果希望将当前时间戳添加为列,则使用
    pyspark.sql.functions.current\u timestamp
    可以获得更好的里程

  • 如果需要提供递增索引的列,请使用