You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by Joydeep Sen Sarma <js...@facebook.com> on 2009/02/10 03:35:15 UTC

protocol buffers

>From first looks - it's very much like thrift from an encoding perspective. Prefixes fields with fieldid's (so not very compact). It does use variable sized ints etc - so that's better than thrift.

http://code.google.com/apis/protocolbuffers/docs/encoding.html

I looked at the generated code and the base classes. Boy - it looks way more heavyweight than Thrift stack (reading/writing every field is a lookup in a hashmap and everything is done via reflection) - and it's clearly not intended for lazy deserialization (just like Thrift).


David Philips had mentioned that he thought protocol buffers supported lazy deserialization. But based on this - it doesn't seem so.

We should look elsewhere for good serialization format for database type usage (scary that google claims that this is used to store large amounts of  persistent data internally. Or maybe they didn't release all the code).

Joydeep