leonardBang / flink-sql-etl

Using Flink SQL to build ETL job
200 stars 129 forks source link

CDC数据的存放 #2

Open yang-Reck opened 4 years ago

yang-Reck commented 4 years ago

hello Leonard: 1、CDC数据中如果存在一些非常规数据,比如较大的图片,文本,甚至有些图片能有上百兆,那么这类数据在kafka上传输时候,怎么处理其数据格式及其存储方式?

2、因为kafka本身定位不是用来持久化存储数据的,那么对于cdc数据的存放(下游sink可能存在复用或者数据订阅)是怎么处理的?

leonardBang commented 4 years ago

(1)可以存成binary,如果需要在 Flink 中使用就自定义序列化/反序列化解析器处理 (2)这个应该是架构设计里有消息队列的通用问题,比较偏业务架构,我理解 cdc数据就应该是存在 queue 里,如果 queque 里的数据不能持久化过久(比如7天过期),那下游再次消费就应该用一个新的 queue.

yang-Reck commented 4 years ago

存成binary是一种方式,同时也存在消息体过大,从而使kafka的性能从而带来的影响。这一点上pulsar中的bookkeeper相当于把MQ拆分成两部分