我有类似的代码
ParquetWriter<Record> writer = getParquetWriter("s3a://my_bucket/my_object_path.snappy.parquet");
for (Record r : someIterable) {
validate(r);
writer.write()
}
writer.close();
如果validate
抛出异常,我想释放与作者关联的所有资源。但在这种情况下,我不想在 S3 中创建任何对象。这是可以实现的吗?
如果我关闭编写器,它将结束 s3 分段上传并在云中创建一个对象。如果我不关闭它,到目前为止写入的部分将保留在磁盘缓冲区中,从而阻塞工作。