Then you're probably best of using the confluent schema registry, you can
then use the io.confluent.kafka.serializers.KafkaAvroDeserializer for the
client with KafkaAvroDeserializerConfig.SPECIFIC_AVRO_READER_CONFIG="true" to
get back the object, deserialized with the same version of the schema the
object was sent with.

On Tue, May 3, 2016 at 12:06 PM Ratha v <vijayara...@gmail.com> wrote:

> I plan to use different topics for each type of object. (number of object
> types= number of topics)..
> So, I need deserializers/serializers= topics = number of objects.
>
> What would be the better way to achieve this?
>
> On 3 May 2016 at 18:20, Gerard Klijs <gerard.kl...@dizzit.com> wrote:
>
> > If you put them in one topic, you will need one
> > 'master' serializer/deserializers which can handle all the formats.
> > I don't know how you would like to use Avro schemas, the confluent schema
> > registry is by default configured to handle one schema at a time for one
> > topic, but you could configure it to use multiple non-compatible schema's
> > in one topic. Each object will be saved with a schema id, making it
> > possible to get back the original object.
> >
> > On Tue, May 3, 2016 at 1:52 AM Ratha v <vijayara...@gmail.com> wrote:
> >
> > > What is the best way for this? Do we need to have common
> > > serializer/deserializer for all type of the objects we publish? OR
> > seperate
> > > for each objects?
> > > If we have seperate serializer/deserializers, then how can I configure
> > > kafka?
> > > Or Is it recommended to use Avro schemas?
> > >
> > > Thanks
> > >
> > > On 2 May 2016 at 18:43, Gerard Klijs <gerard.kl...@dizzit.com> wrote:
> > >
> > > > I think by design it would be better to put different kind of
> messages
> > > in a
> > > > different topic. But if you would want to mix you can make your own
> > > > serializer/deserializer you could append a 'magic byte' to the byes
> you
> > > get
> > > > after you serialize, to be able to deserialize using the correct
> > methods.
> > > > The custom serializer would always return an Object, which you could
> > cast
> > > > when needed in the poll loop of the consumer. I think this is de
> > > > cleanest/best way, but maybe someone has a different idea?
> > > >
> > > > On Mon, May 2, 2016 at 7:54 AM Ratha v <vijayara...@gmail.com>
> wrote:
> > > >
> > > > > Hi all;
> > > > >
> > > > > Say, I publish and consume different type of java objects.For each
> I
> > > have
> > > > > to define own serializer implementations. How can we provide all
> > > > > implementations in the kafka consumer/producer properties file
> under
> > > the
> > > > > "serializer.class" property?
> > > > >
> > > > >
> > > > > --
> > > > > -Ratha
> > > > > http://vvratha.blogspot.com/
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > -Ratha
> > > http://vvratha.blogspot.com/
> > >
> >
>
>
>
> --
> -Ratha
> http://vvratha.blogspot.com/
>

Reply via email to