-
Notifications
You must be signed in to change notification settings - Fork 155
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add chill-avro for delegating serialization of avro objects #171
Comments
Motivation is that users of chill want to have Kryo serialization delegate to Avro's serialization. Because Avro objects aren't Java serializable, users have to add a generic version themselves every time. https://spark-project.atlassian.net/browse/SPARK-746 Beginnings of an implementation:
|
Some of the code in the above implementation can be abstracted by using avro-bijections |
so I looked into this a little bit more and it seems like the code above is completely redundant. We have Avro Injections for Both Generic and Specific Records and we also have InjectiveSerializer. We can replace all the code above with these few lines
and then you can register as
I have not compiled and tested this but I am pretty sure this will work |
This might fall under Spark now, but ideally you wouldn't have to register each avro class individually in that registerClasses() call. Is there some way to register all classes from Matt's example at once? The end goal would be to have it just work in Spark, no kryo.register() required from users of that framework, and I think that's possible if you can register all avro classes in one sweep. |
It should be possible to have something for IndexedRecord, which sits above both GenericRecord and SpecificRecord. I made something similar for cascading.avro but having it in Chill is a much better place. |
How can I use this stuff with Spark to load Avros? I can't find any kind of example. |
This isn't really for loading data from disk, its used for inflight data, On Tue, Jun 3, 2014 at 8:56 PM, Russell Jurney [email protected]
|
No description provided.
The text was updated successfully, but these errors were encountered: