标签: python apache-spark pyspark
请考虑以下情形: 每天都会将增量数据摄取到HDFS位置,然后我必须从那里使用pyspark读取数据并找出最新/活动记录。 另外,由于可能会添加新字段,因此我必须处理数据中的架构更改。
如何在pyspark中实现模式比较并处理模式更改? 如何处理架构更改之前已加载的数据?
以下方法是一种好方法吗?
答案 0 :(得分:0)
以下是一些针对您的案例的建议,假设您需要将旧数据与新摄取的数据合并,然后将其保存回HDFS:
StructType.fromDDL(prev_schema)
StructType
如果,另一方面,您需要存储历史数据,那么我会选择一种支持架构演进的存储格式,例如Parquet或AVRO,第一种更适合您的情况,因为它可以提供更好的性能。