关于Apache Flink源码贡献流程

2023-04-24 文章 tanjialiang
Hello,everyone.
我想向apache 
flink贡献源码,由于修复这个issue需要新增一些API,按照流程需要发起邮件讨论,但这个topic只得到一名开发者关注,这样的情况下我应该如何进行后面的流程?期待有熟悉flink源码贡献的开发者可以提供帮助


issue: https://issues.apache.org/jira/browse/FLINK-31686
discuss邮件标题: EncodingFormat and DecondingFormat provide copy API


Best regrads
tanjialiang.

退订

2023-04-23 文章 朱静
退订

Re: Flink rocksDB疑似内存泄露,导致被Linux kernel killed

2023-04-23 文章 Yanfei Lei
Hi,
请问作业有配置ttl吗?
另外可以参考下是否与下面两个问题类似:
1. pin L0 index in memory : https://issues.apache.org/jira/browse/FLINK-31089
2. max open files:https://issues.apache.org/jira/browse/FLINK-31225

Biao Geng  于2023年4月23日周日 15:35写道:
>
> Hi,
> 可以配置下jemalloc来进行堆外内存泄漏的定位。
> 具体操作可以参考下这两篇文章。
> https://cloud.tencent.com/developer/article/1884177
> https://chenhm.com/post/2018-12-05-debuging-java-memory-leak#_native_method_%E5%86%85%E5%AD%98
>
> Best,
> Biao Geng
>
> Guo Thompson  于2023年4月22日周六 09:57写道:
>
> > yarn,我已经关闭了yarn的内存检查,glibc的那个参数已经配置成1了
> >
> > Weihua Hu  于2023年4月21日周五 19:23写道:
> >
> > > Hi,
> > >
> > > 你作业运行在 YARN 还是 Kubernetes 上?可以先关注下文档里的 Glibc 泄露问题
> > >
> > > Best,
> > > Weihua
> > >
> > >
> > > On Fri, Apr 21, 2023 at 6:04 PM Guo Thompson 
> > > wrote:
> > >
> > > > Flink
> > > >
> > >
> > Job是基于sql的,Flink版本为1.13.3,state用rocksDB存,发现会存在内存泄露的情况,作业运行一段时间后,会被linux内核kill掉,求助,如何解决?
> > > > 网上
> > > >
> > >
> > http://www.whitewood.me/2021/01/02/%E8%AF%A6%E8%A7%A3-Flink-%E5%AE%B9%E5%99%A8%E5%8C%96%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84-OOM-Killed/
> > > > 讲很可能就是rocksDB的内存没法回收导致。
> > > >
> > > > 1、分配 tm的30G内存,jvm堆内的远远没有使用完。
> > > > [image: 8f47b109-a04b-4bc1-8f64-fed21c58838d.jpeg]
> > > > 2、从linux上查看内存使用,实际使用内存 44.4G,远远超出设置的30G
> > > > [image: image.png]
> > > > 3、dump下tm的jvm内存,实际不到2G(dump会触发full gc)
> > > > [image: image.png]
> > > >
> > >
> >



-- 
Best,
Yanfei


Re: flink rocksdb异常

2023-04-23 文章 Shammon FY
Hi

这是TM向JM发送消息超时了,可以了看下JM是否有错误日志,或者对应的TM和JM是否有资源打满等情况,导致akka消息超时

Best,
Shammon FY


On Sun, Apr 23, 2023 at 2:28 PM crazy <2463829...@qq.com.invalid> wrote:

> Hi, 大佬好,
>有个Flink on
> Yarn程序,Flink版本使用的是flink-1.13.5,statebackend使用的是rocksdb,任务跑一段时间,就会出现如下堆栈异常:
>
>
>   2023-04-20 22:32:08,127 INFO
> org.apache.flink.runtime.taskmanager.Task
>  [] - Attempting to fail task externally
> Source: slow_source_name_3 (15/100)#0 (39e2f191bef3484c9b629258eb5afb87).
> 2023-04-20 22:32:08,146 WARN
> org.apache.flink.runtime.taskmanager.Task
>  [] - Source: slow_source_name_3
> (15/100)#0 (39e2f191bef3484c9b629258eb5afb87) switched from RUNNING to
> FAILED with failure cause: java.util.concurrent.TimeoutException:
> Invocation of public abstract java.util.concurrent.CompletableFuture
> org.apache.flink.runtime.jobmaster.JobMasterOperatorEventGateway.sendOperatorEventToCoordinator(org.apache.flink.runtime.executiongraph.ExecutionAttemptID,org.apache.flink.runtime.jobgraph.OperatorID,org.apache.flink.util.SerializedValue)
> timed out.
>
> at
> com.sun.proxy.$Proxy28.sendOperatorEventToCoordinator(Unknown Source)
>
> at
> org.apache.flink.runtime.taskexecutor.rpc.RpcTaskOperatorEventGateway.sendOperatorEventToCoordinator(RpcTaskOperatorEventGateway.java:58)
>
> at
> org.apache.flink.streaming.runtime.tasks.OperatorEventDispatcherImpl$OperatorEventGatewayImpl.sendEventToCoordinator(OperatorEventDispatcherImpl.java:114)
>
> at
> org.apache.flink.streaming.api.operators.SourceOperator.emitLatestWatermark(SourceOperator.java:393)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.invokeProcessingTimeCallback(StreamTask.java:1425)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.lambda$null$16(StreamTask.java:1416)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.runThrowing(StreamTaskActionExecutor.java:50)
>
> at
> org.apache.flink.streaming.runtime.tasks.mailbox.Mail.run(Mail.java:90)
>
> at
> org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.processMailsWhenDefaultActionUnavailable(MailboxProcessor.java:344)
>
> at
> org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.processMail(MailboxProcessor.java:330)
>
> at
> org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:202)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:684)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.executeInvoke(StreamTask.java:639)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.runWithCleanUpOnFail(StreamTask.java:650)
>
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:623)
>
> at
> org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:779)
>
> at
> org.apache.flink.runtime.taskmanager.Task.run(Task.java:566)
>
> at java.lang.Thread.run(Thread.java:748)
>
> Caused by: akka.pattern.AskTimeoutException: Ask timed out on
> [Actor[akka.tcp://flink@xx:40381/user/rpc/jobmanager_2#-1762983006]]
> after [1 ms]. Message of type
> [org.apache.flink.runtime.rpc.messages.RemoteFencedMessage]. A typical
> reason for `AskTimeoutException` is that the recipient actor didn't send a
> reply.
>
> at
> akka.pattern.PromiseActorRef$$anonfun$2.apply(AskSupport.scala:635)
>
> at
> akka.pattern.PromiseActorRef$$anonfun$2.apply(AskSupport.scala:635)
>
> at
> akka.pattern.PromiseActorRef$$anonfun$1.apply$mcV$sp(AskSupport.scala:648)
>
> at
> akka.actor.Scheduler$$anon$4.run(Scheduler.scala:205)
>
> at
> scala.concurrent.Future$InternalCallbackExecutor$.unbatchedExecute(Future.scala:601)
>
> at
> scala.concurrent.BatchingExecutor$class.execute(BatchingExecutor.scala:109)
>
> at
> scala.concurrent.Future$InternalCallbackExecutor$.execute(Future.scala:599)
>
> at
> akka.actor.LightArrayRevolverScheduler$TaskHolder.executeTask(LightArrayRevolverScheduler.scala:328)
>
> at
> akka.actor.LightArrayRevolverScheduler$$anon$4.executeBucket$1(LightArrayRevolverScheduler.scala:279)
>
> at
> akka.actor.LightArrayRevolverScheduler$$anon$4.nextTick(LightArrayRevolverScheduler.scala:283)
>
> at
> akka.actor.LightArrayRevolverScheduler$$anon$4.run(LightArrayRevolverScheduler.scala:235)
>
> ... 1 more
>
>
>
>
>
> 查看对应进程日志,
>
> #
>
> # A fatal error has been detected by the Java Runtime Environment:
>
> #
>
> # SIGSEGV (0xb) at pc=0x, pid=551250,
> tid=0x7fcb1e7fc700
>
> #
>
> # JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build
> 1.8.0_131-b11)
>
> # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode
> linux-amd64 compressed oops)
>
> # Problematic frame:
>
> # C 0x
>
> #
>
> # Failed to write core dump. Core dumps have been disabled. To enable core
> dumping, try "ulimit -c unlimited" before starting Java again
>
> #
>
> # An error report 

Re: Flink rocksDB疑似内存泄露,导致被Linux kernel killed

2023-04-23 文章 Biao Geng
Hi,
可以配置下jemalloc来进行堆外内存泄漏的定位。
具体操作可以参考下这两篇文章。
https://cloud.tencent.com/developer/article/1884177
https://chenhm.com/post/2018-12-05-debuging-java-memory-leak#_native_method_%E5%86%85%E5%AD%98

Best,
Biao Geng

Guo Thompson  于2023年4月22日周六 09:57写道:

> yarn,我已经关闭了yarn的内存检查,glibc的那个参数已经配置成1了
>
> Weihua Hu  于2023年4月21日周五 19:23写道:
>
> > Hi,
> >
> > 你作业运行在 YARN 还是 Kubernetes 上?可以先关注下文档里的 Glibc 泄露问题
> >
> > Best,
> > Weihua
> >
> >
> > On Fri, Apr 21, 2023 at 6:04 PM Guo Thompson 
> > wrote:
> >
> > > Flink
> > >
> >
> Job是基于sql的,Flink版本为1.13.3,state用rocksDB存,发现会存在内存泄露的情况,作业运行一段时间后,会被linux内核kill掉,求助,如何解决?
> > > 网上
> > >
> >
> http://www.whitewood.me/2021/01/02/%E8%AF%A6%E8%A7%A3-Flink-%E5%AE%B9%E5%99%A8%E5%8C%96%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84-OOM-Killed/
> > > 讲很可能就是rocksDB的内存没法回收导致。
> > >
> > > 1、分配 tm的30G内存,jvm堆内的远远没有使用完。
> > > [image: 8f47b109-a04b-4bc1-8f64-fed21c58838d.jpeg]
> > > 2、从linux上查看内存使用,实际使用内存 44.4G,远远超出设置的30G
> > > [image: image.png]
> > > 3、dump下tm的jvm内存,实际不到2G(dump会触发full gc)
> > > [image: image.png]
> > >
> >
>


回复:flink datastream api写的代码如何在idea中调试

2023-04-22 文章 m18751805115_1
thx



 回复的原邮件 
| 发件人 | Feng Jin |
| 日期 | 2023年04月22日 22:22 |
| 收件人 | user-zh@flink.apache.org |
| 抄送至 | |
| 主题 | Re: flink datastream api写的代码如何在idea中调试 |
如果你是要本地 idea debug 线上的作业,需要在 taskManager 的 JVM 参数中开启debug

提交作业时, 添加参数:
env.java.opts.taskmanager="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"



然后在 idea 创建一个 remote debug 启动项,连接到线上的 TaskManager 所在的机器 IP 即可。之后即可在在 idea
中打断点,或者截取执行栈
*(前提是你本地的机器和线上的机器网络是互通的)*

参考:
https://www.jetbrains.com/help/idea/tutorial-remote-debug.html#174f812f

---
Best,
Feng Jin

On Sat, Apr 22, 2023 at 10:04 PM m18751805115_1 <18751805...@163.com> wrote:

> 抱歉啊,可能我没有把问题描述清楚。我是想本地对代码进行debug调试,观察每条流输入后的变量值以及调用栈等信息的。
>
>
>
>  回复的原邮件 
> | 发件人 | Feng Jin |
> | 日期 | 2023年04月22日 21:53 |
> | 收件人 | user-zh@flink.apache.org |
> | 抄送至 | |
> | 主题 | Re: flink datastream api写的代码如何在idea中调试 |
> 支持的, 在 idea 中执行 main 函数即可.执行前,idea 中的运行配置中,最好勾选上: *Include dependencies
> with "Provided" scope *否则有可能会有 class not found 的报错.
>
>
> 
> Best,
> Feng Jin
>
> On Sat, Apr 22, 2023 at 9:28 PM m18751805115_1 <18751805...@163.com>
> wrote:
>
> > 请教一下,在idea中用flink datastream
> >
> api写的代码,source输入是一条一条socket流数据,那如何在本地idea中进行调试,观察每条输入数据的运行情况,idea是否支持这种调试?
> >
> >
> >
>


Re: flink datastream api写的代码如何在idea中调试

2023-04-22 文章 Feng Jin
如果你是要本地 idea debug 线上的作业,需要在 taskManager 的 JVM 参数中开启debug

提交作业时, 添加参数:
env.java.opts.taskmanager="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"



然后在 idea 创建一个 remote debug 启动项,连接到线上的 TaskManager 所在的机器 IP 即可。之后即可在在 idea
中打断点,或者截取执行栈
*(前提是你本地的机器和线上的机器网络是互通的)*

参考:
https://www.jetbrains.com/help/idea/tutorial-remote-debug.html#174f812f

---
Best,
Feng Jin

On Sat, Apr 22, 2023 at 10:04 PM m18751805115_1 <18751805...@163.com> wrote:

> 抱歉啊,可能我没有把问题描述清楚。我是想本地对代码进行debug调试,观察每条流输入后的变量值以及调用栈等信息的。
>
>
>
>  回复的原邮件 
> | 发件人 | Feng Jin |
> | 日期 | 2023年04月22日 21:53 |
> | 收件人 | user-zh@flink.apache.org |
> | 抄送至 | |
> | 主题 | Re: flink datastream api写的代码如何在idea中调试 |
> 支持的, 在 idea 中执行 main 函数即可.执行前,idea 中的运行配置中,最好勾选上: *Include dependencies
> with "Provided" scope *否则有可能会有 class not found 的报错.
>
>
> 
> Best,
> Feng Jin
>
> On Sat, Apr 22, 2023 at 9:28 PM m18751805115_1 <18751805...@163.com>
> wrote:
>
> > 请教一下,在idea中用flink datastream
> >
> api写的代码,source输入是一条一条socket流数据,那如何在本地idea中进行调试,观察每条输入数据的运行情况,idea是否支持这种调试?
> >
> >
> >
>


回复:flink datastream api写的代码如何在idea中调试

2023-04-22 文章 m18751805115_1
抱歉啊,可能我没有把问题描述清楚。我是想本地对代码进行debug调试,观察每条流输入后的变量值以及调用栈等信息的。



 回复的原邮件 
