F.monotonically_increasing_id() 返回长随机数
Posted
技术标签:
【中文标题】F.monotonically_increasing_id() 返回长随机数【英文标题】:F.monotonically_increasing_id() returns long random [duplicate] 【发布时间】:2019-10-30 10:47:11 【问题描述】:x = df.withColumn("id_col", F.monotonically_increasing_id())
返回随机长整数而不是排序的整数enter image description here
【问题讨论】:
Using monotonically_increasing_id() for assigning row number to pyspark dataframe的可能重复 【参考方案1】:您看到的是函数的预期行为。来自文档
生成的 ID 保证单调递增且 唯一的,但不是连续的。 当前实现将分区 ID 放在高 31 位,记录号 在每个分区的低 33 位中。假设数据框有 不到10亿个分区,每个分区不到80亿条记录
这就是您看到长随机整数的原因。它们可能不是连续的,但它们是递增的,并且出于所有实际目的,它们是独一无二的。
【讨论】:
以上是关于F.monotonically_increasing_id() 返回长随机数的主要内容,如果未能解决你的问题,请参考以下文章