Re: Flink sql 维表聚合问题请教

2021-08-04 文章 carlc
邮件 -- > 发件人: > "user-zh" > > 发送时间: 2021年8月4日(星期三) 下午4:44 > 收件人: "user-zh

Re: Flink sql 维表聚合问题请教

2021-08-04 文章 Caizhi Weng
Hi! 我查了一下,processing time temporal join 确实还没有实现... 这里可能需要变成 event time temporal join[1] 或者双流 join 了。但更好的方法可能是维表本身就已经计算好所需的数据。 [1] https://ci.apache.org/projects/flink/flink-docs-release-1.13/zh/docs/dev/table/sql/queries/joins/#event-time-temporal-join carlc 于2021年8月4日周三 下午3:57写道: > 感谢大佬回复,我尝试

Re: Flink sql 维表聚合问题请教

2021-08-04 文章 carlc
感谢大佬回复,我尝试着换种写法,但这样些的话会直接报错。 create view v_bl_user_count as ( select user_id, count(1) from mysql_user_blacklist group by user_id ); select t1.`user_id` , t1.`event_type` , t1.`current_ts` from kafka_user_event t1 left join v_bl_user_count FOR SYSTEM_TIME AS OF t1.`proc_time

Re: Flink sql 维表聚合问题请教

2021-08-03 文章 Caizhi Weng
Hi! 这是因为每次维表 join 都会向下游发送两条数据,一共发送了四条,所以最后 count 的结果为 4,是符合预期的。 为什么不直接对维表做 agg 呢?当然对维表做 agg 的话,这里就不是 lookup join 而是 process time temporal table join 了。 carlc 于2021年8月4日周三 上午10:41写道: > 请教下如何在维表上做聚合操作? 如下操作与预期不符合,不知道是姿势不正确还是其他原因,麻烦大佬些指教下 ~ > > -- 模拟需求(有点牵强...): > -- 过滤 kafka_user_event 中 event_

Flink sql 维表聚合问题请教

2021-08-03 文章 carlc
请教下如何在维表上做聚合操作? 如下操作与预期不符合,不知道是姿势不正确还是其他原因,麻烦大佬些指教下 ~ -- 模拟需求(有点牵强...): -- 过滤 kafka_user_event 中 event_type = LOGIN 数据,并且关联维表 mysql_user_blacklist 统计对应 user_id 在维表中的次数 -> 即: 在维表上做聚合操作 -- 1. 创建user_blacklist表 CREATE TABLE `user_blacklist` ( `user_id` bigint(20) NOT NULL, `create_time` datetime N