| 发件人 | Feng Jin |
| 日期 | 2023年04月22日 21:53 |
| 收件人 | user-zh@flink.apache.org |
| 抄送至 | |
| 主题 | Re: flink datastream api写的代码如何在idea中调试 |
支持的, 在 idea 中执行 main 函数即可.执行前,idea 中的运行配置中,最好勾选上: *Include dependencies
with "Provided" scope *否则有可能会有 class not found 的报错.



Best,
Feng Jin

On Sat, Apr 22, 2023 at 9:28 PM m18751805115_1 <18751805...@163.com> wrote:

> 请教一下,在idea中用flink datastream
> api写的代码,source输入是一条一条socket流数据,那如何在本地idea中进行调试,观察每条输入数据的运行情况,idea是否支持这种调试?
>
>
>


Re: flink datastream api写的代码如何在idea中调试

2023-04-22 文章 Feng Jin
支持的, 在 idea 中执行 main 函数即可.执行前,idea 中的运行配置中,最好勾选上: *Include dependencies
with "Provided" scope *否则有可能会有 class not found 的报错.



Best,
Feng Jin

On Sat, Apr 22, 2023 at 9:28 PM m18751805115_1 <18751805...@163.com> wrote:

> 请教一下,在idea中用flink datastream
> api写的代码,source输入是一条一条socket流数据,那如何在本地idea中进行调试,观察每条输入数据的运行情况,idea是否支持这种调试?
>
>
>


flink datastream api写的代码如何在idea中调试

2023-04-22 文章 m18751805115_1
请教一下,在idea中用flink datastream 
api写的代码,source输入是一条一条socket流数据,那如何在本地idea中进行调试,观察每条输入数据的运行情况,idea是否支持这种调试?




Re: Flink rocksDB疑似内存泄露,导致被Linux kernel killed

2023-04-21 文章 Guo Thompson
yarn,我已经关闭了yarn的内存检查,glibc的那个参数已经配置成1了

Weihua Hu  于2023年4月21日周五 19:23写道:

> Hi,
>
> 你作业运行在 YARN 还是 Kubernetes 上?可以先关注下文档里的 Glibc 泄露问题
>
> Best,
> Weihua
>
>
> On Fri, Apr 21, 2023 at 6:04 PM Guo Thompson 
> wrote:
>
> > Flink
> >
> Job是基于sql的,Flink版本为1.13.3,state用rocksDB存,发现会存在内存泄露的情况,作业运行一段时间后,会被linux内核kill掉,求助,如何解决?
> > 网上
> >
> http://www.whitewood.me/2021/01/02/%E8%AF%A6%E8%A7%A3-Flink-%E5%AE%B9%E5%99%A8%E5%8C%96%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84-OOM-Killed/
> > 讲很可能就是rocksDB的内存没法回收导致。
> >
> > 1、分配 tm的30G内存,jvm堆内的远远没有使用完。
> > [image: 8f47b109-a04b-4bc1-8f64-fed21c58838d.jpeg]
> > 2、从linux上查看内存使用,实际使用内存 44.4G,远远超出设置的30G
> > [image: image.png]
> > 3、dump下tm的jvm内存,实际不到2G(dump会触发full gc)
> > [image: image.png]
> >
>


Re: Flink rocksDB疑似内存泄露,导致被Linux kernel killed

2023-04-21 文章 Weihua Hu
Hi,

你作业运行在 YARN 还是 Kubernetes 上?可以先关注下文档里的 Glibc 泄露问题

Best,
Weihua


On Fri, Apr 21, 2023 at 6:04 PM Guo Thompson  wrote:

> Flink
> Job是基于sql的,Flink版本为1.13.3,state用rocksDB存,发现会存在内存泄露的情况,作业运行一段时间后,会被linux内核kill掉,求助,如何解决?
> 网上
> http://www.whitewood.me/2021/01/02/%E8%AF%A6%E8%A7%A3-Flink-%E5%AE%B9%E5%99%A8%E5%8C%96%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84-OOM-Killed/
> 讲很可能就是rocksDB的内存没法回收导致。
>
> 1、分配 tm的30G内存,jvm堆内的远远没有使用完。
> [image: 8f47b109-a04b-4bc1-8f64-fed21c58838d.jpeg]
> 2、从linux上查看内存使用,实际使用内存 44.4G,远远超出设置的30G
> [image: image.png]
> 3、dump下tm的jvm内存,实际不到2G(dump会触发full gc)
> [image: image.png]
>


退订

2023-04-21 文章 二月
退订


Flink rocksDB疑似内存泄露,导致被Linux kernel killed

2023-04-21 文章 Guo Thompson
Flink
Job是基于sql的,Flink版本为1.13.3,state用rocksDB存,发现会存在内存泄露的情况,作业运行一段时间后,会被linux内核kill掉,求助,如何解决?
网上
http://www.whitewood.me/2021/01/02/%E8%AF%A6%E8%A7%A3-Flink-%E5%AE%B9%E5%99%A8%E5%8C%96%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84-OOM-Killed/
讲很可能就是rocksDB的内存没法回收导致。

1、分配 tm的30G内存,jvm堆内的远远没有使用完。
[image: 8f47b109-a04b-4bc1-8f64-fed21c58838d.jpeg]
2、从linux上查看内存使用,实际使用内存 44.4G,远远超出设置的30G
[image: image.png]
3、dump下tm的jvm内存,实际不到2G(dump会触发full gc)
[image: image.png]


退订

2023-04-21 文章 liang ji
退订


退订

2023-04-20 文章 于光远
退订













--

于光远
phone: 187-3364-3045
E-mail: programme...@163.com

退订

2023-04-20 文章 杨光跃


退订
| |
杨光跃
|
|
yangguangyuem...@163.com
|



Re: 不同的流程使用不同的并行度

2023-04-20 文章 yidan zhao
从哪方面考虑,主要根据每个算子的工作复杂性,复杂性越高自然设置越高的并发好点。 其次实际运行时,也可以根据反压情况找到瓶颈进行调整。

Shammon FY  于2023年4月21日周五 09:04写道:
>
> Hi
>
> DataStream作业设置并发度有两种方式
> 1. 在ExecutionEnvironment通过setParallelism设置全局并发
> 2. 在DataStream中通过setParallelism为指定的datastream计算设置并发度
>
> Best,
> Shammon FY
>
> On Fri, Apr 21, 2023 at 8:58 AM 小昌同学  wrote:
>
> >
> >
> > 各位老师好,请教一下关于flink的并行度的问题;
> > 我现在数据上游是kafka(四个分区),经过Flink
> > ETL处理后,实时落地到Kafka以及MYSQL,那我想在不同的阶段设置不同的并行度,这一块可以怎么使用,我使用的是DataStream API
> > 还想请教一下就是关于并行度的这个设置,应该从哪些方面进行考虑啊,麻烦各位老师指教一下
> > | |
> > 小昌同学
> > |
> > |
> > ccc0606fight...@163.com
> > |


Re: 不同的流程使用不同的并行度

2023-04-20 文章 Shammon FY
Hi

DataStream作业设置并发度有两种方式
1. 在ExecutionEnvironment通过setParallelism设置全局并发
2. 在DataStream中通过setParallelism为指定的datastream计算设置并发度

Best,
Shammon FY

On Fri, Apr 21, 2023 at 8:58 AM 小昌同学  wrote:

>
>
> 各位老师好,请教一下关于flink的并行度的问题;
> 我现在数据上游是kafka(四个分区),经过Flink
> ETL处理后,实时落地到Kafka以及MYSQL,那我想在不同的阶段设置不同的并行度,这一块可以怎么使用,我使用的是DataStream API
> 还想请教一下就是关于并行度的这个设置,应该从哪些方面进行考虑啊,麻烦各位老师指教一下
> | |
> 小昌同学
> |
> |
> ccc0606fight...@163.com
> |


不同的流程使用不同的并行度

2023-04-20 文章 小昌同学


各位老师好,请教一下关于flink的并行度的问题;
我现在数据上游是kafka(四个分区),经过Flink 
ETL处理后,实时落地到Kafka以及MYSQL,那我想在不同的阶段设置不同的并行度,这一块可以怎么使用,我使用的是DataStream API
还想请教一下就是关于并行度的这个设置,应该从哪些方面进行考虑啊,麻烦各位老师指教一下
| |
小昌同学
|
|
ccc0606fight...@163.com
|

Re: [External] Re: 用Flink Table API和RocksDB不能正常升级状态数据结构

2023-04-20 文章 Elvis Chen
感谢回复。我们在之前使用Flink 1.11的应用是可以支持增加带默认值的field。目前1.16的Table API无法兼容吗?

On Mon, Apr 17, 2023 at 11:21 PM Shammon FY  wrote:

> Hi
>
> 目前增减列数据会导致状态无法兼容
>
> Best,
> Shammon FY
>
>
> On Fri, Apr 14, 2023 at 9:09 PM Elvis Chen 
> wrote:
>
> > 我们正在使用flink-1.16.0的Table API和RocksDB作为后端,为我们的用户提供运行SQL
> >
> >
> queries的服务。表格是使用Avro模式创建的,当以兼容的方式更改模式,例如添加一个带默认值的field时,我们无法从savepoint恢复作业。这是在数据结构升级后的报错:
> > Caused by: org.apache.flink.util.StateMigrationException: The new state
> > serializer
> > (org.apache.flink.table.runtime.typeutils.RowDataSerializer@aad5b03a)
> must
> > not be incompatible with the old state serializer
> > (org.apache.flink.table.runtime.typeutils.RowDataSerializer@9d089984)
> > ...
> >
>


Re: kafka实例重启对flink作业的影响

2023-04-20 文章 Ran Tao
作业不 fo

Best Regards,
Ran Tao


Ran Tao  于2023年4月20日周四 16:12写道:

> offset 重放,mistake
>
> Best Regards,
> Ran Tao
>
>
> Ran Tao  于2023年4月20日周四 16:11写道:
>
>> 1.一种比较干净但是暴力的做法是Flink一旦检测到分区变化,就执行作业fo.
>> fo后读取最新的分区列表,旧的分区从状态中进行offer重放,新分区执行特定的点位启动策略。它的做法比较干净暴力。
>>
>> 2.第二种就是动态的分区发现(指作业fo,异步线程一直check分区变化,针对removed或者insert的分区单独处理),
>> 这个在 newKafkaSource 中已经实现了。旧的kafka source实现社区有 FLIP[1]
>> 讨论这个问题。实现侧来看,这种方案相对于第一种复杂一些,需要开发者比较小心的处理状态以及某些极端环境的fo导致的问题[2]。
>>
>> [1]
>> https://cwiki.apache.org/confluence/display/FLINK/FLIP-288%3A+Enable+Dynamic+Partition+Discovery+by+Default+in+Kafka+Source
>> [2] https://issues.apache.org/jira/browse/FLINK-31006
>>
>> 其实这两种做法不仅仅适用于kafka,对于任意的source或者mq都可以使用。希望对你有所帮助。
>>
>> Best Regards,
>> Ran Tao
>>
>>
>> casel.chen  于2023年4月20日周四 15:43写道:
>>
>>>
>>> 实际工作中会遇到kafka版本升级或者kafka扩容(横向或纵向),数据重平衡等情况,想问一下发生这些情况下对线上运行的flink作业会有什么影响?flink作业能感知topic分区发生变化吗?要如何应对以减少对flink作业消费端的影响?
>>
>>


Re: kafka实例重启对flink作业的影响

2023-04-20 文章 Ran Tao
offset 重放,mistake

Best Regards,
Ran Tao


Ran Tao  于2023年4月20日周四 16:11写道:

> 1.一种比较干净但是暴力的做法是Flink一旦检测到分区变化,就执行作业fo.
> fo后读取最新的分区列表,旧的分区从状态中进行offer重放,新分区执行特定的点位启动策略。它的做法比较干净暴力。
>
> 2.第二种就是动态的分区发现(指作业fo,异步线程一直check分区变化,针对removed或者insert的分区单独处理),
> 这个在 newKafkaSource 中已经实现了。旧的kafka source实现社区有 FLIP[1]
> 讨论这个问题。实现侧来看,这种方案相对于第一种复杂一些,需要开发者比较小心的处理状态以及某些极端环境的fo导致的问题[2]。
>
> [1]
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-288%3A+Enable+Dynamic+Partition+Discovery+by+Default+in+Kafka+Source
> [2] https://issues.apache.org/jira/browse/FLINK-31006
>
> 其实这两种做法不仅仅适用于kafka,对于任意的source或者mq都可以使用。希望对你有所帮助。
>
> Best Regards,
> Ran Tao
>
>
> casel.chen  于2023年4月20日周四 15:43写道:
>
>>
>> 实际工作中会遇到kafka版本升级或者kafka扩容(横向或纵向),数据重平衡等情况,想问一下发生这些情况下对线上运行的flink作业会有什么影响?flink作业能感知topic分区发生变化吗?要如何应对以减少对flink作业消费端的影响?
>
>


Re: kafka实例重启对flink作业的影响

2023-04-20 文章 Ran Tao
1.一种比较干净但是暴力的做法是Flink一旦检测到分区变化,就执行作业fo.
fo后读取最新的分区列表,旧的分区从状态中进行offer重放,新分区执行特定的点位启动策略。它的做法比较干净暴力。

2.第二种就是动态的分区发现(指作业fo,异步线程一直check分区变化,针对removed或者insert的分区单独处理),
这个在 newKafkaSource 中已经实现了。旧的kafka source实现社区有 FLIP[1]
讨论这个问题。实现侧来看,这种方案相对于第一种复杂一些,需要开发者比较小心的处理状态以及某些极端环境的fo导致的问题[2]。

[1]
https://cwiki.apache.org/confluence/display/FLINK/FLIP-288%3A+Enable+Dynamic+Partition+Discovery+by+Default+in+Kafka+Source
[2] https://issues.apache.org/jira/browse/FLINK-31006

其实这两种做法不仅仅适用于kafka,对于任意的source或者mq都可以使用。希望对你有所帮助。

Best Regards,
Ran Tao


casel.chen  于2023年4月20日周四 15:43写道:

>
> 实际工作中会遇到kafka版本升级或者kafka扩容(横向或纵向),数据重平衡等情况,想问一下发生这些情况下对线上运行的flink作业会有什么影响?flink作业能感知topic分区发生变化吗?要如何应对以减少对flink作业消费端的影响?


Re: kafka实例重启对flink作业的影响

2023-04-20 文章 Weihua Hu
Flink kafka connector 支持自动发现 partition,可以参考官方文档[1]

[1]
https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/connectors/datastream/kafka/#dynamic-partition-discovery


Best,
Weihua


On Thu, Apr 20, 2023 at 3:43 PM casel.chen  wrote:

