You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@storm.apache.org by Chen Junfeng <k-...@hotmail.com> on 2016/11/03 02:46:41 UTC

Storm serialization problem

In the Storm 1.0.2 serialization part, I found the following instruction:

“By default, Storm can serialize primitive types, strings, byte arrays, ArrayList, HashMap, HashSet, and the Clojure collection types. “

Does it mean if I send primitive type data such as String to next tuple, the data I send must be serialized by Storm? If yes, how is the efficient of serializing primitive comparing to serializing custom java class?

And I noticed “If Storm encounters a type for which it doesn't have a serialization registered, it will use Java serialization if possible”. Does that mean if I don’t set Kryo register in storm.yaml, Storm will use Java embedded serialization instead? If I don’t want to set Kryo register(after all setting storm.yaml and restarting every supervisor is not a light work), can I use the third part serialization tool like fastjson to serialize custom java entity class to string to improve efficiency?


Thank you
Junfeng Chen