我在看是否有“已经实施的替代方案”
append
spark数据集上的唯一ID。
我的方案:
我有一个每天处理一批信息的增量作业。在此作业中,我创建了一个维度表
something
并使用为每行分配唯一ID
monotonically_increasing_id()
. 第二天,我想在上面附加一些行
某物
表,并希望为这些行生成唯一ID。
例子:
第1天:
something_table
uniqueID name
100001 A
100002 B
第2天:
something_table
uniqueId name
100001 A
100002 B
100003 C -- new data that must be created on day 2
第1天的Sniped代码:
case class BasicSomething(name: String)
case class SomethingTable(id: Long, name: String)
val ds: Dataset[BasicSomething] = spark.createDataset(Seq(BasicSomething("A"), BasicSomething("B")))
ds.withColumn("uniqueId", monotonically_increasing_id())
.as[SomethingTable]
.write.csv("something")
我不知道如何保持状态
单调\u递增\u id()
在某种程度上,第二天它将从
something_table
唯一id。