>
> 实际工作中会遇到kafka版本升级或者kafka扩容(横向或纵向),数据重平衡等情况,想问一下发生这些情况下对线上运行的flink作业会有什么影响?flink作业能感知topic分区发生变化吗?要如何应对以减少对flink作业消费端的影响?


kafka实例重启对flink作业的影响

2023-04-20 文章 casel.chen
实际工作中会遇到kafka版本升级或者kafka扩容(横向或纵向),数据重平衡等情况,想问一下发生这些情况下对线上运行的flink作业会有什么影响?flink作业能感知topic分区发生变化吗?要如何应对以减少对flink作业消费端的影响?

退订

2023-04-19 文章 曹佳清
退订


Re: 退订

2023-04-19 文章 Biao Geng
Hi,
退订可以发送邮件到 
user-zh-unsubscr...@flink.apache.org

From: 琴师 <1129656...@qq.com.INVALID>
Date: Wednesday, April 19, 2023 at 4:42 PM
To: user-zh 
Subject: 退订
退订


琴师
1129656...@qq.com






回复:控制台打印出流式数据

2023-04-19 文章 小昌同学
好滴呀  谢谢老师


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | Jason_H |
| 发送日期 | 2023年4月19日 16:06 |
| 收件人 | flink中文邮件组 |
| 主题 | 回复:控制台打印出流式数据 |
这个方法就可以打印在你本地的idea控制台里面,你试一下


| |
Jason_H
|
|
hyb_he...@163.com
|
 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年4月19日 16:01 |
| 收件人 | user-zh |
| 抄送人 | user-zh |
| 主题 | 回复:控制台打印出流式数据 |
这个print是将数据打印再flink的stud out吧,我现在是再本地进行调试,想在本地上打印出来结果


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | Jason_H |
| 发送日期 | 2023年4月19日 15:58 |
| 收件人 | flink中文邮件组 |
| 主题 | 回复:控制台打印出流式数据 |
hi,你好
你应该使用 stream.print() 来打印流中的数据 不要system out 输出


| |
Jason_H
|
|
hyb_he...@163.com
|
 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年4月19日 15:51 |
| 收件人 | user-zh |
| 主题 | 控制台打印出流式数据 |


各位老师好,请教一个问题,就是上游的数据源是Kafka,编辑工具是idea,再new  
FlinkKafkaConsumer后,得到一条流stream,我想看一下流中的数据,直接  
System.out.println(stream.toString);
但是从控制台打印结果来看,打印出来的还是地址值,请各位老师指导一下




| |
小昌同学
|
|
ccc0606fight...@163.com
|

回复:flink命令行提交作业读取不到properties配置文件

2023-04-19 文章 小昌同学
我这边的做法是将配置文件也当作一条流进行读取,程序会自动读取,不需要再任务启动的时候指定;希望对你有帮助呀


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | Jason_H |
| 发送日期 | 2023年4月19日 15:57 |
| 收件人 | flink中文邮件组 ,
user-zh-subscribe |
| 主题 | flink命令行提交作业读取不到properties配置文件 |
hi,大家好
我在使用命令行提交任务时,发现任务刚起来就会报错,根据错误发现没有读去到jar包中resource目录下的properties配置文件,导致在使用redis时,初始化报错
提交命令如下:
flink run -c com.test..etl.OdsChangeApplication 
/opt/dobrain/app/etl/test-etl-0.0.2-SNAPSHOT.jar \
-p 4 \
-job-name test-etl \


此处没有添加redis配置参数,但是配置文件中已经有默认的,提交运行后报错:
java.lang.IllegalArgumentException: template not initialized; call 
afterPropertiesSet() before using it
at org.springframework.util.Assert.isTrue(Assert.java:121) 
~[spring-core-5.2.14.RELEASE.jar:5.2.14.RELEASE]
at 
org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:204)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
at 
org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:188)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
at 
org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:96)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
at 
org.springframework.data.redis.core.DefaultValueOperations.get(DefaultValueOperations.java:53)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
at com.test.etl.client.RedisService.getStringValue(RedisService.java:30) 
~[classes/:?]
at 
com.test.etl.manager.impl.RedisChangeManager.getCustId(RedisChangeManager.java:53)
 ~[classes/:?]
at 
com.test.etl.transformation.process.MsgHandleProcess.processElement(MsgHandleProcess.java:46)
 ~[classes/:?]
at 
com.test.etl.transformation.process.MsgHandleProcess.processElement(MsgHandleProcess.java:21)
 ~[classes/:?]
at 
org.apache.flink.streaming.api.operators.KeyedProcessOperator.processElement(KeyedProcessOperator.java:83)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.tasks.OneInputStreamTask$StreamTaskNetworkOutput.emitRecord(OneInputStreamTask.java:233)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.io.AbstractStreamTaskNetworkInput.processElement(AbstractStreamTaskNetworkInput.java:134)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.io.AbstractStreamTaskNetworkInput.emitNext(AbstractStreamTaskNetworkInput.java:105)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.io.StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:65)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:519)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:203)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:804)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:753) 
~[flink-streaming-java-1.15.2.jar:1.15.2]
at 
org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:948)
 ~[flink-runtime-1.15.2.jar:1.15.2]
at org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927) 
~[flink-runtime-1.15.2.jar:1.15.2]
at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:741) 
~[flink-runtime-1.15.2.jar:1.15.2]
at org.apache.flink.runtime.taskmanager.Task.run(Task.java:563) 
~[flink-runtime-1.15.2.jar:1.15.2]
at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_201]


我尝试在命令行添加了redis的参数,启动任务测试发现也会报如下的错误


请问大佬们,这个怎么解决,就是在命令行提交任务,怎么可以读取到jar包中定义的properties配置文件呢


| |
Jason_H
|
|
hyb_he...@163.com
|

回复:控制台打印出流式数据

2023-04-19 文章 Jason_H
这个方法就可以打印在你本地的idea控制台里面,你试一下


| |
Jason_H
|
|
hyb_he...@163.com
|
 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年4月19日 16:01 |
| 收件人 | user-zh |
| 抄送人 | user-zh |
| 主题 | 回复:控制台打印出流式数据 |
这个print是将数据打印再flink的stud out吧,我现在是再本地进行调试,想在本地上打印出来结果


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | Jason_H |
| 发送日期 | 2023年4月19日 15:58 |
| 收件人 | flink中文邮件组 |
| 主题 | 回复:控制台打印出流式数据 |
hi,你好
你应该使用 stream.print() 来打印流中的数据 不要system out 输出


| |
Jason_H
|
|
hyb_he...@163.com
|
 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年4月19日 15:51 |
| 收件人 | user-zh |
| 主题 | 控制台打印出流式数据 |


各位老师好,请教一个问题,就是上游的数据源是Kafka,编辑工具是idea,再new  
FlinkKafkaConsumer后,得到一条流stream,我想看一下流中的数据,直接  
System.out.println(stream.toString);
但是从控制台打印结果来看,打印出来的还是地址值,请各位老师指导一下




| |
小昌同学
|
|
ccc0606fight...@163.com
|

回复:控制台打印出流式数据

2023-04-19 文章 小昌同学
这个print是将数据打印再flink的stud out吧,我现在是再本地进行调试,想在本地上打印出来结果


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | Jason_H |
| 发送日期 | 2023年4月19日 15:58 |
| 收件人 | flink中文邮件组 |
| 主题 | 回复:控制台打印出流式数据 |
hi,你好
你应该使用 stream.print() 来打印流中的数据 不要system out 输出


| |
Jason_H
|
|
hyb_he...@163.com
|
 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年4月19日 15:51 |
| 收件人 | user-zh |
| 主题 | 控制台打印出流式数据 |


各位老师好,请教一个问题,就是上游的数据源是Kafka,编辑工具是idea,再new  
FlinkKafkaConsumer后,得到一条流stream,我想看一下流中的数据,直接  
System.out.println(stream.toString);
但是从控制台打印结果来看,打印出来的还是地址值,请各位老师指导一下




| |
小昌同学
|
|
ccc0606fight...@163.com
|

回复:控制台打印出流式数据

2023-04-19 文章 Jason_H
hi,你好
你应该使用 stream.print() 来打印流中的数据 不要system out 输出


| |
Jason_H
|
|
hyb_he...@163.com
|
 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年4月19日 15:51 |
| 收件人 | user-zh |
| 主题 | 控制台打印出流式数据 |


各位老师好,请教一个问题,就是上游的数据源是Kafka,编辑工具是idea,再new  
FlinkKafkaConsumer后,得到一条流stream,我想看一下流中的数据,直接  
System.out.println(stream.toString);
但是从控制台打印结果来看,打印出来的还是地址值,请各位老师指导一下




| |
小昌同学
|
|
ccc0606fight...@163.com
|

flink命令行提交作业读取不到properties配置文件

2023-04-19 文章 Jason_H
hi,大家好
我在使用命令行提交任务时,发现任务刚起来就会报错,根据错误发现没有读去到jar包中resource目录下的properties配置文件,导致在使用redis时,初始化报错
提交命令如下:
flink run -c com.test..etl.OdsChangeApplication 
/opt/dobrain/app/etl/test-etl-0.0.2-SNAPSHOT.jar \
-p 4 \
-job-name test-etl \


此处没有添加redis配置参数,但是配置文件中已经有默认的,提交运行后报错:
java.lang.IllegalArgumentException: template not initialized; call 
afterPropertiesSet() before using it
 at org.springframework.util.Assert.isTrue(Assert.java:121) 
~[spring-core-5.2.14.RELEASE.jar:5.2.14.RELEASE]
 at 
org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:204)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
 at 
org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:188)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
 at 
org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:96)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
 at 
org.springframework.data.redis.core.DefaultValueOperations.get(DefaultValueOperations.java:53)
 ~[spring-data-redis-2.3.9.RELEASE.jar:2.3.9.RELEASE]
 at com.test.etl.client.RedisService.getStringValue(RedisService.java:30) 
~[classes/:?]
 at 
com.test.etl.manager.impl.RedisChangeManager.getCustId(RedisChangeManager.java:53)
 ~[classes/:?]
 at 
com.test.etl.transformation.process.MsgHandleProcess.processElement(MsgHandleProcess.java:46)
 ~[classes/:?]
 at 
com.test.etl.transformation.process.MsgHandleProcess.processElement(MsgHandleProcess.java:21)
 ~[classes/:?]
 at 
org.apache.flink.streaming.api.operators.KeyedProcessOperator.processElement(KeyedProcessOperator.java:83)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.tasks.OneInputStreamTask$StreamTaskNetworkOutput.emitRecord(OneInputStreamTask.java:233)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.io.AbstractStreamTaskNetworkInput.processElement(AbstractStreamTaskNetworkInput.java:134)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.io.AbstractStreamTaskNetworkInput.emitNext(AbstractStreamTaskNetworkInput.java:105)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.io.StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:65)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:519)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:203)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:804)
 ~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:753) 
~[flink-streaming-java-1.15.2.jar:1.15.2]
 at 
org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:948)
 ~[flink-runtime-1.15.2.jar:1.15.2]
 at org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927) 
~[flink-runtime-1.15.2.jar:1.15.2]
 at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:741) 
~[flink-runtime-1.15.2.jar:1.15.2]
 at org.apache.flink.runtime.taskmanager.Task.run(Task.java:563) 
~[flink-runtime-1.15.2.jar:1.15.2]
 at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_201]


我尝试在命令行添加了redis的参数,启动任务测试发现也会报如下的错误


请问大佬们,这个怎么解决,就是在命令行提交任务,怎么可以读取到jar包中定义的properties配置文件呢


| |
Jason_H
|
|
hyb_he...@163.com
|

控制台打印出流式数据

2023-04-19 文章 小昌同学


各位老师好,请教一个问题,就是上游的数据源是Kafka,编辑工具是idea,再new  
FlinkKafkaConsumer后,得到一条流stream,我想看一下流中的数据,直接  
System.out.println(stream.toString);
但是从控制台打印结果来看,打印出来的还是地址值,请各位老师指导一下




| |
小昌同学
|
|
ccc0606fight...@163.com
|

Re: Re: Re: sink mysql id自增表数据会丢失

2023-04-18 文章 Shammon FY
退订请发送任意邮件到 user-zh-unsubscr...@flink.apache.org
,可以参考
https://flink.apache.org/community.html#how-to-subscribe-to-a-mailing-list

On Wed, Apr 19, 2023 at 9:31 AM 王国成  wrote:

> 退订
>
>
>
>
>
>
>
>
>
>
>
> 在 2023-04-19 09:15:09,"Shammon FY"  写道:
> >如果想让mysql生成自增主键,可以在flink ddl的table里不增加主键字段,然后flink作业直接写入数据到table就可以了
> >
> >On Tue, Apr 18, 2023 at 5:38 PM Jeff  wrote:
> >
> >> 在sink时指定字段不可以不包括自增主键的列。
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> 在 2023-04-17 07:29:16,"Shammon FY"  写道:
> >> >Hi
> >> >
> >> >如果想使用mysql的自增主键,应该是在插入的时候不要写自增主键的列吧,可以在insert的时候直接指定需要插入的列试试?
> >> >
> >> >On Sun, Apr 16, 2023 at 7:58 PM Jeff  wrote:
> >> >
> >> >> sink数据到mysql catalog内的表时,当表只一个自增主键id无其唯一索引时,同一批写入的数据只会保存一条,其它数据会丢失。
> >> >>
> >> >>
> >> >>  mysql内表ddl:
> >> >>
> >> >> create table test (id bigint primary key auto_increment , passport
> >> >> varchar);
> >> >>
> >> >>
> >> >> flink sql:
> >> >> insert into mysql_catalog.test select 0, passport from source_table;
> >> >>
> >> >> 之所以select 0是表示使用物理表的自增值。
> >>
>


Re:Re: Re: sink mysql id自增表数据会丢失

2023-04-18 文章 王国成
退订











在 2023-04-19 09:15:09,"Shammon FY"  写道:
>如果想让mysql生成自增主键,可以在flink ddl的table里不增加主键字段,然后flink作业直接写入数据到table就可以了
>
>On Tue, Apr 18, 2023 at 5:38 PM Jeff  wrote:
>
>> 在sink时指定字段不可以不包括自增主键的列。
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> 在 2023-04-17 07:29:16,"Shammon FY"  写道:
>> >Hi
>> >
>> >如果想使用mysql的自增主键,应该是在插入的时候不要写自增主键的列吧,可以在insert的时候直接指定需要插入的列试试?
>> >
>> >On Sun, Apr 16, 2023 at 7:58 PM Jeff  wrote:
>> >
>> >> sink数据到mysql catalog内的表时,当表只一个自增主键id无其唯一索引时,同一批写入的数据只会保存一条,其它数据会丢失。
>> >>
>> >>
>> >>  mysql内表ddl:
>> >>
>> >> create table test (id bigint primary key auto_increment , passport
>> >> varchar);
>> >>
>> >>
>> >> flink sql:
>> >> insert into mysql_catalog.test select 0, passport from source_table;
>> >>
>> >> 之所以select 0是表示使用物理表的自增值。
>>


