Я использую Scala 2.12 и импортировал необходимые библиотеки для "org.apache.avro".
Я хочу создать схему (и, следовательно, требуемый класс дел) на основе данных примера. На основе этой схемы я могу преобразовать реальные данные и сопоставить их с соответствующей схемой AVRO, а также преобразовать запись в AVRO и отправить ее по соответствующей теме Kafka.
В моей схеме есть несколько значений атрибутов: null (AVRO null).
Пример данных:
{
"header":{
"messageId":"mysys_20181130163429809_00000001",
"businessId":"mysys_BookLevel_Daily_Regular_20181130_BOOK",
"batchId":"01_20181130_8271",
"sourceSystem":"mysys",
"secondarySourceSystem":null,
"sourceSystemCreationTimestamp":1532637269809,
"sentBy":"mysys",
"sentTo":"SA",
"messageType":"PnLMessage",
"schemaVersion":"1.11PnL-SNAPSHOT",
"processing":"RealTime",
"recordOffset":null
},
"pnlData":{
"pnlHeader":{
"granularity":"BookLevel",
"pnlType":"Daily",
"pnlSubType":"Regular,
"businessDate":"2018-11-30",
"bookId":"1234",
"bookDescription":"BOOK",
"pnlStatus":"Locked"
},
"pnlBreakDown":{
"category":null,
"subCategory":null,
"riskCategory":null,
"pnlCurrency":USD,
"pnlDetails":[
"pnlLocalAmount":100.46
"pnlCDEAmount":150.69
]
}
}
}
Я могу попытаться создать свой класс дел на основе вышеизложенного, НО я смотрю, есть ли у нас что-нибудь, что я могу использовать для создания схемы по библиотекам и сохранения ее в виде файла .avsc и использования в проекте.
Также основная часть - как перевести SCALA None или null в AVRO NULL?