0

我想读取相同数据集的 2 个 avro 文件,但具有模式演变

  1. 第一个 avro 文件架构:{String, String, Int}
  2. 第二个 avro 文件架构演变:{String, String, Long}

(Int 字段经过演化到 long)我想使用 sparkSQL 读取这两个 avro 文件以存储在数据框中。

要读取 avro 文件,我正在使用 databicks 的“spark-avro” https://github.com/databricks/spark-avro

如何有效地做到这一点。

Spark 版本:2.0.1 Scala。2.11.8

PS。这里在示例中我只提到了 2 个文件,但在实际场景中每天都会生成文件,因此有超过 1000 个这样的文件。

先感谢您:)

4

1 回答 1

0

使用类似的联合

{string,string, [int, long]} 

是您的有效解决方案吗?它应该允许读取新旧文件。

于 2017-08-11T03:27:05.980 回答