Re: Re: sink mysql id自增表数据会丢失

2023-04-18 文章 Shammon FY
如果想让mysql生成自增主键,可以在flink ddl的table里不增加主键字段,然后flink作业直接写入数据到table就可以了

On Tue, Apr 18, 2023 at 5:38 PM Jeff  wrote:

> 在sink时指定字段不可以不包括自增主键的列。
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> 在 2023-04-17 07:29:16,"Shammon FY"  写道:
> >Hi
> >
> >如果想使用mysql的自增主键,应该是在插入的时候不要写自增主键的列吧,可以在insert的时候直接指定需要插入的列试试?
> >
> >On Sun, Apr 16, 2023 at 7:58 PM Jeff  wrote:
> >
> >> sink数据到mysql catalog内的表时,当表只一个自增主键id无其唯一索引时,同一批写入的数据只会保存一条,其它数据会丢失。
> >>
> >>
> >>  mysql内表ddl:
> >>
> >> create table test (id bigint primary key auto_increment , passport
> >> varchar);
> >>
> >>
> >> flink sql:
> >> insert into mysql_catalog.test select 0, passport from source_table;
> >>
> >> 之所以select 0是表示使用物理表的自增值。
>


Re: flink api消费kafka(avro)数据出错

2023-04-18 文章 Shammon FY
Hi

看着是解析数据错误,可以检查一下是不是source的schema和数据不匹配

On Tue, Apr 18, 2023 at 2:46 PM kcz <573693...@qq.com.invalid> wrote:

> 版本:1.15.2
>1.首先是采用SQL方式,将json数据输入到kafka里面(avro格式)
>2.然后采用DS api方式去接收解析kafka里面的avro数据
> --报错如下--
> Caused by: java.io.IOException: Failed to deserialize consumer record due
> to
> at
> org.apache.flink.connector.kafka.source.reader.KafkaRecordEmitter.emitRecord(KafkaRecordEmitter.java:56)
> at
> org.apache.flink.connector.kafka.source.reader.KafkaRecordEmitter.emitRecord(KafkaRecordEmitter.java:33)
> at
> org.apache.flink.connector.base.source.reader.SourceReaderBase.pollNext(SourceReaderBase.java:143)
> at
> org.apache.flink.streaming.api.operators.SourceOperator.emitNext(SourceOperator.java:385)
> at org.apache.flink.streaming.runtime.io
> .StreamTaskSourceInput.emitNext(StreamTaskSourceInput.java:68)
> at org.apache.flink.streaming.runtime.io
> .StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:65)
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:519)
> at
> org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:203)
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:804)
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:753)
> at
> org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:948)
> at
> org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927)
> at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:741)
> at org.apache.flink.runtime.taskmanager.Task.run(Task.java:563)
> at java.lang.Thread.run(Thread.java:748)
> Caused by: org.apache.avro.AvroRuntimeException: Malformed data. Length is
> negative: -49
> at org.apache.avro.io
> .BinaryDecoder.readString(BinaryDecoder.java:308)
> at org.apache.avro.io
> .ResolvingDecoder.readString(ResolvingDecoder.java:208)
> at
> org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:470)
> at
> org.apache.avro.generic.GenericDatumReader.readString(GenericDatumReader.java:460)
> at
> org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:192)
> at
> org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:161)
> at
> org.apache.avro.generic.GenericDatumReader.readField(GenericDatumReader.java:260)
> at
> org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:248)
> at
> org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:180)
> at
> org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:161)
> at
> org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:154)
> at
> org.apache.flink.formats.avro.AvroDeserializationSchema.deserialize(AvroDeserializationSchema.java:142)
> at
> org.apache.flink.api.common.serialization.DeserializationSchema.deserialize(DeserializationSchema.java:82)
> at
> org.apache.flink.connector.kafka.source.reader.deserializer.KafkaValueOnlyDeserializationSchemaWrapper.deserialize(KafkaValueOnlyDeserializationSchemaWrapper.java:51)
> at
> org.apache.flink.connector.kafka.source.reader.KafkaRecordEmitter.emitRecord(KafkaRecordEmitter.java:53)
> ... 14 more
> Disconnected from the target VM, address: '127.0.0.1:60668', transport:
> 'socket'
>
>
> Process finished with exit code 1
>
>
>
> --第一步SQL代码如下--
>create table test (
>   a string,
>   b string,
>   c string
>   ) WITH (
>  'connector' = 'kafka',
>  'topic' = 'sink',
>  'properties.bootstrap.servers' =
> 'localhost:9092',
>  'format' = 'avro',
> 
> 'properties.allow.auto.create.topics' = 'true'
>  );
>
>
>   create table test_consumer (
>   a string,
>   b string,
>   c string
>   ) WITH (
>  'connector' = 'kafka',
>  'topic' = 'source',
>  'properties.bootstrap.servers' =
> 'localhost:9092',
>  'format' = 'json',
> 
> 'properties.allow.auto.create.topics' = 'true',
>  'properties.group.id' = 'group',
>
>  'scan.startup.mode' =
> 'latest-offset'
>  );
>   insert into test select * from test_consumer;
>
>
>
>
> -第二步API接收kafka
> avro代码如下-
>
>
> public 

Re: 退订

2023-04-18 文章 Biao Geng
Hi,
退订可以发送邮件到 
user-zh-unsubscr...@flink.apache.org
 

From: 杨伟伟 
Date: Tuesday, April 18, 2023 at 9:32 AM
To: user-zh@flink.apache.org 
Subject: 退订
退订


退订

2023-04-18 文章 ji_longzhang



Re:Re: sink mysql id自增表数据会丢失

2023-04-18 文章 Jeff
在sink时指定字段不可以不包括自增主键的列。

















在 2023-04-17 07:29:16,"Shammon FY"  写道:
>Hi
>
>如果想使用mysql的自增主键,应该是在插入的时候不要写自增主键的列吧,可以在insert的时候直接指定需要插入的列试试?
>
>On Sun, Apr 16, 2023 at 7:58 PM Jeff  wrote:
>
>> sink数据到mysql catalog内的表时,当表只一个自增主键id无其唯一索引时,同一批写入的数据只会保存一条,其它数据会丢失。
>>
>>
>>  mysql内表ddl:
>>
>> create table test (id bigint primary key auto_increment , passport
>> varchar);
>>
>>
>> flink sql:
>> insert into mysql_catalog.test select 0, passport from source_table;
>>
>> 之所以select 0是表示使用物理表的自增值。


udf函数不能使用DataTypeHint("Row>")

2023-04-18 文章 Jeff
在自定义函数中使用DataTypeHint("Row>")时报错,错误内容为:


Caused by: java.lang.ClassCastException: class [I cannot be cast to class 
[Ljava.lang.Object; ([I and [Ljava.lang.Object; are in module java.base of 
loader 'bootstrap')
\tat 
org.apache.flink.table.data.conversion.ArrayObjectArrayConverter.toInternal(ArrayObjectArrayConverter.java:40)
\tat 
org.apache.flink.table.data.conversion.DataStructureConverter.toInternalOrNull(DataStructureConverter.java:61)
\tat 
org.apache.flink.table.data.conversion.RowRowConverter.toInternal(RowRowConverter.java:75)
\tat 
org.apache.flink.table.data.conversion.RowRowConverter.toInternal(RowRowConverter.java:37)
\tat 
org.apache.flink.table.data.conversion.DataStructureConverter.toInternalOrNull(DataStructureConverter.java:61)
\tat StreamExecCalc$251.processElement_split9(Unknown Source)
\tat StreamExecCalc$251.processElement(Unknown Source)
\tat 
org.apache.flink.streaming.runtime.tasks.CopyingChainingOutput.pushToOperator(CopyingChainingOutput.java:82)


函数内容如下:
@DataTypeHint("Row>")
 public  Row eval() {
   int[] i = new int[3];
 return Row.of(i);
}


测试其它简单类型时就不会报这个错,所以不是环境问题。

退订

2023-04-17 文章 杨伟伟
退订

Re: 退订

2023-04-17 文章 Shammon FY
退订请发送任意邮件到 user-zh-unsubscr...@flink.apache.org
,可以参考
https://flink.apache.org/community.html#how-to-subscribe-to-a-mailing-list

On Fri, Apr 14, 2023 at 7:32 PM daniel sun  wrote:

> 退订
> zjw 于2023年4月14日 周五下午7:17写道:
>
> >
>


Re: 流数据转化为json

2023-04-17 文章 Weihua Hu
Hi,

你使用的那个 Flink 版本,建议直接参考 Flink 官方 kafka connector 文档[1]。
转换为 Json 数据格式可以使用 flink-json  format

[1]
https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/datastream/kafka/#kafka-sink
[2]
https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/datastream/formats/json/

Best,
Weihua


On Fri, Apr 14, 2023 at 7:17 PM 小昌同学  wrote:

> 你好,请问一下上游的数据是
> SingleOutputStreamOperator outPutInfoStream =
> keyedStream.process(new KeyStreamFunc());
> 数据样式为:InPutInfo[phone='123456',workId='001']
> 我想直接将这个流输入到kafka中,直接使用addsink算子,但是查看kafka日志发现,数据内容没有插入进来,想请教一下有没有什么解决方案;
> 我现在自己想着将流中的数据转换为json,但是我使用了gson以及fastjson都不行,请各位大佬指点
> | |
> 小昌同学
> |
> |
> ccc0606fight...@163.com
> |


Flink Streaming API ElasticSearch Connector 长连接

2023-04-17 文章 Yuze Wei
各位大佬好!

我在使用Flink ES连接器的时候,有时候报以下错误:

Caused by: java.io.IOException
breakpoint : 远程主机强迫关闭了一个现有的连接

初步判断,应该是没有维持住长连接保活,所以如果一段时间不写入数据,连接就断了。

请问各位大佬,ElasticSearch Connector 有什么参数可以维持长连接吗?

ElasticSearch Connector 代码如下:

jsonStringStream
.sinkTo(
new Elasticsearch7SinkBuilder()
// Instructs the sink to emit after every Nth buffered 
element
.setBulkFlushMaxActions(1)
.setHosts(
new HttpHost(

Conn.getInstance().getProp("elasticsearch.hosts"),
Integer.parseInt(

Conn.getInstance().getProp("elasticsearch.port")
),

Conn.getInstance().getProp("elasticsearch.scheme")
)
)
.setEmitter(
(page, context, indexer) ->
indexer.add(
new 
IndexRequest(Conn.getInstance().getProp("elasticsearch.index.page"))
.source(page, 
XContentType.JSON)
)
)

.setBulkFlushBackoffStrategy(FlushBackoffType.EXPONENTIAL, 5, 1000)
.build());

报错如下:
[cid:71c0dada-02b0-4a0d-b16f-97bb0d65167f]

多谢指教!


Re: 用Flink Table API和RocksDB不能正常升级状态数据结构

2023-04-17 文章 Shammon FY
Hi

目前增减列数据会导致状态无法兼容

Best,
Shammon FY


On Fri, Apr 14, 2023 at 9:09 PM Elvis Chen 
wrote:

> 我们正在使用flink-1.16.0的Table API和RocksDB作为后端,为我们的用户提供运行SQL
>
> queries的服务。表格是使用Avro模式创建的,当以兼容的方式更改模式,例如添加一个带默认值的field时,我们无法从savepoint恢复作业。这是在数据结构升级后的报错:
> Caused by: org.apache.flink.util.StateMigrationException: The new state
> serializer
> (org.apache.flink.table.runtime.typeutils.RowDataSerializer@aad5b03a) must
> not be incompatible with the old state serializer
> (org.apache.flink.table.runtime.typeutils.RowDataSerializer@9d089984)
> ...
>


Re: 流数据转化为json

2023-04-17 文章 Shammon FY
Hi

对于kafka的问题,使用print或者其他方式有数据输出吗?可以通过这种方式确认一下是作业本身的数据问题还是kafka的问题

Best,
Shammon FY


On Fri, Apr 14, 2023 at 7:17 PM 小昌同学  wrote:

> 你好,请问一下上游的数据是
> SingleOutputStreamOperator outPutInfoStream =
> keyedStream.process(new KeyStreamFunc());
> 数据样式为:InPutInfo[phone='123456',workId='001']
> 我想直接将这个流输入到kafka中,直接使用addsink算子,但是查看kafka日志发现,数据内容没有插入进来,想请教一下有没有什么解决方案;
> 我现在自己想着将流中的数据转换为json,但是我使用了gson以及fastjson都不行,请各位大佬指点
> | |
> 小昌同学
> |
> |
> ccc0606fight...@163.com
> |


Re: sink mysql id自增表数据会丢失

2023-04-17 文章 Shammon FY
Hi

如果想使用mysql的自增主键,应该是在插入的时候不要写自增主键的列吧,可以在insert的时候直接指定需要插入的列试试?

On Sun, Apr 16, 2023 at 7:58 PM Jeff  wrote:

> sink数据到mysql catalog内的表时,当表只一个自增主键id无其唯一索引时,同一批写入的数据只会保存一条,其它数据会丢失。
>
>
>  mysql内表ddl:
>
> create table test (id bigint primary key auto_increment , passport
> varchar);
>
>
> flink sql:
> insert into mysql_catalog.test select 0, passport from source_table;
>
> 之所以select 0是表示使用物理表的自增值。


sink mysql id自增表数据会丢失

2023-04-16 文章 Jeff
sink数据到mysql catalog内的表时,当表只一个自增主键id无其唯一索引时,同一批写入的数据只会保存一条,其它数据会丢失。 


 mysql内表ddl:

create table test (id bigint primary key auto_increment , passport varchar);


flink sql:
insert into mysql_catalog.test select 0, passport from source_table;
 
之所以select 0是表示使用物理表的自增值。

ValueError: unsupported pickle protocol: 5

2023-04-15 文章 casel.chen
我在尝试提交pyflink作业到k8s,按照这篇文章[1]介绍操作的,pyflink镜像文件[2],flink版本是1.15.2,执行wordcount 
jar作业没遇到问题,而在提交pyflink作业时发现作业失败了,日志显示如下。我本地安装的python 3.7.9和pyflink镜像中的版本是一致的,
请问是不是pickle包版本有问题?
怎样查看当前pickle包版本号是多少?
期望用的pickle包版本号是多少?
如何将当前pickle包安装成期望的版本?


./bin/flink run \
-m localhost:8081 \
-py ./examples/python/table/word_count.py


2023-04-1516:52:27
org.apache.flink.runtime.taskmanager.AsynchronousException: 
Caughtexceptionwhile processing timer.
at 
org.apache.flink.streaming.runtime.tasks.StreamTask$StreamTaskAsyncExceptionHandler.handleAsyncException(StreamTask.java:1535)
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.handleAsyncException(StreamTask.java:1510)
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.invokeProcessingTimeCallback(StreamTask.java:1650)
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.lambda$null$21(StreamTask.java:1639)
at 
org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$SynchronizedStreamTaskActionExecutor.runThrowing(StreamTaskActionExecutor.java:93)
at org.apache.flink.streaming.runtime.tasks.mailbox.Mail.run(Mail.java:90)
at 
org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.processMailsWhenDefaultActionUnavailable(MailboxProcessor.java:338)
at 
org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.processMail(MailboxProcessor.java:324)
at 
org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:201)
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:804)
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:753)
at 
org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:948)
at org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927)
at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:741)
at org.apache.flink.runtime.taskmanager.Task.run(Task.java:563)
at java.base/java.lang.Thread.run(UnknownSource)
Causedby: TimerException{java.lang.RuntimeException: Errorwhile waiting 
forBeamPythonFunctionRunner flush}
... 14 more
Causedby: java.lang.RuntimeException: Errorwhile waiting 
forBeamPythonFunctionRunner flush
at 
org.apache.flink.streaming.api.operators.python.AbstractExternalPythonFunctionOperator.invokeFinishBundle(AbstractExternalPythonFunctionOperator.java:106)
at 
org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator.checkInvokeFinishBundleByTime(AbstractPythonFunctionOperator.java:299)
at 
org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator.lambda$open$0(AbstractPythonFunctionOperator.java:115)
at 
org.apache.flink.streaming.runtime.tasks.StreamTask.invokeProcessingTimeCallback(StreamTask.java:1648)
... 13 more
Causedby: java.lang.RuntimeException: Failed to close remote bundle
at 
org.apache.flink.streaming.api.runners.python.beam.BeamPythonFunctionRunner.finishBundle(BeamPythonFunctionRunner.java:382)
at 
org.apache.flink.streaming.api.runners.python.beam.BeamPythonFunctionRunner.flush(BeamPythonFunctionRunner.java:366)
at 
org.apache.flink.streaming.api.operators.python.AbstractExternalPythonFunctionOperator.lambda$invokeFinishBundle$0(AbstractExternalPythonFunctionOperator.java:85)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(UnknownSource)
at java.base/java.util.concurrent.FutureTask.run(UnknownSource)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(UnknownSource)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(UnknownSource)
... 1 more
Causedby: java.util.concurrent.ExecutionException: java.lang.RuntimeException: 
Error received fromSDK harness for instruction 1: Traceback (most recent call 
last):
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/sdk_worker.py",
 line 289, in _execute
