背景需求
在日常生产中,我们大多数时候都会用到flink的kafka connector,在使用过程中,大多数的程序员都会使用new SimpleStringSchema()来反序列化Kafka中的数据,然后使用alibaba提供的fastJson来解析数据
例如:
val jsonObject = JSON.parseObject(jsonStr)
val eventId = JSON.parseObject(jsonObject.getString("eventDetail")).getString("eventId")
val uuid_geek = JSON.parseObject(jsonObject.getString("eventDetail")).getString("uuid")
val poiIdArray = JSON.parseObject(jsonObject.getString("eventDetail")).getJSONArray("poiId")
虽然这样可以实现业务的需求,但一方面比较麻烦,另一方面是对于多字段的json数据,会把许多不必要的字段一起带出来,造成的效率减低。
解

本文介绍如何使用Flink的JSONKeyValueDeserializationSchema优化Kafka数据反序列化过程,避免手动解析JSON结构,提高处理效率。通过实例演示如何轻松获取JSON字段,即使面对不完整数据也能优雅处理。
最低0.47元/天 解锁文章
597

被折叠的 条评论
为什么被折叠?



