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 hailongwang <18...@163.com> on 2020/11/02 16:21:12 UTC

Re:Flink Jdbc sink写入多表如何实现

Hi,
    目前JDBC sink 不支持分库分表,只能自己实现一个 Sink。具体实现的话,即使 insert Statement 需要在 writeRecord 阶段根据你的数据的 key 进行生成。
其中还需要将 key 和 statement 的对应关系缓存起来。
    之前我内部的版本也支持了这个需求,因为后来在 DB 层面支持分库分表,所以在升级版本时候去掉了。(个人觉得这个是不是 DB 层面应该支持的?)


Best,
Hailong  Wang

在 2020-10-30 15:10:33,"张健" <zh...@163.com> 写道:
>hi,
>
>
>我现在有个需求是一个source进来,然后根据数据里的字段 分发写入 clickhouse多张表中(比如用户行为事件,上报进来有多种,不同的事件写入不同的表中),我想用Flink的Jdbc sink来做,但看接口貌似不能直接实现这样的功能。
>
>
>这个是要自定义一个sink来做嘛?有没有什么简单的实现方式?
>
>
>
>
>
>
>
>--
>
>张健

Re:答复: Re:Flink Jdbc sink写入多表如何实现

Posted by Michael Ran <gr...@163.com>.
通过key 分成不同 view ,然后不同的view 写不同的表可以吧
在 2021-01-19 17:59:54,"范超" <fa...@mgtv.com> 写道:
>我这边自己的做法是,根据不同的行为时间,将source拆流,然后一个事件对应一个sink
>Sink的逻辑处理都是一致的,只不过配置的表不同。
>
>-----邮件原件-----
>发件人: hailongwang [mailto:18868816710@163.com] 
>发送时间: 2020年11月3日 星期二 0:21
>收件人: user-zh@flink.apache.org
>主题: Re:Flink Jdbc sink写入多表如何实现
>
>Hi,
>    目前JDBC sink 不支持分库分表,只能自己实现一个 Sink。具体实现的话,即使 insert Statement 需要在 writeRecord 阶段根据你的数据的 key 进行生成。
>其中还需要将 key 和 statement 的对应关系缓存起来。
>    之前我内部的版本也支持了这个需求,因为后来在 DB 层面支持分库分表,所以在升级版本时候去掉了。(个人觉得这个是不是 DB 层面应该支持的?)
>
>
>Best,
>Hailong  Wang
>
>在 2020-10-30 15:10:33,"张健" <zh...@163.com> 写道:
>>hi,
>>
>>
>>我现在有个需求是一个source进来,然后根据数据里的字段 分发写入 clickhouse多张表中(比如用户行为事件,上报进来有多种,不同的事件写入不同的表中),我想用Flink的Jdbc sink来做,但看接口貌似不能直接实现这样的功能。
>>
>>
>>这个是要自定义一个sink来做嘛?有没有什么简单的实现方式?
>>
>>
>>
>>
>>
>>
>>
>>--
>>
>>张健

答复: Re:Flink Jdbc sink写入多表如何实现

Posted by 范超 <fa...@mgtv.com>.
我这边自己的做法是,根据不同的行为时间,将source拆流,然后一个事件对应一个sink
Sink的逻辑处理都是一致的,只不过配置的表不同。

-----邮件原件-----
发件人: hailongwang [mailto:18868816710@163.com] 
发送时间: 2020年11月3日 星期二 0:21
收件人: user-zh@flink.apache.org
主题: Re:Flink Jdbc sink写入多表如何实现

Hi,
    目前JDBC sink 不支持分库分表,只能自己实现一个 Sink。具体实现的话,即使 insert Statement 需要在 writeRecord 阶段根据你的数据的 key 进行生成。
其中还需要将 key 和 statement 的对应关系缓存起来。
    之前我内部的版本也支持了这个需求,因为后来在 DB 层面支持分库分表,所以在升级版本时候去掉了。(个人觉得这个是不是 DB 层面应该支持的?)


Best,
Hailong  Wang

在 2020-10-30 15:10:33,"张健" <zh...@163.com> 写道:
>hi,
>
>
>我现在有个需求是一个source进来,然后根据数据里的字段 分发写入 clickhouse多张表中(比如用户行为事件,上报进来有多种,不同的事件写入不同的表中),我想用Flink的Jdbc sink来做,但看接口貌似不能直接实现这样的功能。
>
>
>这个是要自定义一个sink来做嘛?有没有什么简单的实现方式?
>
>
>
>
>
>
>
>--
>
>张健