response = task()
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/sdk_worker.py",
 line 362, in 
lambda: self.create_worker().do_instruction(request), request)
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/sdk_worker.py",
 line 607, in do_instruction
getattr(request, request_type), request.instruction_id)
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/sdk_worker.py",
 line 638, in process_bundle
instruction_id, request.process_bundle_descriptor_id)
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/sdk_worker.py",
 line 467, inget
self.data_channel_factory)
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/bundle_processor.py",
 line 868, in __init__
self.ops = self.create_execution_tree(self.process_bundle_descriptor)
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/bundle_processor.py",
 line 925, in create_execution_tree
descriptor.transforms, key=topological_height, reverse=True)])
File"/usr/local/lib/python3.7/site-packages/apache_beam/runners/worker/bundle_processor.py",
 line 924, in 

用Flink Table API和RocksDB不能正常升级状态数据结构

2023-04-14 文章 Elvis Chen
我们正在使用flink-1.16.0的Table API和RocksDB作为后端,为我们的用户提供运行SQL
queries的服务。表格是使用Avro模式创建的,当以兼容的方式更改模式,例如添加一个带默认值的field时,我们无法从savepoint恢复作业。这是在数据结构升级后的报错:
Caused by: org.apache.flink.util.StateMigrationException: The new state
serializer
(org.apache.flink.table.runtime.typeutils.RowDataSerializer@aad5b03a) must
not be incompatible with the old state serializer
(org.apache.flink.table.runtime.typeutils.RowDataSerializer@9d089984)
...


Re: 退订

2023-04-14 文章 daniel sun
退订
zjw 于2023年4月14日 周五下午7:17写道:

>


流数据转化为json

2023-04-14 文章 小昌同学
你好,请问一下上游的数据是
SingleOutputStreamOperator outPutInfoStream = 
keyedStream.process(new KeyStreamFunc());
数据样式为:InPutInfo[phone='123456',workId='001']
我想直接将这个流输入到kafka中,直接使用addsink算子,但是查看kafka日志发现,数据内容没有插入进来,想请教一下有没有什么解决方案;
我现在自己想着将流中的数据转换为json,但是我使用了gson以及fastjson都不行,请各位大佬指点
| |
小昌同学
|
|
ccc0606fight...@163.com
|

回复:flink sink web ui显示为Sink: Unnamed

2023-04-14 文章 小昌同学
好滴,谢谢各位老师


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | hjw |
| 发送日期 | 2023年4月14日 16:38 |
| 收件人 |  |
| 主题 | Re:flink sink web ui显示为Sink: Unnamed |
可以在算子后面调用.name()方法指定名称,方法参数就是算子名称。
比如需sink的流为stream
stream.sinkTo(Sink算子).name("sink-name")




--

Best,
Hjw





在 2023-04-14 16:26:35,"小昌同学"  写道:
我将流式数据输出到mysql,查看flink 自带的web ui界面,有一个sink节点显示为Sink: Unnamed ,这个针对sink节点可以命名嘛


| |
小昌同学
|
|
ccc0606fight...@163.com
|


退订

2023-04-14 文章 zjw



退订

2023-04-14 文章 huang huang



Re: flink sink web ui显示为Sink: Unnamed

2023-04-14 文章 Weihua Hu
可以,在算子后可以通过 .name("xxx") 来命名

Best,
Weihua


On Fri, Apr 14, 2023 at 4:27 PM 小昌同学  wrote:

> 我将流式数据输出到mysql,查看flink 自带的web ui界面,有一个sink节点显示为Sink: Unnamed
> ,这个针对sink节点可以命名嘛
>
>
> | |
> 小昌同学
> |
> |
> ccc0606fight...@163.com
> |


Re:flink sink web ui显示为Sink: Unnamed

2023-04-14 文章 hjw
可以在算子后面调用.name()方法指定名称,方法参数就是算子名称。
比如需sink的流为stream
stream.sinkTo(Sink算子).name("sink-name")




--

Best,
Hjw





在 2023-04-14 16:26:35,"小昌同学"  写道:
>我将流式数据输出到mysql,查看flink 自带的web ui界面,有一个sink节点显示为Sink: Unnamed ,这个针对sink节点可以命名嘛
>
>
>| |
>小昌同学
>|
>|
>ccc0606fight...@163.com
>|


flink sink web ui显示为Sink: Unnamed

2023-04-14 文章 小昌同学
我将流式数据输出到mysql,查看flink 自带的web ui界面,有一个sink节点显示为Sink: Unnamed ,这个针对sink节点可以命名嘛


| |
小昌同学
|
|
ccc0606fight...@163.com
|

回复:打印不同流怎么进行区分

2023-04-14 文章 小昌同学
好滴,谢谢您


| |
小昌同学
|
|
ccc0606fight...@163.com
|
 回复的原邮件 
| 发件人 | 17610775726<17610775...@163.com> |
| 发送日期 | 2023年4月14日 10:27 |
| 收件人 | user-zh@flink.apache.org |
| 抄送人 | user-zh |
| 主题 | 回复:打印不同流怎么进行区分 |
Hi



