Why do you serialize jsonelement? Can you parse it and create a java -bean representing data stored as json? What is inside your jsonelement?
2016-01-06 22:59 GMT+01:00 Kashyap Mhaisekar <[email protected]>: > Here it is - > > This is a class that encapsulates JsonElement (Doesnt implement > Serializable) - > class MyPrimitive { > *private JsonElement element;* > > public MyPrimitive(JsonElement element) { > this.element = element; > } > > public JsonElement getElement() { > return element; > } > > } > > Kryo getting created and called - > Kryo kryo = new Kryo(); > kryo.setInstantiatorStrategy(new StdInstantiatorStrategy()); //had to do > this as MyPrimitive does not implement //Serializable and has no default arg > > FieldSerializer<?> serializer = new FieldSerializer<MyFinal>(kryo, > MyPrimitive.class); > kryo.register(MyPrimitive.class, serializer); > > ByteArrayOutputStream stream = new ByteArrayOutputStream(); > Output output = new Output(stream); > kryo.writeObject(output, myPrimitive); > buffer = stream.toByteArray(); > output.close(); // Also calls output.flush() > > I now pass the buffer to another function as an argument and try to > deserialize there. > Kryo kryo = new Kryo(); > kryo.setInstantiatorStrategy(new StdInstantiatorStrategy()); //had to do > this as MyPrimitive does not implement //Serializable and has no default arg > FieldSerializer<?> serializer = new > FieldSerializer<MyFinal>(kryo, > MyPrimitive.class); > kryo.register(MyPrimitive.class, serializer); > // > * Input input = new Input(buffer);* > MyPrimitive myFinal2 = kryo.readObject(input, > MyPrimitive.class); > > > The time taken for kryo.readObject takes anywhere from 30 to 150 ms with > around 100ms being average. > > Thanks Serega. > > Kashyap > > On Wed, Jan 6, 2016 at 3:06 PM, Serega Sheypak <[email protected]> > wrote: > >> What are you trying to serialize/deserialize? >> You get out of json to java/groovy bean and serialize them using kryo. >> Can you provide code snippet? >> >> 2016-01-06 21:09 GMT+01:00 Kashyap Mhaisekar <[email protected]>: >> >>> It takes 100 ms to deserialize. So basically, serializing and >>> deserializing JsonElement (Which has no no-args constructor and does not >>> implement Serializable) takes 100 ms approx for deserialization. >>> >>> Thanks >>> Kashyap >>> >>> On Wed, Jan 6, 2016 at 1:41 PM, Serega Sheypak <[email protected] >>> > wrote: >>> >>>> Sounds weird, Kryo widely used. What do you mean by "slow"? >>>> >>>> 2016-01-05 22:22 GMT+01:00 Kashyap Mhaisekar <[email protected]>: >>>> >>>>> Serega, >>>>> Kryo has helped, but it is slow. thanks for the pointer. Will need to >>>>> look into this more. >>>>> >>>>> Thanks >>>>> Kashyap >>>>> On Jan 4, 2016 4:14 AM, "Serega Sheypak" <[email protected]> >>>>> wrote: >>>>> >>>>>> Why not to switch to Kryo serialization or any other advanced >>>>>> serializers? Express googling give nice example: >>>>>> http://henning.kropponline.de/2015/09/27/storm-serialization-with-avro-using-kryo-serializer/ >>>>>> >>>>>> 2016-01-04 5:29 GMT+01:00 Kashyap Mhaisekar <[email protected]>: >>>>>> >>>>>>> Hi, >>>>>>> I was trying out gson in Storm and find that parsing is slow for my >>>>>>> use case. This is not related to Storm per se, but I guess many of you >>>>>>> may >>>>>>> have experienced the use case below. If so, an interested in finding out >>>>>>> your approach. >>>>>>> >>>>>>> Thanks >>>>>>> Kashyap >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: "Kashyap Mhaisekar" <[email protected]> >>>>>>> Date: Jan 3, 2016 3:55 AM >>>>>>> Subject: [google-gson:2550]: JsonElement implements Serialization >>>>>>> To: "google-gson" <[email protected]> >>>>>>> Cc: >>>>>>> >>>>>>> Hi, >>>>>>> Is there any way the JsonElement (Specifically JsonPrimitive) can be >>>>>>> made serializable? I plan to persist the JsonPrimitive itself as an >>>>>>> object >>>>>>> in cache so that my further process is easier. Am presently seeing that >>>>>>> parsing strings each time is becoming expensive in my use case. >>>>>>> >>>>>>> Did anyone try and succeed to Serialize a JsonElement >>>>>>> (JsonPrimitive)? >>>>>>> >>>>>>> Please respond. >>>>>>> >>>>>>> Thanks >>>>>>> Kashyap >>>>>>> >>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "google-gson" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to [email protected]. >>>>>>> To post to this group, send email to [email protected]. >>>>>>> Visit this group at https://groups.google.com/group/google-gson. >>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>> >>>>>> >>>>>> >>>> >>> >> >
