Sorry but I'm not really familiar about the interface. As far as I can see, it's mainly used in the DataSet API. Most of its implementations provide a TypeSerializer, like `DoubleValueSerializer`. That works the same way as a KryoSerializer or a customized serializer. So I suppose you don't have to use it.
On Sat, Nov 12, 2022 at 8:24 AM Davide Bolcioni via user < user@flink.apache.org> wrote: > Thanks, > On Thu, Nov 10, 2022 at 6:21 PM Gen Luo <luogen...@gmail.com> wrote > >> >> I suppose it would be fine. The only difference I can figure out that may >> matter is the serialization. Flink uses KryoSerializer as the fallback >> serializer if the TypeInformation of the records is not provided, which can >> properly process abstract classes. This works well in most cases. >> >> For better compatibility you may want to use a customized serializer. In >> such cases you can call SingleOutputStreamOperator#returns(TypeInformation) >> with your TypeInformation like: >> input.map(new MapToAnimal()).returns(new AnimalTypeInformation()) >> > > I noticed that implementing org.apache.flink.types.Value interface is > listed as an option for serialization, is that a superior alternative? Or > is it for the table API only ? Are there pros and cons ? > > Davide Bolcioni-- > There is no place like /home >