因為在Flink 1.10中,目前的任務開發對用戶來說還是不夠友好,需要大量代碼,也會造成Flink SQL冗長。
Flink 1.12 SQL連接器支持Kafka Upsert連接器,這也是我們內部業務對實時平臺的需求。
好處:方便用戶有這種需要從kafka獲取最新記錄的實時任務開發,比如這個binlog->;卡夫卡,然後用戶聚合運營。這樣的場景還有很多,可以提高實時作業開發的效率。同時優化了1.12,性能會比單純的last_value性能更好。
k8s上Flink紗線作業的生產水平能力為:
Flinkjar作業已經全部k8 size化,Flink SQL作業因為處於普及初期,還在Yarn上運行,為了讓實時計算Flink Jar全部k8 size化。
所以我們的Flink SQL操作也需要遷移到K8s。目前Flink 1.12在生產層面已經滿足了Flink k8s的功能,所以改Flink SQL K8s,打算直接使用社區的On k8s能力。
風險:雖然和社區裏的人交流沒什麽問題,k8s上的Flink 1.12,具體功能需要先POC驗證,社區裏k8s上的Flink的能力或許可以。
可能會限制我們這邊壹些k8s功能的使用,比如hostpath volome和Ingress的使用。這裏,可能有必要更改底層源代碼以獲得快速支持(社區已經聯系了JIRA)。