Есть ли способ изменить два Avro GenericRecords в Java, чтобы получить только те поля и значения, которые изменились? - PullRequest
0 голосов
/ 30 мая 2019

Я хотел бы написать код Java для сравнения двух GenericRecords, сохраненных в памяти, оба с одинаковой схемой.Я не смог найти ни библиотек, ни Apache Avro Javadoc о том, как это сделать.

Мое желание - быть настолько эффективным, насколько это возможно, и преобразование GenericRecords в JSON, затем их диффузия, а затем преобразование JSON обратно в GenericRecord было бы нежелательным, если только это не единственный вариант, который существует.

protected GenericRecord generateDeltaFieldsOnly(GenericRecord storedRecord, GenericRecord newRecord) 
{

    ObjectMapper objectMapper = new ObjectMapper();
    JsonNode storedRecordJson = objectMapper.readTree(storedRecord.toString());
    JsonNode newRecordJson = objectMapper.readTree(newRecord.toString());

}
...