Hi. 1. 当初的设计是一个较为保守的设计,其主要目的就是为了能够补全delete消息; 2. 核心类是 StreamExecChangelogNormalize[1] 3. 是的。目前 Upsert-kafka 要求具有相同key的数据在相同 partition 的。因为 kafka 仅保证 partiiton 内按 offset 读取,如果相同 key 的数据分布在不同 partition 的话,那么读取会乱序。 4. 当数据进入到具体的算子的时候并不会区别数据是来自什么connector的。如果 left, right 的 paritition 策略不一致,会shuffle的。
请问具体是有什么需求吗? 另外能再说说 ksql 具体的限制吗? Best, Shengkai [1] https://github.com/apache/flink/blob/99c2a415e9eeefafacf70762b6f54070f7911ceb/flink-table/flink-table-planner-blink/src/main/java/org/apache/flink/table/planner/plan/nodes/exec/stream/StreamExecChangelogNormalize.java macdoor <[email protected]> 于2021年5月6日周四 上午9:48写道: > 我也想知道 flink 在对 kafka 消息进行 join 时,是否对按主键分区有要求,KSQL有强制性的要求 > > > > -- > Sent from: http://apache-flink.147419.n8.nabble.com/
