web-dev-qa-db-ja.com

既存の寄木細工のファイルにデータを追加する方法

次のコードを使用して、ParquetWriterを作成し、それにレコードを書き込みます。

ParquetWriter<GenericRecord> parquetWriter = new ParquetWriter(path, writeSupport, CompressionCodecName.SNAPPY, BLOCK_SIZE, PAGE_SIZE);

final GenericRecord record = new GenericData.Record(avroSchema);

parquetWriter.write(record);

しかし、それは(指定されたパスで)新しいファイルを作成することのみを許可します。既存の寄木細工のファイル(パス)にデータを追加する方法はありますか?私の場合、parquetWriterをキャッシュすることはできません。

9
Krishas

Spark追加と呼ばれるAPI SaveModeがあります: https://spark.Apache.org/docs/1.4.0/api/Java/org/Apache/spark/sql/ SaveMode.html これで問題が解決すると思います。

使用例:

df.write.mode('append').parquet('parquet_data_file')
4
bluszcz