Print 方法是可以传入一个参数的,用来标识某个流,比如 print(“a”); print(“b");


Best
JasonLee


 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年04月14日 09:46 |
| 收件人 | user-zh |
| 主题 | 打印不同流怎么进行区分 |
你好,请问一下再一个程序中,有流与流之间的转换,比如说流A转换为流B,那我想看看流A,也想看看流B,请问我该怎么实现,直接print的话,再控制面板会乱掉


| |
小昌同学
|
|
ccc0606fight...@163.com
|

回复:打印不同流怎么进行区分

2023-04-13 文章 17610775726
Hi



Print 方法是可以传入一个参数的,用来标识某个流,比如 print(“a”); print(“b");


Best
JasonLee


 回复的原邮件 
| 发件人 | 小昌同学 |
| 发送日期 | 2023年04月14日 09:46 |
| 收件人 | user-zh |
| 主题 | 打印不同流怎么进行区分 |
你好,请问一下再一个程序中,有流与流之间的转换,比如说流A转换为流B,那我想看看流A,也想看看流B,请问我该怎么实现,直接print的话,再控制面板会乱掉


| |
小昌同学
|
|
ccc0606fight...@163.com
|

打印不同流怎么进行区分

2023-04-13 文章 小昌同学
你好,请问一下再一个程序中,有流与流之间的转换,比如说流A转换为流B,那我想看看流A,也想看看流B,请问我该怎么实现,直接print的话,再控制面板会乱掉


| |
小昌同学
|
|
ccc0606fight...@163.com
|

Re: 退订

2023-04-13 文章 Shammon FY
退订请发送任意邮件到 user-zh-unsubscr...@flink.apache.org
,可以参考[1]

[1]
https://flink.apache.org/community.html#how-to-subscribe-to-a-mailing-list

On Thu, Apr 13, 2023 at 9:53 PM lei-tian  wrote:

> 退订
>
>
>
> | |
> totorobabyf...@163.com
> |
> |
> 邮箱:totorobabyf...@163.com
> |


退订

2023-04-13 文章 lei-tian
退订



| |
totorobabyf...@163.com
|
|
邮箱:totorobabyf...@163.com
|

ogg json格式不支持database include和table include参数

2023-04-13 文章 casel.chen
多张oracle表变更同步到同一个kafka topic,现在实时flinlk作业需要消费其中一张oracle表,查了一下没看到类似canal json格式中 

canal-json.database.include 和 canal-json.table.include 参数,只在available 
metadata中看到 table 字段,这意味着我需要在select语句中按table字段进行过滤吗?


[1] 
https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/connectors/table/formats/ogg/
[2] 
https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/connectors/table/formats/canal/

转发:

2023-04-13 文章 孟令平


发件人: Henry meng (孟令平)
发送时间: 2023年4月13日 15:27
收件人: 'user-zh-i...@flink.apache.org' 
主题:


public static void main(String[] args) throws Exception {
  StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
//env.enableCheckpointing(6);
  SingleOutputStreamOperator dataStream = env.addSource(new 
FlinkRocketMQConsumer("10.164.15.31:9876","flink_data"))
.uid("source-id");
  dataStream .print("**");
  DataStream datStream =dataStream.process(new MyFunction());
  StreamTableEnvironment tableEnv = StreamTableEnvironment.create(env);
  datStream.print("=>");
  Table inputTable = 
tableEnv.fromDataStream(datStream,"devId,identifier,dataValue,dataTime,tenantId");//"devId,identifier,dataValue,dataTime,tenantId"
  tableEnv.createTemporaryView("InputTable", inputTable);
  Table resultTable = tableEnv.sqlQuery(
"select devId,'DAY_POWER_GENERATION' as identify, 
(MAX(dataValue)-Min(dataValue)) value1,MAX(dataTime) datatime, " +
  "tenantId from InputTable where 
identifier='TOTAL_POWER_GENERATION' group by devId,tenantId");
//resultTable.print();
  DataStream resultStream = tableEnv.toChangelogStream(resultTable);
  resultStream.print(">");
//tableEnv.createTemporaryView("resultTable", resultTable);

  tableEnv.executeSql("CREATE TABLE print_table (`DEV_ID` 
BIGINT,`IDENTIFIER` String," +
"`DATA_VALUE` Decimal(16,4),`DATA_TIME` TIMESTAMP,`TENANT_ID` 
BIGINT) " +
"WITH ('connector' = 'print')");
//tableEnv.executeSql("insert into print_table select 
devId,identifier,dataValue,dataTime,tenantId from resultTable");
  inputTable.executeInsert("print_table");
  env.execute("FlinkRocketMQConsumerDemo");}

如上代码所示,当我添加上env.execute()方法后,发现print_table不打印数据了这是什么原因?
StreamExecutionEnvironment.execute()和StreamTableEnvironment.executeSql()同时执行有什么问题吗?


回复:监控flink的prometheus经常OOM

2023-04-12 文章 17610775726
Hi 


这个是可以配置的,可以参考官网 filter.includes[1] 来过滤你想要的 metrics。


[1]https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/metric_reporters/#filter-includes


Best
JasonLee


 回复的原邮件 
| 发件人 | casel.chen |
| 发送日期 | 2023年03月22日 12:08 |
| 收件人 | user-zh@flink.apache.org |
| 主题 | 监控flink的prometheus经常OOM |
我们通过pushgateway上报metrics到prometheus,设置的上报周期是30秒,整个实时平台有200多个作业,启了一台50GB的prometheus还是撑不住,指标保留1天,设置了指标在内存中驻留2小时后写入磁盘。最大的一个metric已经有37万条。请问有什么解决办法么?能选择哪些指标进行上报不?

Re: Flink实时计算平台在k8s上以Application模式启动作业如何实时同步作业状态到平台?

2023-04-11 文章 Yang Wang
可以通过JobResultStore[1]来获取任务最终的状态,flink-kubernetes-operator也是这样来获取的

[1].
https://cwiki.apache.org/confluence/display/FLINK/FLIP-194%3A+Introduce+the+JobResultStore

Best,
Yang

Weihua Hu  于2023年3月22日周三 10:27写道:

> Hi
>
> 我们内部最初版本是通过 cluster-id 来唯一标识一个 application,同时认为流式任务是长时间运行的,不应该主动退出。如果该
> cluster-id 在 Kubernetes 中查询不到,说明作业已经异常退出了,此时标记作业为异常。后续我们开发了特殊的 operator +
> crd 来管理 pod 声明周期,防止 pod 快速退出。
>
> 另外,作业状态还可以通过启用 history server[1] 来查看
>
> [1]
>
> https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/advanced/historyserver/
>
> Best,
> Weihua
>
>
> On Wed, Mar 22, 2023 at 9:42 AM Shammon FY  wrote:
>
> > Hi
> >
> > 你可以在你的提交平台启动后台任务定去向k8s查询作业状态,Flink也在设计支持作业状态汇报[1],目前正在讨论中
> >
> > [1]
> >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-294%3A+Support+Customized+Job+Status+Listener
> >
> > Best,
> > Shammon FY
> >
> >
> > On Wed, Mar 22, 2023 at 8:54 AM casel.chen  wrote:
> >
> > >
> >
> Flink实时计算平台在k8s上以Application模式启动作业如何实时同步作业状态到平台?作业一旦crash失败就会被k8s回收到相关的pod,没法通过web
> > > url去获取作业状态,有什么别的办法吗?通过metrics? 如果是的话具体是哪一个metric值呢?
> >
>


Re: 监控flink的prometheus经常OOM

2023-04-11 文章 Yang Wang
可以通过给Prometheus  server来配置metric_relabel_configs[1]来控制采集哪些metrics

[1].
https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs

Best,
Yang

casel.chen  于2023年3月22日周三 13:47写道:

> 更正一下,监控flink的方式从pushgateway方式改成了直接prometheus定期来抓取,周期设置的是1分钟,之前用pushgateway方式也总是把pushgateway打挂,现在改成pull方式还是照样把prometheus打挂。flink作业侧有什么参数可以配置吗?prometheus侧能否配置只抓取那些grafana
> dashboard展示需要的metrics?
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> 在 2023-03-22 12:08:29,"casel.chen"  写道:
>
> >我们通过pushgateway上报metrics到prometheus,设置的上报周期是30秒,整个实时平台有200多个作业,启了一台50GB的prometheus还是撑不住,指标保留1天,设置了指标在内存中驻留2小时后写入磁盘。最大的一个metric已经有37万条。请问有什么解决办法么?能选择哪些指标进行上报不?
>


Re: Re: PartitionNotFoundException

2023-04-09 文章 Weihua Hu
Hi,

可以提供下 JobManager 和相关 TaskManager 的日志吗?

一般来说 PartitionNotFoundException 只在作业启动建立链接的时候才会出现,
根据你的描述,应该是一个消费 Kafka 的流式任务,不太应该在运行一周后
出现 PartitionNotFoundException

可以检查下是否存在其他异常

Best,
Weihua


On Mon, Apr 10, 2023 at 9:51 AM zhan...@eastcom-sw.com <
zhan...@eastcom-sw.com> wrote:

> taskmanager.network.tcp-connection.enable-reuse-across-jobs: false
> taskmanager.network.max-num-tcp-connections: 4
>
> 这两参数已经调整了的,connections  之前只是由1改为2   但运行一周后又出现了 PartitionNotFoundException
>
>
>
> From: Shammon FY
> Date: 2023-04-10 09:46
> To: user-zh
> Subject: Re: Re: PartitionNotFoundException
> 像上面提到的,流式作业可以设置taskmanager.network.tcp-connection.enable-reuse-across-jobs:
> false,一般作业影响不会有影响
>
> Best,
> Shammon FY
>
> On Mon, Apr 10, 2023 at 9:27 AM zhan...@eastcom-sw.com <
> zhan...@eastcom-sw.com> wrote:
>
> > hi, 上周调整这两参数后,正常运行了近一个星期后 又重现了[PartitionNotFoundException]...
> >
> > taskmanager.network.max-num-tcp-connections  只是调整为2,可能是太小了 今天我改为4 再看看
> > 或者 将flink版本升级到 1.17 是否可修复该问题?
> >
> > From: yidan zhao
> > Date: 2023-04-03 10:45
> > To: user-zh
> > Subject: Re: PartitionNotFoundException
> > 设置 taskmanager.network.tcp-connection.enable-reuse-across-jobs 为
> > false,设置 taskmanager.network.max-num-tcp-connections 大点。
> > 之前有个bug导致这个问题我记得,不知道1.16修复没有。
> >
> > zhan...@eastcom-sw.com  于2023年4月3日周一 10:08写道:
> > >
> > >
> > > hi, 最近从1.14升级到1.16后,kafka消费不定时会出现 [org.apache.flink.runtime.io
> .network.partition.PartitionNotFoundException:
> > Partition *** not found.]
> > > 然后不停自动重启job再继续抛出该异常后 不断重启,直到手动cancel任务后 再启动才恢复正常消费
> > >
> > > 在1.14集群中从未出现的问题,升到1.16后才出现,请问是否有配置可以优化或避免该异常?
> >
>


Re: Re: PartitionNotFoundException

2023-04-09 文章 Shammon FY
像上面提到的,流式作业可以设置taskmanager.network.tcp-connection.enable-reuse-across-jobs:
false,一般作业影响不会有影响

Best,
Shammon FY

On Mon, Apr 10, 2023 at 9:27 AM zhan...@eastcom-sw.com <
zhan...@eastcom-sw.com> wrote:

> hi, 上周调整这两参数后,正常运行了近一个星期后 又重现了[PartitionNotFoundException]...
>
> taskmanager.network.max-num-tcp-connections  只是调整为2,可能是太小了 今天我改为4 再看看
> 或者 将flink版本升级到 1.17 是否可修复该问题?
>
> From: yidan zhao
> Date: 2023-04-03 10:45
> To: user-zh
> Subject: Re: PartitionNotFoundException
> 设置 taskmanager.network.tcp-connection.enable-reuse-across-jobs 为
> false,设置 taskmanager.network.max-num-tcp-connections 大点。
> 之前有个bug导致这个问题我记得,不知道1.16修复没有。
>
> zhan...@eastcom-sw.com  于2023年4月3日周一 10:08写道:
> >
> >
> > hi, 最近从1.14升级到1.16后,kafka消费不定时会出现 
> > [org.apache.flink.runtime.io.network.partition.PartitionNotFoundException:
> Partition *** not found.]
> > 然后不停自动重启job再继续抛出该异常后 不断重启,直到手动cancel任务后 再启动才恢复正常消费
> >
> > 在1.14集群中从未出现的问题,升到1.16后才出现,请问是否有配置可以优化或避免该异常?
>


Re: 回复:Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能

2023-04-08 文章 Geng Biao
你的考虑是对的;可能需要2个KDC互信,来使得一个keytab访问2个kerberos集群。这个其实就是我在刚才说的第一步操作中要考虑的事情。本质上是打通2个kerberos集群。

From: yihan 
Date: Sunday, April 9, 2023 at 12:13 AM
To: Geng Biao 
Cc: user-zh@flink.apache.org 
Subject: 回复:Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能
Biao Geng:


十分感谢您的回复。

这个问题是我的同事之前向我提出的。我当时直觉感觉是不行的。现在周末放空的时候再想想这个问题。


我考虑的是,提交任务使用到本集群的principal和keytab和要他写入的另一集群用到的principal和keytab在hadoop的UserGroupInformation类login时会冲突,导致要么任务无法在本集群顺利做如checkpoint之类的操作,要么就是无法写入另一集群的HDFS。


我想任务提交到非加密yarn上时确实是可行的,但是对于加密yarn来说就不行了。


不知道上面考虑是否合理。
 回复的原邮件 
发件人
Geng Biao
发送日期
2023年04月08日 23:20
收件人
user-zh@flink.apache.org
主题
Re: Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能
Hi yihan,
这个本质上可以理解成在Flink的taskmanager运行一个UDF(UDF做的事情是写另一个Kerberos HDFS集群),所以技术上是可能的。
我之前走通过普通Yarn集群的Flink任务写入另一个Kerberos HDFS集群的流程,整体操作感觉比较复杂,通常而言,你需要如下步骤:
1. 
准备一个HAOOP_CONF_DIR,它包含hdfs-site.xml、core-site.xml等配置,除此之外还要准备kerberos鉴权所需的krb5.conf等文件,使得你在使用这个HAOOP_CONF_DIR以及通过kinit命令完成授权后,可以在你的Yarn集群通过Hadoop
 client访问另一个加密HDFS(例如可以get/put文件)。
2. 
在你的flink应用中,通过containerized.taskmanager.env.XX、containerized.master.env.XX这2类配置项来指定需要使用的HADOOP_USER_NAME、HAOOP_CONF_DIR(你需要把步骤1准备好的HAOOP_CONF_DIR通过yarn.ship-files参数进行指定,从而使得它被ship到YARN
 TM container中,然后-D containerized.taskmanager.env. 
HAOOP_CONF_DIR=./hadoop-conf)。类似的,用于访问目标kerberos集群的krb5.conf也需要ship。

整体流程比较容易遇到很多kerberos相关报错,可能需要多做些尝试与搜素。

Best,
Biao Geng


From: yihan 
Date: Saturday, April 8, 2023 at 10:26 PM
To: user-zh@flink.apache.org 
Subject: Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能
请教如标题问题,谢谢。


回复:Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能

2023-04-08 文章 yihan
Biao Geng:


十分感谢您的回复。



这个问题是我的同事之前向我提出的。我当时直觉感觉是不行的。现在周末放空的时候再想想这个问题。


我考虑的是,提交任务使用到本集群的principal和keytab和要他写入的另一集群用到的principal和keytab在hadoop的UserGroupInformation类login时会冲突,导致要么任务无法在本集群顺利做如checkpoint之类的操作,要么就是无法写入另一集群的HDFS。


我想任务提交到非加密yarn上时确实是可行的,但是对于加密yarn来说就不行了。



不知道上面考虑是否合理。
 回复的原邮件 
| 发件人 | Geng Biao |
| 发送日期 | 2023年04月08日 23:20 |
| 收件人 | user-zh@flink.apache.org |
| 主题 | Re: Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能 |
Hi yihan,
这个本质上可以理解成在Flink的taskmanager运行一个UDF(UDF做的事情是写另一个Kerberos HDFS集群),所以技术上是可能的。
我之前走通过普通Yarn集群的Flink任务写入另一个Kerberos HDFS集群的流程,整体操作感觉比较复杂,通常而言,你需要如下步骤:
1. 
准备一个HAOOP_CONF_DIR,它包含hdfs-site.xml、core-site.xml等配置,除此之外还要准备kerberos鉴权所需的krb5.conf等文件,使得你在使用这个HAOOP_CONF_DIR以及通过kinit命令完成授权后,可以在你的Yarn集群通过Hadoop
 client访问另一个加密HDFS(例如可以get/put文件)。
2. 
在你的flink应用中,通过containerized.taskmanager.env.XX、containerized.master.env.XX这2类配置项来指定需要使用的HADOOP_USER_NAME、HAOOP_CONF_DIR(你需要把步骤1准备好的HAOOP_CONF_DIR通过yarn.ship-files参数进行指定,从而使得它被ship到YARN
 TM container中,然后-D containerized.taskmanager.env. 
HAOOP_CONF_DIR=./hadoop-conf)。类似的,用于访问目标kerberos集群的krb5.conf也需要ship。

整体流程比较容易遇到很多kerberos相关报错,可能需要多做些尝试与搜素。

Best,
Biao Geng


From: yihan 
Date: Saturday, April 8, 2023 at 10:26 PM
To: user-zh@flink.apache.org 
Subject: Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能
请教如标题问题,谢谢。


Re: Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能

2023-04-08 文章 Geng Biao
Hi yihan,
这个本质上可以理解成在Flink的taskmanager运行一个UDF(UDF做的事情是写另一个Kerberos HDFS集群),所以技术上是可能的。
我之前走通过普通Yarn集群的Flink任务写入另一个Kerberos HDFS集群的流程,整体操作感觉比较复杂,通常而言,你需要如下步骤:
1. 
准备一个HAOOP_CONF_DIR,它包含hdfs-site.xml、core-site.xml等配置,除此之外还要准备kerberos鉴权所需的krb5.conf等文件,使得你在使用这个HAOOP_CONF_DIR以及通过kinit命令完成授权后,可以在你的Yarn集群通过Hadoop
 client访问另一个加密HDFS(例如可以get/put文件)。
2. 
在你的flink应用中,通过containerized.taskmanager.env.XX、containerized.master.env.XX这2类配置项来指定需要使用的HADOOP_USER_NAME、HAOOP_CONF_DIR(你需要把步骤1准备好的HAOOP_CONF_DIR通过yarn.ship-files参数进行指定,从而使得它被ship到YARN
 TM container中,然后-D containerized.taskmanager.env. 
HAOOP_CONF_DIR=./hadoop-conf)。类似的,用于访问目标kerberos集群的krb5.conf也需要ship。

整体流程比较容易遇到很多kerberos相关报错,可能需要多做些尝试与搜素。

Best,
Biao Geng


From: yihan 
Date: Saturday, April 8, 2023 at 10:26 PM
To: user-zh@flink.apache.org 
Subject: Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能
请教如标题问题,谢谢。


Kerberos加密Yarn集群上的Flink任务写入其他未互信的加密HDFS是否可能

2023-04-08 文章 yihan
请教如标题问题,谢谢。

WindowAssigner中windowStagger作用

2023-04-06 文章 yidan zhao
如题,目前看实现,这个 windowStagger 是针对 opeartor 的众多 subtask 之间,针对每个 subtask
生成了一个固定的 offset 作用于该 subtask 处理的元素。因为 staggerOffset 是在 assignWindows
中生成,而且只有第一次会生成,后续复用。如下:

if (staggerOffset == null) {
staggerOffset =
windowStagger.getStaggerOffset(context.getCurrentProcessingTime(),
size);
}
// Long.MIN_VALUE is currently assigned when no timestamp is present
long start =
TimeWindow.getWindowStartWithOffset(
timestamp, (globalOffset + staggerOffset) % size, size);
return Collections.singletonList(new TimeWindow(start, start + size));


所以,这个功能的目的是,分散不同 subtask
之间的窗口周期offset嘛?那如果实际生产中,是一个TM只有1个slot,整个作业只有1个window类算子的话。这个windowstagger好像没起到分散cpu压力的作用?还是说他的作用在于分散
window 算子整体输出时机而已,并不在乎单个 subtask 的输出时机对嘛?


Re: 退订

2023-04-06 文章 Shammon FY
Hi

退订请发送任意邮件到 user-zh-unsubscr...@flink.apache.org


[1] https://flink.apache.org/community/#mailing-lists


On Thu, Apr 6, 2023 at 2:00 PM Tony  wrote:

> 退订


退订

2023-04-06 文章 Tony
退订

Re: 退订

2023-04-04 文章 Shammon FY
Hi

发送任意邮件到 user-zh-unsubscr...@flink.apache.org
 退订

[1]
https://flink.apache.org/community.html#how-to-subscribe-to-a-mailing-list


On Tue, Apr 4, 2023 at 1:20 PM 柳懿珊  wrote:

> 退订


退订

2023-04-03 文章 柳懿珊
退订

[ANNOUNCE] Starting with Flink 1.18 Release Sync

2023-04-03 文章 Qingsheng Ren
Hi everyone,

As a fresh start of the Flink release 1.18, I'm happy to share with you
that the first release sync meeting of 1.18 will happen tomorrow on
Tuesday, April 4th at 10am (UTC+2) / 4pm (UTC+8). Welcome and feel free to
join us and share your ideas about the new release cycle!

Details of joining the release sync can be found in the 1.18 release wiki
page [1].

All contributors are invited to update the same wiki page [1] and include
features targeting the 1.18 release.

Looking forward to seeing you all in the meeting!

[1] https://cwiki.apache.org/confluence/display/FLINK/1.18+Release

Best regards,
Jing, Konstantin, Sergey and Qingsheng


Re: PartitionNotFoundException

2023-04-02 文章 yidan zhao
设置 taskmanager.network.tcp-connection.enable-reuse-across-jobs 为
false,设置 taskmanager.network.max-num-tcp-connections 大点。
之前有个bug导致这个问题我记得,不知道1.16修复没有。

zhan...@eastcom-sw.com  于2023年4月3日周一 10:08写道:
>
>
> hi, 最近从1.14升级到1.16后,kafka消费不定时会出现 
> [org.apache.flink.runtime.io.network.partition.PartitionNotFoundException: 
> Partition *** not found.]
> 然后不停自动重启job再继续抛出该异常后 不断重启,直到手动cancel任务后 再启动才恢复正常消费
>
> 在1.14集群中从未出现的问题,升到1.16后才出现,请问是否有配置可以优化或避免该异常?


Re: PartitionNotFoundException

2023-04-02 文章 Shammon FY
Hi

出现PartitionNotFoundException通常是指定task的上游有subtask失败了,你可以查看一下上游subtask有没有错误日志,根据错误日志查看具体原因

Best,
Shammon FY

On Mon, Apr 3, 2023 at 10:08 AM zhan...@eastcom-sw.com <
zhan...@eastcom-sw.com> wrote:

>
> hi, 最近从1.14升级到1.16后,kafka消费不定时会出现 
> [org.apache.flink.runtime.io.network.partition.PartitionNotFoundException:
> Partition *** not found.]
> 然后不停自动重启job再继续抛出该异常后 不断重启,直到手动cancel任务后 再启动才恢复正常消费
>
> 在1.14集群中从未出现的问题,升到1.16后才出现,请问是否有配置可以优化或避免该异常?
>


Re: flink sql的codegen导致metaspace OOM疑问

2023-03-29 文章 Shammon FY
Hi

自增id可以为同一个作业的多个codegen类生成唯一类名
一般metaspace可以通过fullgc释放,你可以查看你的集群metaspace大小,是否触发了了fullgc

Best,
Shammon FY

On Wednesday, March 29, 2023, tanjialiang  wrote:

> Hi all,
>我有一个通过flink kubernetes operator定时提交到同一个session作业(底层是将flink
> sql转JobGraph的逻辑下推到了JobManager执行),当他跑了一段时间后,JobManager报了metaspace OOM.
>经过排查后发现是flink sql codegen生成的代码类有一个自增ID,这些类在使用完后不会释放。
>
>
> 疑问:
> 1. flink sql codegen做这样的一个自增ID有什么特殊意义吗?
> 2. java中通过类加载器加载的类有什么办法可以释放?
>
>
>
>
>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-29 文章 Dong Lin
Congratulations!

Dong

On Mon, Mar 27, 2023 at 5:24 PM Yu Li  wrote:

> Dear Flinkers,
>
>
>
> As you may have noticed, we are pleased to announce that Flink Table Store 
> has joined the Apache Incubator as a separate project called Apache 
> Paimon(incubating) [1] [2] [3]. The new project still aims at building a 
> streaming data lake platform for high-speed data ingestion, change data 
> tracking and efficient real-time analytics, with the vision of supporting a 
> larger ecosystem and establishing a vibrant and neutral open source community.
>
>
>
> We would like to thank everyone for their great support and efforts for the 
> Flink Table Store project, and warmly welcome everyone to join the 
> development and activities of the new project. Apache Flink will continue to 
> be one of the first-class citizens supported by Paimon, and we believe that 
> the Flink and Paimon communities will maintain close cooperation.
>
>
> 亲爱的Flinkers,
>
>
> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
> Apache 
> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>
>
> 在这里我们要感谢大家对 Flink Table Store 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink
> 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信 Flink 和 Paimon 社区将继续保持密切合作。
>
>
> Best Regards,
>
> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>
>
> 致礼,
>
> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>
>
> [1] https://paimon.apache.org/
>
> [2] https://github.com/apache/incubator-paimon
>
> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
>


来自胡家发的邮件

2023-03-29 文章 胡家发
退订

flink sql的codegen导致metaspace OOM疑问

2023-03-29 文章 tanjialiang
Hi all,
   我有一个通过flink kubernetes operator定时提交到同一个session作业(底层是将flink 
sql转JobGraph的逻辑下推到了JobManager执行),当他跑了一段时间后,JobManager报了metaspace OOM.
   经过排查后发现是flink sql codegen生成的代码类有一个自增ID,这些类在使用完后不会释放。


疑问:
1. flink sql codegen做这样的一个自增ID有什么特殊意义吗?
2. java中通过类加载器加载的类有什么办法可以释放?






找到多个default类型的ExecutorFactory导致提交flink sql作业失败

2023-03-28 文章 casel.chen
我的实时作业项目想解析sql获取到TableIdentifier做sql血缘,使用的版本是flink 1.15.2,同时引入了 
flink-table-planner_2.12 和 flink-table-planner-loader 依赖,debug时发现

 TableEnvironmentImpl create(EnvironmentSettings settings) 方法会调用

 FactoryUtil.discoverFactory(classLoader, ExecutorFactory.class, 
ExecutorFactory.DEFAULT_IDENTIFIER)方法
去寻找带有default标识的ExecutorFactory,结果找到了两个,一个是DelegateExcutorFactory,另一个是DefaultExecutorFactory。
于是抛了异常 "Multiple factories for identifier 'default' that implement 
ExecutorFactory found in the classpath."

 进一步查看到这个DelegateExcutorFactory其实代理的是就是DefaultExecutorFactory




 请问:

 1. 这个DelegateExcutorFactory起什么作用?

 2. 这两个module依赖的有什么区别和联系?

 3. 项目中只能依赖这两个当中的其中一个jar吗?正确的应该依赖哪个module呢?

Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-28 文章 Shuo Cheng
Cool ~ Congrats!

Best Regards,
Shuo

On Mon, Mar 27, 2023 at 5:24 PM Yu Li  wrote:

> Dear Flinkers,
>
>
> As you may have noticed, we are pleased to announce that Flink Table
> Store has joined the Apache Incubator as a separate project called
> Apache Paimon(incubating) [1] [2] [3]. The new project still aims at
> building a streaming data lake platform for high-speed data ingestion,
> change data tracking and efficient real-time analytics, with the
> vision of supporting a larger ecosystem and establishing a vibrant and
> neutral open source community.
>
>
> We would like to thank everyone for their great support and efforts
> for the Flink Table Store project, and warmly welcome everyone to join
> the development and activities of the new project. Apache Flink will
> continue to be one of the first-class citizens supported by Paimon,
> and we believe that the Flink and Paimon communities will maintain
> close cooperation.
>
>
> 亲爱的Flinkers,
>
>
> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
> Apache
> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>
>
> 在这里我们要感谢大家对 Flink Table Store 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink
> 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信 Flink 和 Paimon 社区将继续保持密切合作。
>
>
> Best Regards,
>
> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>
>
> 致礼,
>
> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>
>
> [1] https://paimon.apache.org/
>
> [2] https://github.com/apache/incubator-paimon
>
> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-28 文章 Guowei Ma
Congratulations!

Best,
Guowei


On Tue, Mar 28, 2023 at 12:02 PM Yuxin Tan  wrote:

> Congratulations!
>
> Best,
> Yuxin
>
>
> Guanghui Zhang  于2023年3月28日周二 11:06写道:
>
>> Congratulations!
>>
>> Best,
>> Zhang Guanghui
>>
>> Hang Ruan  于2023年3月28日周二 10:29写道:
>>
>> > Congratulations!
>> >
>> > Best,
>> > Hang
>> >
>> > yu zelin  于2023年3月28日周二 10:27写道:
>> >
>> >> Congratulations!
>> >>
>> >> Best,
>> >> Yu Zelin
>> >>
>> >> 2023年3月27日 17:23,Yu Li  写道:
>> >>
>> >> Dear Flinkers,
>> >>
>> >>
>> >>
>> >> As you may have noticed, we are pleased to announce that Flink Table
>> Store has joined the Apache Incubator as a separate project called Apache
>> Paimon(incubating) [1] [2] [3]. The new project still aims at building a
>> streaming data lake platform for high-speed data ingestion, change data
>> tracking and efficient real-time analytics, with the vision of supporting a
>> larger ecosystem and establishing a vibrant and neutral open source
>> community.
>> >>
>> >>
>> >>
>> >> We would like to thank everyone for their great support and efforts
>> for the Flink Table Store project, and warmly welcome everyone to join the
>> development and activities of the new project. Apache Flink will continue
>> to be one of the first-class citizens supported by Paimon, and we believe
>> that the Flink and Paimon communities will maintain close cooperation.
>> >>
>> >>
>> >> 亲爱的Flinkers,
>> >>
>> >>
>> >> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
>> >> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
>> >> Apache
>> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>> >>
>> >>
>> >> 在这里我们要感谢大家对 Flink Table Store
>> >> 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink 将继续作为 Paimon
>> 支持的主力计算引擎之一,我们也相信
>> >> Flink 和 Paimon 社区将继续保持密切合作。
>> >>
>> >>
>> >> Best Regards,
>> >> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>> >>
>> >> 致礼,
>> >> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>> >>
>> >> [1] https://paimon.apache.org/
>> >> [2] https://github.com/apache/incubator-paimon
>> >> [3]
>> https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
>> >>
>> >>
>> >>
>>
>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 Yuxin Tan
Congratulations!

Best,
Yuxin


Guanghui Zhang  于2023年3月28日周二 11:06写道:

> Congratulations!
>
> Best,
> Zhang Guanghui
>
> Hang Ruan  于2023年3月28日周二 10:29写道:
>
> > Congratulations!
> >
> > Best,
> > Hang
> >
> > yu zelin  于2023年3月28日周二 10:27写道:
> >
> >> Congratulations!
> >>
> >> Best,
> >> Yu Zelin
> >>
> >> 2023年3月27日 17:23,Yu Li  写道:
> >>
> >> Dear Flinkers,
> >>
> >>
> >>
> >> As you may have noticed, we are pleased to announce that Flink Table
> Store has joined the Apache Incubator as a separate project called Apache
> Paimon(incubating) [1] [2] [3]. The new project still aims at building a
> streaming data lake platform for high-speed data ingestion, change data
> tracking and efficient real-time analytics, with the vision of supporting a
> larger ecosystem and establishing a vibrant and neutral open source
> community.
> >>
> >>
> >>
> >> We would like to thank everyone for their great support and efforts for
> the Flink Table Store project, and warmly welcome everyone to join the
> development and activities of the new project. Apache Flink will continue
> to be one of the first-class citizens supported by Paimon, and we believe
> that the Flink and Paimon communities will maintain close cooperation.
> >>
> >>
> >> 亲爱的Flinkers,
> >>
> >>
> >> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
> >> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
> >> Apache
> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
> >>
> >>
> >> 在这里我们要感谢大家对 Flink Table Store
> >> 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink 将继续作为 Paimon
> 支持的主力计算引擎之一,我们也相信
> >> Flink 和 Paimon 社区将继续保持密切合作。
> >>
> >>
> >> Best Regards,
> >> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
> >>
> >> 致礼,
> >> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
> >>
> >> [1] https://paimon.apache.org/
> >> [2] https://github.com/apache/incubator-paimon
> >> [3]
> https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
> >>
> >>
> >>
>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 Guanghui Zhang
Congratulations!

Best,
Zhang Guanghui

Hang Ruan  于2023年3月28日周二 10:29写道:

> Congratulations!
>
> Best,
> Hang
>
> yu zelin  于2023年3月28日周二 10:27写道:
>
>> Congratulations!
>>
>> Best,
>> Yu Zelin
>>
>> 2023年3月27日 17:23,Yu Li  写道:
>>
>> Dear Flinkers,
>>
>>
>>
>> As you may have noticed, we are pleased to announce that Flink Table Store 
>> has joined the Apache Incubator as a separate project called Apache 
>> Paimon(incubating) [1] [2] [3]. The new project still aims at building a 
>> streaming data lake platform for high-speed data ingestion, change data 
>> tracking and efficient real-time analytics, with the vision of supporting a 
>> larger ecosystem and establishing a vibrant and neutral open source 
>> community.
>>
>>
>>
>> We would like to thank everyone for their great support and efforts for the 
>> Flink Table Store project, and warmly welcome everyone to join the 
>> development and activities of the new project. Apache Flink will continue to 
>> be one of the first-class citizens supported by Paimon, and we believe that 
>> the Flink and Paimon communities will maintain close cooperation.
>>
>>
>> 亲爱的Flinkers,
>>
>>
>> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
>> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
>> Apache 
>> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>>
>>
>> 在这里我们要感谢大家对 Flink Table Store
>> 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信
>> Flink 和 Paimon 社区将继续保持密切合作。
>>
>>
>> Best Regards,
>> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>>
>> 致礼,
>> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>>
>> [1] https://paimon.apache.org/
>> [2] https://github.com/apache/incubator-paimon
>> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
>>
>>
>>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 Yun Tang
Congratulations!
Unlike other data-lakes, Paimon might be the first one to act as a stream-first 
(not batch-first) data-lake.

Best
Yun Tang

From: Xianxun Ye 
Sent: Tuesday, March 28, 2023 10:52
To: d...@flink.apache.org 
Cc: Yu Li ; user ; user-zh 
; d...@flink.apache.org 
Subject: Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache 
Paimon(incubating)

Congratulations!

Best regards,

Xianxun

On 03/27/2023 22:51,Samrat 
Deb wrote:
congratulations

Bests,
Samrat

On Mon, Mar 27, 2023 at 7:19 PM Yanfei Lei  wrote:

Congratulations!

Best Regards,
Yanfei

ramkrishna vasudevan  于2023年3月27日周一 21:46写道:

Congratulations !!!

On Mon, Mar 27, 2023 at 2:54 PM Yu Li  wrote:

Dear Flinkers,


As you may have noticed, we are pleased to announce that Flink Table
Store has joined the Apache Incubator as a separate project called Apache
Paimon(incubating) [1] [2] [3]. The new project still aims at building a
streaming data lake platform for high-speed data ingestion, change data
tracking and efficient real-time analytics, with the vision of supporting a
larger ecosystem and establishing a vibrant and neutral open source
community.


We would like to thank everyone for their great support and efforts for
the Flink Table Store project, and warmly welcome everyone to join the
development and activities of the new project. Apache Flink will continue
to be one of the first-class citizens supported by Paimon, and we believe
that the Flink and Paimon communities will maintain close cooperation.


亲爱的Flinkers,


正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache 孵化器独立孵化 [1] [2]
[3]。新项目的名字是 Apache
Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。


在这里我们要感谢大家对 Flink Table Store 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache
Flink 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信 Flink 和 Paimon 社区将继续保持密切合作。


Best Regards,

Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)


致礼,

李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)


