Ich habe ein JSON-Dokument, das ich in Avro konvertieren möchte und ein Schema für diesen Zweck benötigt. Hier ist das JSON-Dokument, für das Ich mag würde das Avro-Schema definieren:Wie definiert man AVRO-Schema für ein komplexes JSON-Dokument?
{
"uid": 29153333,
"somefield": "somevalue",
"options": [
{
"item1_lvl2": "a",
"item2_lvl2": [
{
"item1_lvl3": "x1",
"item2_lvl3": "y1"
},
{
"item1_lvl3": "x2",
"item2_lvl3": "y2"
}
]
}
]
}
Ich bin in der Lage, das Schema für die nicht-komplexen Typen zu definieren, aber nicht für die komplexen „Optionen“ Feld:
{
"namespace" : "my.com.ns",
"type" : "record",
"fields" : [
{"name": "uid", "type": "int"},
{"name": "somefield", "type": "string"}
{"name": "options", "type": .....}
]
}
Danke für die Hilfe!
> in der richtigen Reihenfolge Auf einer Verschachtelungsebene kümmert sich Avro nicht um die Feldreihenfolge. Auf die Felder wird während der Deserialisierung basierend auf dem Schema, das der Leser kennt, durch Namen zugegriffen. – DandyDev
Mit "in der richtigen Reihenfolge" meinte ich in entsprechender hierarchischer Reihenfolge. Ich habe diese irreführende Phrase entfernt. –