Ich suche AVRO auf Hadoop. Aber ich beschäftige mich mit der Serialisierung großer Datenstrukturen und dem Hinzufügen von Methoden zu den (Daten-) Klassen.Wie Apache AVRO serialisiert (große) Datenstrukturen
Das Beispiel (aus http://blog.voidsearch.com/bigdata/apache-avro-in-practice/ entnommen) zeigt ein Modell von Facebook-Benutzern.
{
"namespace": "test.avro",
"name": "FacebookUser",
"type": "record",
"fields": [
{"name": "name", "type": "string"},
...,
{"name": "friends", "type": "array", "items": "FacebookUser"}
]
}
Does avro serialize die komplette Social Graph eines facebookuser in diesem Modell?
[Das heißt, wenn ich einen Benutzer serialisieren möchten, hat die Serialisierung umfassen alle es Freunde und deren Freunde und so weiter?]
Wenn die Antwort ja ist, würde ich eher speichern IDs von Freunden anstelle von Referenzen, um bei Bedarf in meiner Anwendung nachzuschlagen. In diesem Fall würde ich gerne eine Methode hinzufügen können, die die tatsächlichen Freunde anstelle von IDs zurückgibt.
Wie kann ich generierte AVRO Java Klassen einbinden/erweitern, um Methoden hinzuzufügen?
(auch Methoden hinzufügen, die zum Beispiel Freund-Zählung zurück)