[1] https://paimon.apache.org/

[2] https://github.com/apache/incubator-paimon

[3]
https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal



Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 Biao Liu
Congrats!

Thanks,
Biao /'bɪ.aʊ/



On Tue, 28 Mar 2023 at 10:29, Hang Ruan  wrote:

> Congratulations!
>
> Best,
> Hang
>
> yu zelin  于2023年3月28日周二 10:27写道:
>
>> Congratulations!
>>
>> Best,
>> Yu Zelin
>>
>> 2023年3月27日 17:23,Yu Li  写道:
>>
>> Dear Flinkers,
>>
>>
>>
>> As you may have noticed, we are pleased to announce that Flink Table Store 
>> has joined the Apache Incubator as a separate project called Apache 
>> Paimon(incubating) [1] [2] [3]. The new project still aims at building a 
>> streaming data lake platform for high-speed data ingestion, change data 
>> tracking and efficient real-time analytics, with the vision of supporting a 
>> larger ecosystem and establishing a vibrant and neutral open source 
>> community.
>>
>>
>>
>> We would like to thank everyone for their great support and efforts for the 
>> Flink Table Store project, and warmly welcome everyone to join the 
>> development and activities of the new project. Apache Flink will continue to 
>> be one of the first-class citizens supported by Paimon, and we believe that 
>> the Flink and Paimon communities will maintain close cooperation.
>>
>>
>> 亲爱的Flinkers,
>>
>>
>> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
>> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
>> Apache 
>> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>>
>>
>> 在这里我们要感谢大家对 Flink Table Store
>> 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信
>> Flink 和 Paimon 社区将继续保持密切合作。
>>
>>
>> Best Regards,
>> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>>
>> 致礼,
>> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>>
>> [1] https://paimon.apache.org/
>> [2] https://github.com/apache/incubator-paimon
>> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
>>
>>
>>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 Hang Ruan
Congratulations!

