取决于具体的场景。想到的有如下几种方案:
1,group by student_id和student_name,而不是只group by
student_id。当然前提是修改同名名字不会推送一条消息到流1.
2,过滤掉update的消息
3,基于时间窗口的聚合,对于student表的数据,每n秒输出一个唯一的student_id,然后再与score流join。
-邮件原件-
发件人: xin Destiny
发送时间: Tuesday, January 14, 2020 6:39 PM
收件人: user-zh@flink.apache.org
主题: Re:
不好意思,之前没看到这个问题。
Darwin-amd64就是mac上的可执行文件格式。信任他,直接可以执行的。
-邮件原件-
发件人: 陈帅
发送时间: Saturday, December 7, 2019 10:48 PM
收件人: user-zh@flink.apache.org
主题: Re: 如果用flink sql持续查询过去30分钟登录网站的人数?
请问这个平台生成可执行文件creek是如何实现的?对应的Dawin-amd64环境下载下来的文件是什么格式的?
Yuan,Youjun 于2019年12月7日周六 下午8:32写道:
> 是
首先通过一个自定义表函数(table function),将每条输入的消息变成3条消息,假设输入消息的时间为ts,产出的三条消息时间分别为:(ts-1,
0), (ts+1, 1), (ts+31, 0),
然后再用30分钟的range over窗口对前面的数值部分(0或者1)求SUM
袁尤军
-邮件原件-
发件人: 陈帅
发送时间: Wednesday, December 11, 2019 9:31 PM
收件人: user-zh@flink.apache.org
主题: flink持续查询过去30分钟登录网站的人数
例如,用户在以下时间点登录:无,
第一种情况,用firstvalue这种聚合函数; 第二种情况,用min聚合函数,然后group by id,是不是就是你要的结果?
-邮件原件-
发件人: Jimmy Wong
发送时间: Tuesday, December 10, 2019 4:40 PM
收件人: user-zh@flink.apache.org
主题: 窗口去重
Hi,All:
请教一个问题,现在有个实时场景:需要对每 5 分钟内数据进行去重,然后 Sink。
比如:
数据
{ts: 2019-12-10 16:24:00 id: 1}
{ts: 2019-12-10 16:22:00 id:
是的,与Flink完全一样的SQL接口,为边缘计算设计的流式计算框架。
-邮件原件-
发件人: 陈帅
发送时间: Saturday, December 7, 2019 11:36 AM
收件人: user-zh@flink.apache.org
主题: Re: 如果用flink sql持续查询过去30分钟登录网站的人数?
你们这个平台还挺方便快速验证的,是扩展了Flink SQL吗?
虽然没有完全解决我的问题,但还是要谢谢你。
Yuan,Youjun 于2019年12月5日周四 上午10:41写道:
> 可以用30分钟的range over窗口来处理,
谢谢你的回复。
这种方案比较有意思,只是还不能区分设备第一次心跳产生的count=1的消息(上线),和设备最后一次心跳产生的count=1的消息(下线)
-邮件原件-
发件人: 1193216154 <1193216...@qq.com>
发送时间: Wednesday, December 4, 2019 9:39 PM
收件人: user-zh
主题: 回复:如何用SQL表达对设备离在线监控
设定一个滑动窗口,窗口大小大于等于2n,滑动间隔大于等于n,若一次窗口结算,count 大于等于2,则在线,否则下线
---原始邮件---
发件人:
可以用30分钟的range over窗口来处理,但是你提到两个0值得输出恐怕做不到,没有数据,没有产出。
假设你得输入包含ts和userid两个字段,分别为时间戳和用户id,那么SQL应该这样:
INSERT INTO mysink
SELECT
ts, userid,
COUNT(userid)
OVER (PARTITION BY userid ORDER BY rowtime RANGE BETWEEN INTERVAL '30'
MINUTE PRECEDING AND CURRENT ROW) AS cnt
FROM mysrc
内层query不是按时间窗查询的话,这恐怕是不支持。
如果内层query是按时间窗的,比如固定窗口,那还可以用tumble_rowtime来传递rowtime属性。
-邮件原件-
发件人: 金圣哲
发送时间: Friday, November 15, 2019 1:21 PM
收件人: user-zh@flink.apache.org
主题: flink sql 状态表嵌套窗口查询
各位老板好:
"selectrider_id, waybill_status as waybill_status ,count(id) as
SQL没有表达这种“最早一分钟”的逻辑。
如果在你的消息的开头,插入一个temperature=0的消息,那么你得到的第一个输出diff_temperature=0,不知道这种方式是否可以接受。
发件人: Chennet Steven
发送时间: Thursday, November 14, 2019 5:32 PM
收件人: user-zh@flink.apache.org; Yuan,Youjun
主题: 回复: Flink1.7.2,TableApi的自定义聚合函数中如何使用自定义状态
Yuan, 非常感谢大佬的回复和方案,我代码尝试了,这个方案的确可行,但在计算最早一分钟
这个场景应可以通过标准的SQL完成计算。大致思路如下:
1,内层查询统计每个设备一分钟的最大温度,max(temp) as max_temperature + tumble窗口
2,外层通过row over窗口,拿到当前分钟的max_temperature,和前后2分钟最大温度的和,即SUM(max_temperature) AS
sum_temperature
3,最外层,就直接select 2 * max_temperature - sum_temperature就是你需要的前后2个分钟最大温度的差了。
假设输入消息有三个字段:
Ts: 时间戳
Deviceid:设备编号
1, 是
2,没有标准答案,是否可以本地先聚合?
3,AggFunc是指定做何种聚合,是sum, 还是avg, 还是count。不指定的话,Flink哪里指导你要计算啥?
-邮件原件-
发件人: 王佩
发送时间: Saturday, November 9, 2019 11:45 AM
收件人: user-zh
主题: Flink DataStream KeyedStream 与 AggregateFunction
请教下:
1、DataStream 如按用户ID KeyBy后,同一个用户ID的数据最终会被分到一个Partition中吗?
源码参考:PeriodicWatermarkEmitter
-邮件原件-
发件人: Dino Zhang
发送时间: Tuesday, September 3, 2019 3:14 PM
收件人: user-zh@flink.apache.org
主题: Re: Flink 周期性创建watermark,200ms的周期是怎么控制的
hi venn,
Sink -> “数据目的地”,我们的团队基本上都这么称呼。仅供参考
-邮件原件-
发件人: zhisheng
发送时间: Saturday, August 17, 2019 3:49 PM
收件人: user-zh
主题: Re: [Discuss] What should the "Data Source" be translated into Chinese
hi,
总感觉还是有点别扭,建议如果没找到合适的中文词语来翻译,那么还是用 Data Sink 来表示可能会更友好些
Kurt Young 于2019年8月13日周二 下午4:16写道:
> cc
并不是没条消息会触发watermark,而是有一定时间间隔的,默认是200ms触发一次watermark。
当你的数据来的比较集中的时候,经常会发生最新的消息的时间戳已经过了window end,但是window还没fire的情况。
-邮件原件-
发件人: Ever <439674...@qq.com>
发送时间: Sunday, July 14, 2019 5:00 PM
收件人: user-zh
主题: 回复: flink 1.8.1 时间窗口无法关闭以及消息丢失的问题
第四条数据来的时间戳是: 03:17:55, 水印时间这时候应该是03:17:50,
[1]
https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming.html#time-attributes
Am 14.09.18 um 10:49 schrieb Yuan,Youjun:
Hi,
I am getting the following error while submitting job to a cluster, which seems
failed to compare 2 RelDateTypes, though they seems identical (from
Hi,
I am getting the following error while submitting job to a cluster, which seems
failed to compare 2 RelDateTypes, though they seems identical (from the error
message), and everything is OK if I run it locally.
I guess calcite failed to compare the first field named ts, of type
One more safer approach is to execute cancel with savepoint on all jobs first
>> this sounds great!
Thanks
Youjun
发件人: vino yang
发送时间: Friday, August 24, 2018 2:43 PM
收件人: Yuan,Youjun ; user
主题: Re: jobmanager holds too many CLOSE_WAIT connection to datanode
Hi Youjun,
You c
Hi,
After running for a while , my job manager holds thousands of CLOSE_WAIT TCP
connection to HDFS datanode, the number is growing up slowly, and it's likely
will hit the max open file limit. My jobs checkpoint to HDFS every minute.
If I run lsof -i -a -p $JMPID, I can get a tons of following
ent@v1.5> on
my client side, to retrieve the leader JM of Flink v1.4 Cluster.
Thanks
Youjun
发件人: vino yang
发送时间: Wednesday, July 25, 2018 7:11 PM
收件人: Martin Eden
抄送: Yuan,Youjun ; user@flink.apache.org
主题: Re: Best way to find the current alive jobmanager with HA mode zookeeper
Hi
Hi all,
I have a standalone cluster with 3 jobmanagers, and set high-availability to
zookeeper. Our client submits job by REST API(POST /jars/:jarid/run), which
means we need to know the host of the any of the current alive jobmanagers. The
problem is that, how can we know which job manager is
: Yuan,Youjun
抄送: Timo Walther ; user@flink.apache.org
主题: Re: 答复: 答复: TumblingProcessingTimeWindow emits extra results for a same
window
Hi Youjun,
The rowtime value in udf:EXTRACT(EPOCH FROM rowtime) is different from the
rowtime value of window. Sql will be parsed and translated into some nodes
;:"user01","min_ts":1531447919981,"max_ts":1531448159975}
{"timestamp":1531448160000,"cnt":3278178,"userId":"user01","min_ts":1531448159098,"max_ts":1531448399977}
{"timestamp":153144816,"cnt"
userId
thanks
Youjun
发件人: Timo Walther
发送时间: Thursday, July 12, 2018 5:02 PM
收件人: user@flink.apache.org
主题: Re: TumblingProcessingTimeWindow emits extra results for a same window
Hi Yuan,
this sounds indeed weird. The SQL API uses regular DataStream API windows
underneath
Hi community,
I have a job which counts event number every 2 minutes, with TumblingWindow in
ProcessingTime. However, it occasionally produces extra DUPLICATED records. For
instance, for timestamp 153136848 below, it emits a normal result
(cnt=1641161), and then followed by a few more
24 matches
Mail list logo