Quantcast
Channel: Custom serialization in Apache Storm - Stack Overflow
Viewing all articles
Browse latest Browse all 3

Custom serialization in Apache Storm

$
0
0

I try to add custom serializer for my Objects which is used in Apache Storm Spouts/Bolts. Right now my code looks like that:

conf.registerSerialization(MyService.class, MyKryoSerializer.class);

public class MyKryoSerializer extends Serializer<MyService> {

    public MyKryoSerializer() {
        System.out.println("New MyKryoSerializaer!");
    }

    @Override
    public void write(Kryo kryo, Output output, MyService service) {
        System.out.println(72);
    }

    @Override
    public MyService read(Kryo kryo, Input input, Class<MyService> aClass) {
        System.out.println(73);
        return null;
    }

    public MyService copy(Kryo kryo, MyService myService) {
        System.out.println("MyService!");
        return myService;
    }
}

public class MyRandomSpout extends BaseRichSpout {

    private MyService service;

    private SpoutOutputCollector collector;

...

So, when I try to start Storm topology on my local cluster I will see "New MyKryoSerializaer!" in stdout, so constructor is called, but write/read methods are not called. Could anybody tell me, what do I wrong? Does Storm support Skyo serializer for spots/bolts serialization?


Viewing all articles
Browse latest Browse all 3

Latest Images

Trending Articles





Latest Images