flink-user-zh mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jark Wu <imj...@gmail.com>
Subject Re: Last_Value为啥不能取最近为NULL的值
Date Sat, 25 Apr 2020 14:30:21 GMT
Hi,

内置的 last_value 这个 UDAF 是特意会去忽略 null 值的。
这是因为在传统数据库和标准 SQL 中定义的 agg ,基本上都是忽略输入的
null 值的,如果所有输入都是 null,那么会输出 null。

对于你的场景,我建议使用 deduplicate by last row 语法[1],last row 会保留该
key
下完整的上一行数据,因此在回撤时会输出 完整上一行的回撤消息。

Best,
Jark

[1]:
https://ci.apache.org/projects/flink/flink-docs-master/zh/dev/table/sql/queries.html#%E5%8E%BB%E9%87%8D

On Fri, 24 Apr 2020 at 17:18, Benchao Li <libenchao@gmail.com> wrote:

> 才注意到刚才的回复是单独发的,没有抄送到社区邮件列表。
>
> 我也不知道这个设计是出于什么考虑,已经抄送了小令和云邪,他们应该比较清楚这么设计的原因。
>
> 姬洪超 <jihongchao@geekplus.com.cn> 于2020年4月24日周五 下午4:59写道:
>
>> 这是出于什么样的考虑啊?
>>
>> ------------------------------------------------------------------
>> 发件人:Benchao Li <libenchao@gmail.com>
>> 发送时间:2020年4月24日(星期五) 16:55
>> 收件人:姬洪超 <jihongchao@geekplus.com.cn>
>> 主 题:Re: Last_Value为啥不能取最近为NULL的值
>>
>> 看了一眼last_value的实现,的确是判断了数据是否为null,如果是null就直接忽略了,不会更新聚合结果为null
>>
>> 姬洪超 <jihongchao@geekplus.com.cn> 于2020年4月24日周五 下午4:48写道:
>>
>>
>> 我使用的是内置的last_value。数据回撤就是处理mysql的binlog的delete或者update的数据的时候,想获取kafka中相同key的最近一条的数据,发现内置的last_value无法获取值为null的数据
>> ------------------------------------------------------------------
>> 发件人:Benchao Li <libenchao@gmail.com>
>> 发送时间:2020年4月24日(星期五) 16:44
>> 收件人:user-zh <user-zh@flink.apache.org>; 姬洪超 <jihongchao@geekplus.com.cn>
>> 主 题:Re: Last_Value为啥不能取最近为NULL的值
>>
>> 没太理解你的问题,
>>
>> 1,你说last_value UDF,指的是你自己实现了一个last_value么?还是用的内置函数last_value?
>> 2, 实现数据回撤是什么意思呢?
>>
>> 姬洪超 <jihongchao@geekplus.com.cn> 于2020年4月24日周五 下午4:23写道:
>> 嗨:
>>
>>  我利用Last_Value的UDF实现数据回撤功能时,发现无法取到最近数据的null值,这个是我使用不当还是就是无法获取NUll啊,如果是无法获取NULL的话,为什么啊?谢谢
>>
>>
>>
>> --
>>
>> Benchao Li
>> School of Electronics Engineering and Computer Science, Peking University
>> Tel:+86-15650713730
>> Email: libenchao@gmail.com; libenchao@pku.edu.cn
>>
>>
>>
>>
>> --
>>
>> Benchao Li
>> School of Electronics Engineering and Computer Science, Peking University
>> Tel:+86-15650713730
>> Email: libenchao@gmail.com; libenchao@pku.edu.cn
>>
>>
>>
>
> --
>
> Benchao Li
> School of Electronics Engineering and Computer Science, Peking University
> Tel:+86-15650713730
> Email: libenchao@gmail.com; libenchao@pku.edu.cn
>
>
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message