【发布时间】:2023-01-24 02:26:03
【问题描述】:
从 name 列增量派生 ID,如果有新值添加到该 name 列,则在下一次加载时分配尚未分配给先前数据的需要 ID
示例 - 第一次加载:
| Name |
|---|
| a |
| b |
| b |
| a |
结果
| ID | Name |
|---|---|
| 1 | a |
| 2 | b |
| 2 | b |
| 1 | a |
下一个负载:
| Name |
|---|
| a |
| b |
| b |
| a |
| c |
| d |
| c |
结果:
| ID | Name |
|---|---|
| 1 | a |
| 2 | b |
| 2 | b |
| 1 | a |
| 3 | c |
| 4 | d |
| 3 | c |
如问题所述,在 PySpark 中寻找解决方案
【问题讨论】:
-
如果下一次加载有重复的名称怎么办,例如又是“a”、“b”?
-
由于 'a' 和 'b' 已经分配了 ID,因此下一次加载时它也会获得相同的 ID
标签: pyspark apache-spark-sql user-defined-functions