2つのAvroファイル(同じスキーマを持つ)を読み込んでSparkジョブ(CDH 5.5.1)を作成し、それらを結合してDataFrameを作成しますそれらをAvroに書き戻します。Avroへの書き込み時にSparkがスキーマを変更する
ジョブは、2つの入力スキーマを明示的に比較して、それらが同じであることを確認します。
これは、ファイルが不変であるため、既存のデータといくつかの更新を結合するために使用されます。その後、元のファイルをHDFSで名前を変更して新しい結合ファイルに置き換えます。
ただし、更新プロセスを繰り返すと(つまり、以前に更新されたファイルにさらに更新を加えようとすると)、スキーマが異なるため、ジョブは失敗します。何が起こっている?