Я ищу использование AVRO на hadoop. Но я обеспокоен сериализацией больших структур данных и тем, как добавлять методы в классы (data-).Как Apache AVRO сериализует (большие) данные-структуры
В примере (взято из http://blog.voidsearch.com/bigdata/apache-avro-in-practice/) показана модель пользователей facebook.
{
"namespace": "test.avro",
"name": "FacebookUser",
"type": "record",
"fields": [
{"name": "name", "type": "string"},
...,
{"name": "friends", "type": "array", "items": "FacebookUser"}
]
}
ли Avro сериализации полный социальный график facebookuser в этой модели?
[То есть, если я хочу, чтобы сериализовать один пользователь, не сериализации включают все эти друг и их друг и так далее?]
Если ответ да, то я предпочел бы хранить идентификаторы друзей вместо ссылок, чтобы искать в моем приложении, когда это необходимо. В этом случае я хотел бы иметь возможность добавить метод, который возвращает фактических друзей вместо ID.
Как я могу обернуть/продлить созданные классы AVRO для добавления методов?
(также добавить методы, которые возвращают, например, друг-счетчик)