我创建了一个新的avro数据文件并将记录写入其中。我也可以阅读记录,但我想更新一个特定的记录,你能帮我解决这个问题吗?我已经尝试了以下代码来更新记录,但它只是将其作为新记录附加
private void update(GenericRecord record) throws IOException {
Schema schema = getSchema();
DatumWriter<GenericRecord> writer = new GenericDatumWriter<GenericRecord>(
schema);
DataFileWriter<GenericRecord> dataFileWriter = new DataFileWriter<GenericRecord>(
writer);
dataFileWriter.appendTo(file);
dataFileWriter.close();
}
// call to update method
if(record.get("empId").toString().equals("123")) {
record.put("empDesg", "SSE");
update(record);
}