Best,
Hang

yu zelin  于2023年3月28日周二 10:27写道:

> Congratulations!
>
> Best,
> Yu Zelin
>
> 2023年3月27日 17:23,Yu Li  写道:
>
> Dear Flinkers,
>
>
>
> As you may have noticed, we are pleased to announce that Flink Table Store 
> has joined the Apache Incubator as a separate project called Apache 
> Paimon(incubating) [1] [2] [3]. The new project still aims at building a 
> streaming data lake platform for high-speed data ingestion, change data 
> tracking and efficient real-time analytics, with the vision of supporting a 
> larger ecosystem and establishing a vibrant and neutral open source community.
>
>
>
> We would like to thank everyone for their great support and efforts for the 
> Flink Table Store project, and warmly welcome everyone to join the 
> development and activities of the new project. Apache Flink will continue to 
> be one of the first-class citizens supported by Paimon, and we believe that 
> the Flink and Paimon communities will maintain close cooperation.
>
>
> 亲爱的Flinkers,
>
>
> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache
> 孵化器独立孵化 [1] [2] [3]。新项目的名字是
> Apache 
> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>
>
> 在这里我们要感谢大家对 Flink Table Store 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink
> 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信 Flink 和 Paimon 社区将继续保持密切合作。
>
>
> Best Regards,
> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>
> 致礼,
> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>
> [1] https://paimon.apache.org/
> [2] https://github.com/apache/incubator-paimon
> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal
>
>
>


Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 yu zelin
Congratulations!

Best,
Yu Zelin

> 2023年3月27日 17:23,Yu Li  写道:
> 
> Dear Flinkers,
> 
> As you may have noticed, we are pleased to announce that Flink Table Store 
> has joined the Apache Incubator as a separate project called Apache 
> Paimon(incubating) [1] [2] [3]. The new project still aims at building a 
> streaming data lake platform for high-speed data ingestion, change data 
> tracking and efficient real-time analytics, with the vision of supporting a 
> larger ecosystem and establishing a vibrant and neutral open source community.
> 
> We would like to thank everyone for their great support and efforts for the 
> Flink Table Store project, and warmly welcome everyone to join the 
> development and activities of the new project. Apache Flink will continue to 
> be one of the first-class citizens supported by Paimon, and we believe that 
> the Flink and Paimon communities will maintain close cooperation.
> 
> 亲爱的Flinkers,
> 
> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache 孵化器独立孵化 [1] [2] 
> [3]。新项目的名字是 Apache 
> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
> 
> 在这里我们要感谢大家对 Flink Table Store 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink 
> 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信 Flink 和 Paimon 社区将继续保持密切合作。
> 
> Best Regards,
> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
> 
> 致礼,
> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
> 
> [1] https://paimon.apache.org/
> [2] https://github.com/apache/incubator-paimon
> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal



flink sql upsert mysql问题

2023-03-27 文章 小昌同学
你好,我这边使用flink  sql实现四条流的关联,后续实现case 
when的逻辑,并且将数据插入到mysql,但是从结果数据来看,数据存在部分丢失,代码我粘贴再后面,麻烦各位老师指导,下面是sql【create 
function get_json_value as 'com.nesc.flink.udf.GetJsonValue';
set 'table.exec.sink.not-null-enforcer'='drop';
测试环境
CREATE TABLE dm_cust_oact_prog_ri (
 cust_id STRING COMMENT '客户id'
,cust_nme STRING COMMENT '客户姓名'
,cust_mob_tel STRING COMMENT '客户手机号'
,cust_curr_step STRING COMMENT '客户当前步骤'
,cust_curr_step_num INT COMMENT '客户当前步骤数字'
,cust_curr_step_occu_tm STRING COMMENT '客户当前步骤最近发生时间'
,user_id STRING COMMENT '开户时使用的user_id'
,tech_sys_time STRING COMMENT '技术字段,更新时间'
,primary key (user_id,cust_curr_step) not enforced
) WITH (
 'connector' = 'jdbc'
,'url' = 'jdbc:mysql://111/iap'
,'username' = 'db_iap'
,'password' = '加密内容2'
,'table-name' = 'dm_cust_oact_prog_ri'
);
CREATE TABLE dm_cust_oact_prog_ri_print (
 cust_id STRING COMMENT '客户id'
,cust_nme STRING COMMENT '客户姓名'
,cust_mob_tel STRING COMMENT '客户手机号'
,cust_curr_step STRING COMMENT '客户当前步骤'
,cust_curr_step_num INT COMMENT '客户当前步骤数字'
,cust_curr_step_occu_tm STRING COMMENT '客户当前步骤最近发生时间'
,user_id STRING COMMENT '开户时使用的user_id'
,tech_sys_time STRING COMMENT '技术字段,更新时间'
,primary key (user_id,cust_curr_step) not enforced
) WITH (
  'connector' = 'print'
);
CREATE TABLE dm_crh_cust_oact_rec_ri
(
 op_type string
,op_ts string
,`after` string
,current_ts string
,curr_datetime as get_json_value(`after`,'CURR_DATETIME')
,user_id as get_json_value(`after`,'USER_ID')
,request_no as get_json_value(`after`,'REQUEST_NO')
,business_flag as get_json_value(`after`,'BUSINESS_FLAG')
,proc_time as PROCTIME()
) WITH (
  'connector' = 'kafka',
  'topic' = 'BUSINFLOWRECORD',
  'properties.bootstrap.servers' = '111',
  'properties.group.id' = 'iap_dm_cust_oact_prog_ri_test_env',
  'format' = 'json',
  'scan.startup.mode' = 'latest-offset',
  --'csv.field-delimiter' = ','
  --'scan.startup.mode' = 'timestamp',
  --'scan.startup.timestamp-millis' = '167535360', --通过 
unix_timestamp('2023-02-03 00:00:00')*1000 获取开始时间点
  'json.fail-on-missing-field' = 'false', -- 字段丢失任务不失败
  'json.ignore-parse-errors' = 'true' -- 解析失败跳过
);
CREATE TABLE dm_crh_cust_info_ri
(
 op_type string
,op_ts string
,`after` string
,current_ts string
,client_name as get_json_value(`after`,'CLIENT_NAME')
,request_status as get_json_value(`after`,'REQUEST_STATUS')
,mobile_tel as get_json_value(`after`,'MOBILE_TEL')
,user_id as get_json_value(`after`,'USER_ID')
,active_datetime as get_json_value(`after`,'ACTIVE_DATETIME')
,channel_code as get_json_value(`after`,'CHANNEL_CODE')
,broker_code as get_json_value(`after`,'BROKER_CODE')
,user_gender as get_json_value(`after`,'USER_GENDER')
,birthday as get_json_value(`after`,'BIRTHDAY')
,client_id as get_json_value(`after`,'CLIENT_ID')
) WITH (
  'connector' = 'kafka',
  'topic' = 'USERQUERYEXTINFO',
  'properties.bootstrap.servers' = '111',
  'properties.group.id' = 'iap_dm_cust_oact_prog_ri_test_env',
  'format' = 'json',
  'scan.startup.mode' = 'latest-offset',
  --'csv.field-delimiter' = ','
  --'scan.startup.mode' = 'timestamp',
  --'scan.startup.timestamp-millis' = '167535360', --通过 
unix_timestamp('2023-02-03 00:00:00')*1000 获取开始时间点
  'json.fail-on-missing-field' = 'false', -- 字段丢失任务不失败
  'json.ignore-parse-errors' = 'true' -- 解析失败跳过
);
CREATE TABLE dm_crh_audit_rec_ri
(
 op_type string
,op_ts string
,`after` string
,current_ts string
,business_flag as get_json_value(`after`,'BUSINESS_FLAG')
,curr_datetime as get_json_value(`after`,'CURR_DATETIME')
,request_no as get_json_value(`after`,'REQUEST_NO')
) WITH (
  'connector' = 'kafka',
  'topic' = 'CRH_USER.BUSINFLOWAUDITRECORD',
  'properties.bootstrap.servers' = '111',
  'properties.group.id' = 'iap_dm_cust_oact_prog_ri_test_env',
  'format' = 'json',
  'scan.startup.mode' = 'latest-offset',
  --'csv.field-delimiter' = ','
  --'scan.startup.mode' = 'timestamp',
  --'scan.startup.timestamp-millis' = '167535360', --通过 
unix_timestamp('2023-02-03 00:00:00')*1000 获取开始时间点
  'json.fail-on-missing-field' = 'false', -- 字段丢失任务不失败
  'json.ignore-parse-errors' = 'true' -- 解析失败跳过
);
CREATE TABLE dm_crh_user_vidro_ri
(
 op_type string
,op_ts string
,`after` string
,current_ts string
,business_flag as get_json_value(`after`,'BUSINESS_FLAG')
,create_datetime as get_json_value(`after`,'CREATE_DATETIME')
,user_id as get_json_value(`after`,'USER_ID')
,join_position_str as get_json_value(`after`,'JOIN_POSITION_STR')
) WITH (
  'connector' = 'kafka',
  'topic' = 'CRH_USER.USERVIDEOFLOW',
  'properties.bootstrap.servers' = '111',
  'properties.group.id' = 'iap_dm_cust_oact_prog_ri_test_env',
  'format' = 'json',
  'scan.startup.mode' = 'latest-offset',
  --'csv.field-delimiter' = ','
  --'scan.startup.mode' = 'timestamp',
  --'scan.startup.timestamp-millis' = 

Re: [ANNOUNCE] Flink Table Store Joins Apache Incubator as Apache Paimon(incubating)

2023-03-27 文章 Yanfei Lei
Congratulations!

Best Regards,
Yanfei

ramkrishna vasudevan  于2023年3月27日周一 21:46写道:
>
> Congratulations !!!
>
> On Mon, Mar 27, 2023 at 2:54 PM Yu Li  wrote:
>>
>> Dear Flinkers,
>>
>>
>> As you may have noticed, we are pleased to announce that Flink Table Store 
>> has joined the Apache Incubator as a separate project called Apache 
>> Paimon(incubating) [1] [2] [3]. The new project still aims at building a 
>> streaming data lake platform for high-speed data ingestion, change data 
>> tracking and efficient real-time analytics, with the vision of supporting a 
>> larger ecosystem and establishing a vibrant and neutral open source 
>> community.
>>
>>
>> We would like to thank everyone for their great support and efforts for the 
>> Flink Table Store project, and warmly welcome everyone to join the 
>> development and activities of the new project. Apache Flink will continue to 
>> be one of the first-class citizens supported by Paimon, and we believe that 
>> the Flink and Paimon communities will maintain close cooperation.
>>
>>
>> 亲爱的Flinkers,
>>
>>
>> 正如您可能已经注意到的,我们很高兴地宣布,Flink Table Store 已经正式加入 Apache 孵化器独立孵化 [1] [2] 
>> [3]。新项目的名字是 Apache 
>> Paimon(incubating),仍致力于打造一个支持高速数据摄入、流式数据订阅和高效实时分析的新一代流式湖仓平台。此外,新项目将支持更加丰富的生态,并建立一个充满活力和中立的开源社区。
>>
>>
>> 在这里我们要感谢大家对 Flink Table Store 项目的大力支持和投入,并热烈欢迎大家加入新项目的开发和社区活动。Apache Flink 
>> 将继续作为 Paimon 支持的主力计算引擎之一,我们也相信 Flink 和 Paimon 社区将继续保持密切合作。
>>
>>
>> Best Regards,
>>
>> Yu (on behalf of the Apache Flink PMC and Apache Paimon PPMC)
>>
>>
>> 致礼,
>>
>> 李钰(谨代表 Apache Flink PMC 和 Apache Paimon PPMC)
>>
>>
>> [1] https://paimon.apache.org/
>>
>> [2] https://github.com/apache/incubator-paimon
>>
>> [3] https://cwiki.apache.org/confluence/display/INCUBATOR/PaimonProposal


<    5   6   7   8   9   10   11   12   13   14   >