Hi everyone,

I'd like to start a discussion of FLIP-538: Support Custom Generic Type 
Serializer [1].

Flink handles most common types efficiently with the built-in serializers and 
leaves the remaining to the generic type serializer Kryo in a hardcoded way. We 
propose supporting custom generic type serializers with two major motivations:

  1.
State-compatibility: Flink 2.0 upgraded Kryo from v2.24.0 to v5.6.2 with 
FLIP-317 [2], and hence dropped state compatibility with 1.x jobs that rely on 
Kryo v2.24.0. Users can copy the impl from previous Flink release for a smooth 
upgrade.

  2.
Performance: new serializer frameworks like Apache Fory [3] provides 3x speedup 
compared to Kryo by our internal testing. We also plan to cooperate with the 
Fory community to maintain an implementation under the Fory repo.

Looking forward to suggestions on it!

[1] 
https://cwiki.apache.org/confluence/display/FLINK/FLIP+538%3A+Support+Custom+Generic+Type+Serializer
[2] 
https://cwiki.apache.org/confluence/display/FLINK/FLIP-317%3A+Upgrade+Kryo+from+2.24.0+to+5.5.0
[3] https://fory.apache.org/

Best,
Zhanghao Chen

Reply via email to