Hi
> 1, 这个时态表必须是changlog流吗, 就是 debezium -> kafka 这样, 用和主表的flink cdc不可以吗, > 我用flink cdc测试没成功,因为flink cdc的维表好像不能指定watermark? 我们常说的 lookup维表也是时态表的一种,lookup 正如这个单词字面意思一样,主流的每条数据到来时都按 lookup key 去外部DB中 查询 一条记录,这张维表自然就是最新的维表,这就是 proctime temporal join 的语义。 基于 Event-time temporal join,是按照 event-time 去取对应的版本, 与 proctime temporal join的区别是, proctime temporal join 只能取最新版本,Evet-time temporal join可以取该 event-time 对应的版本。 Flink 声明 时态表主只需要两个属性, 主键 和 event time, 其中主键甚至可以是推导的。可以看下这个文档【1】 > 2, 订单表和时态表都需要一直写入数据来触发watermark吗? 是的,event-time temporal join 靠两条流的 watermark 来共同驱动。 祝好, Leonard 【1】https://ci.apache.org/projects/flink/flink-docs-master/zh/docs/dev/table/concepts/versioned_tables/#%e6%97%b6%e6%80%81%e8%a1%a8 > > 烦请解答下 > > > ------------------ 原始邮件 ------------------ > 发件人: > "user-zh" > > <xbjt...@gmail.com>; > 发送时间: 2021年5月27日(星期四) 下午5:14 > 收件人: "user-zh"<user-zh@flink.apache.org>; > > 主题: Re: flink 维表 > > > > HI, > 可以修改的,修改后不需要重启作业。 > 修改后 flink 事实流 是能立即 查询到 最新的维表数据(前提是维表查询出来的数据没有开启cache)。 > 你可以理解下 lookup 维表的语法: A join B for system time as of A.proctime on A.id > <http://a.id/> = B.id <http://b.id/> 就是 查询当前最新的维表(proctime代表了最新时间)并关联。 > > > 祝好, > Leonard > > > 在 2021年5月27日,16:35,liujian <13597820...@qq.com> 写道: > > > > 请问flink lookup表作为维表,那么lookup表是不是不能新增或者修改,如果修改了那么作业就需要重启? > > 想要作业不重启咋操作