将一个数据帧的avro模式复制到另一个pyspark

将一个数据帧的avro模式复制到另一个pyspark,pyspark,spark-avro,Pyspark,Spark Avro,我有一个带有模式a的数据集a,也有一个带有模式B的数据集B。两个数据集a和B大多相似(有相同的列,但只有少数数据类型不同),但差异较小。数据集a中的一列有日期值('2020-08-03'表示为字符串数据类型),数据集B中的同一列表示为历元数(长)。现在我必须合并这两个数据集。如果我必须合并,我必须在这两个数据集中使用相同的数据类型 你能建议我怎么做吗?这可能吗?您必须使用sql函数来更改列类型。例如,您可以将字符串日期转换为unix时间戳: df.withColumn("date&qu

我有一个带有模式a的数据集a,也有一个带有模式B的数据集B。两个数据集a和B大多相似(有相同的列,但只有少数数据类型不同),但差异较小。数据集a中的一列有日期值('2020-08-03'表示为字符串数据类型),数据集B中的同一列表示为历元数(长)。现在我必须合并这两个数据集。如果我必须合并,我必须在这两个数据集中使用相同的数据类型


你能建议我怎么做吗?这可能吗?

您必须使用sql函数来更改列类型。例如,您可以将字符串日期转换为unix时间戳:

df.withColumn("date", unix_timestamp("date", "yyyy-MM-dd"))
然后,您可以对两个数据帧使用
union