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
>

Reply via email to