Я отчаянно пытаюсь настроить экземпляры serializer для использования в моей топологии шторма.Как зарегистрировать экземпляры сериализатора крио в шторме?
шторма документации говорится, есть 2 способа регистрации сериализаторы:
1. The name of a class to register. In this case, Storm will use Kryo’s FieldsSerializer to serialize the class. This may or may not be optimal for the class – see the Kryo docs for more details. 2. A map from the name of a class to register to an implementation of com.esotericsoftware.kryo.Serializer.
Я хочу использовать 2. ->
Map<String, Object> serializerConfig = new HashMap<String, Object>(); serializerConfig.put(Record.class.getName(), new AvroSerializer(params)); conf.put(Config.TOPOLOGY_KRYO_REGISTER, serializerConfig);
К сожалению, это результаты в
Exception in thread "main" java.lang.IllegalArgumentException: Storm conf is not valid. Must be json-serializable
по представлению топологии.
Кто-нибудь знает, как это сделать (зарегистрировать экземпляры сериализатора)?
Большое спасибо
Как вы отправляете свою топологию? код. – Chiron
StormSubmitter.submitTopology (топологияName, conf, топология); – Patrick
Кстати, AvroSerializer - это моя собственная реализация (KryoSerializer) – Patrick