【发布时间】:2019-10-30 10:47:11
【问题描述】:
x = df.withColumn("id_col", F.monotonically_increasing_id())
返回随机长整数而不是排序的整数enter image description here
【问题讨论】:
标签: python dataframe apache-spark pyspark
x = df.withColumn("id_col", F.monotonically_increasing_id())
返回随机长整数而不是排序的整数enter image description here
【问题讨论】:
标签: python dataframe apache-spark pyspark
您看到的是函数的预期行为。来自文档
生成的 ID 保证单调递增且 唯一的,但不是连续的。 当前实现将分区 ID 放在高 31 位,记录号 在每个分区的低 33 位中。假设数据框有 不到10亿个分区,每个分区不到80亿条记录
这就是您看到长随机整数的原因。它们可能不是连续的,但它们是递增的,并且出于所有实际目的,它们是独一无二的。
【讨论】: