You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by WuKong <wu...@foxmail.com> on 2021/10/14 07:59:54 UTC

Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序

Hi:
   目前遇到一个问题,我想在一个Job下 ,有两个SQL 分步都是 读取同一个Source Kafka 数据, 一个是插入Tidb 落数据, 另一个是写入下游Kafka, 目前想控制 先插入DB 然后再写入下游Kafka, 请问有什么方案可以实现这种方式?



---
Best,
WuKong

Re: Re: Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序

Posted by Caizhi Weng <ts...@gmail.com>.
Hi!

我同意你的观点,目前自定义 sink 应该是最合适的方法。

WuKong <wu...@foxmail.com> 于2021年10月14日周四 下午8:02写道:

> Hi Caizhi:
>
> 这个应该是和我们业务处理模式有关,我们需要同一个Kafka 流 输出两个Sink 同时要保持顺序性, 这个对我们来说是个通用的功能, 我在想如何实现这种方式, 请问有什么方案值得推荐吗?
>    我想通过实现一种自定义Table  比如 在一个Jdbc
> Table表的属性里 填充Kafka 属性,保持相同的Schema, 做为一个Sink 这样 方便做统一管理, 然后实现自定义Table 逻辑, 这种方案如何?
>
> ------------------------------
> ---
> Best,
> WuKong
>
>
> *发件人:* Caizhi Weng <ts...@gmail.com>
> *发送时间:* 2021-10-14 17:50
> *收件人:* user-zh <us...@flink.apache.org>
> *主题:* Re: Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序
> Hi!
>
> “先插入 db,然后再写下游 kafka”,是说想要保证同一条数据必须写进 db 之后,才能写入 kafka 吗?
>
> 目前暂时没有这样的功能,如果确实很需要,可以考虑写一个 udf,udf 读到数据以后先写入 db
> 再传给下游。可以描述一下为什么有这种需求,大概是什么样的使用场景吗?
>
> WuKong <wu...@foxmail.com> 于2021年10月14日周四 下午5:11写道:
>
> > Hi:
> >    目前遇到一个问题,我想在一个Job下 ,有两个SQL 分步都是 读取同一个Source Kafka 数据, 一个是插入Tidb 落数据,
> > 另一个是写入下游Kafka, 目前想控制 先插入DB 然后再写入下游Kafka, 请问有什么方案可以实现这种方式?
> >
> >
> >
> > ---
> > Best,
> > WuKong
> >
>
>

Re: Re: Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序

Posted by WuKong <wu...@foxmail.com>.
Hi Caizhi:
    这个应该是和我们业务处理模式有关,我们需要同一个Kafka 流 输出两个Sink 同时要保持顺序性, 这个对我们来说是个通用的功能, 我在想如何实现这种方式, 请问有什么方案值得推荐吗?
   我想通过实现一种自定义Table  比如 在一个Jdbc Table表的属性里 填充Kafka 属性,保持相同的Schema, 做为一个Sink 这样 方便做统一管理, 然后实现自定义Table 逻辑, 这种方案如何?



---
Best,
WuKong
 
发件人: Caizhi Weng
发送时间: 2021-10-14 17:50
收件人: user-zh
主题: Re: Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序
Hi!
 
“先插入 db,然后再写下游 kafka”,是说想要保证同一条数据必须写进 db 之后,才能写入 kafka 吗?
 
目前暂时没有这样的功能,如果确实很需要,可以考虑写一个 udf,udf 读到数据以后先写入 db
再传给下游。可以描述一下为什么有这种需求,大概是什么样的使用场景吗?
 
WuKong <wu...@foxmail.com> 于2021年10月14日周四 下午5:11写道:
 
> Hi:
>    目前遇到一个问题,我想在一个Job下 ,有两个SQL 分步都是 读取同一个Source Kafka 数据, 一个是插入Tidb 落数据,
> 另一个是写入下游Kafka, 目前想控制 先插入DB 然后再写入下游Kafka, 请问有什么方案可以实现这种方式?
>
>
>
> ---
> Best,
> WuKong
>

Re: Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序

Posted by Caizhi Weng <ts...@gmail.com>.
Hi!

“先插入 db,然后再写下游 kafka”,是说想要保证同一条数据必须写进 db 之后,才能写入 kafka 吗?

目前暂时没有这样的功能,如果确实很需要,可以考虑写一个 udf,udf 读到数据以后先写入 db
再传给下游。可以描述一下为什么有这种需求,大概是什么样的使用场景吗?

WuKong <wu...@foxmail.com> 于2021年10月14日周四 下午5:11写道:

> Hi:
>    目前遇到一个问题,我想在一个Job下 ,有两个SQL 分步都是 读取同一个Source Kafka 数据, 一个是插入Tidb 落数据,
> 另一个是写入下游Kafka, 目前想控制 先插入DB 然后再写入下游Kafka, 请问有什么方案可以实现这种方式?
>
>
>
> ---
> Best,
> WuKong
>

Re:Flink-1.12 sql 同一个Job 下 如何控制 多个SQL的执行顺序

Posted by Michael Ran <gr...@163.com>.
插入 tidb  接收binlog,再次写入
在 2021-10-14 15:59:54,"WuKong" <wu...@foxmail.com> 写道:
>Hi:
>   目前遇到一个问题,我想在一个Job下 ,有两个SQL 分步都是 读取同一个Source Kafka 数据, 一个是插入Tidb 落数据, 另一个是写入下游Kafka, 目前想控制 先插入DB 然后再写入下游Kafka, 请问有什么方案可以实现这种方式?
>
>
>
>---
>Best,
>WuKong