实时计算 Flink版产品使用合集之使用 left interval join 和 timestamp assigner 进行灰度切换,并发现在灰度完成后水印停滞不前如何解决

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。

问题一:请问一下Flink,我进行双流join之后,为什么右表的数据没有了啊?


请问一下Flink,我进行双流join之后,为什么右表的数据没有了啊? 正常应该是有数据能匹配上的,是我有什么配置没有配吗?在sql里这个配置能更改吗?


参考回答:

超过了这个时间没数据更新,右边就会匹配不到,state有默认存储时间的.这个是不好的,state时间越长,状态越大,推荐维表join,双流join推荐的是双方数据在默认的ttl内都有更新过来,如果你的维表数据不大,flink 1.18 SQL中可以对不同流的的ttl设置存储时间.你的flink如果不是1.18 ,推荐用维表join,维表join是根据a表的时间去实时去数据库拿取,当然你也可以设置缓存


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/571644


问题二:Flink 为什么这里映射的端口不是6123?


Flink kubernetes.hostnetwork.enabled=true为什么这里映射的端口不是6123

然后造成taskmanager和jobmanager通信超时 任务自动cancel 有大佬了解吗?

正常应该会被识别到port才对


参考回答:

在Flink中,6123是默认的RPC端口,用于集群间的通信。然而,在某些情况下,用户可能会选择更改这个端口,例如为了避免与其他服务的端口冲突。

此外,还有一些其他的端口可能在Flink集群中使用,包括但不限于:

  • JobManager Web UI端口:默认为8081,用于展示Flink集群的状态和任务信息。
  • TaskManager DataPort端口:默认为6121,用于TaskManager接收和发送数据流。
  • ZooKeeper端口:默认为2181,用于协调Flink集群的状态和配置。

因此,在使用Flink时,需要关注各个组件使用的端口,并确保它们不会发生冲突。如果遇到端口冲突的问题,可以尝试通过修改Flink的配置文件来更改端口设置。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/571643


问题三:flink在standalone模式下任务失败任务太多次,这个问题有解决方案么?


flink在standalone模式下任务失败任务太多次,会导致jobmanager的jvm heap内存不断增加,这个问题有解决方案么?


参考回答:

Flink在Standalone模式下,如果任务失败次数过多,确实有可能导致JobManager的JVM堆内存不断增加。这种情况可能是由于某些TaskManager上的Task数增多,导致这些TaskManager的负载加重,从而影响了JobManager的内存管理。

为了解决这个问题,您可以考虑以下建议:

  1. 调整TaskManager的内存分配:根据任务的实际需求,可以适当增加或减少TaskManager的内存分配,确保其能够正常运行并处理任务。
  2. 调整JobManager的内存分配:同样,您也可以调整JobManager的内存分配,以确保它能够有效地管理和调度任务。
  3. 监控和诊断:定期检查Flink集群的运行状态和日志,特别是在出现异常情况时。使用工具如jstat来获取GC的信息,这可以帮助您发现和解决元空间占用飙升、频繁GC等问题。
  4. 优化任务逻辑:检查并优化您的Flink任务逻辑,确保它们不会因为某些错误或异常情况而频繁失败。
  5. 使用Systemd管理Flink:考虑使用Linux自带的Systemd方式管理JobManager和TaskManager的启停,这样在它们出现故障时,可以及时将它们拉起来。

总之,要解决Flink在Standalone模式下因任务失败导致的内存问题,需要从多个方面进行考虑和调整,确保集群的稳定性和高效运行。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/571642


问题四:github上的flink没有issue吗?


github上的flink没有issue吗?


参考回答:

https://issues.apache.org/jira/projects/FLINK/issues/


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/571640


问题五:请问下有个Flink场景,我有两个不同数据类型的topic:a,b,这个有人遇到过吗?


请问下有个Flink场景,我有两个不同数据类型的topic:a,b,他们分别又有相同数据类型的后缀为_grey的灰度用的topic: a_grey,b_grey

a_grey和b_grey分别是用来对应a,b进行灰度切换的,灰度流程是先灰度部分数据,后面全量切换,a -> a_grey, b -> b_grey,下一次灰度就是b_grey -> b, a_grey -> a。

我会用datastream api,去拉取a,a_grey进行union,withTimestampAssigner,使用事件时间戳

用datastream api,去拉取b,b_grey进行unionr,使用事件时间戳

然后去将union之后的stream转换为table,a_union_table和b_union_table 然后用flink sql进行left interval join,a_union_table left interval join b_union_table,获取数据再转为stream,用stream api进行mapper操作,最后写入数据库。

a,a_grey,b,b_grey都有8个分区,

a和a_grey会发送到所有的8个分区有数据

但是b,b_grey,只会发送到里面四个分区,其他四个分区没有数据

现在的问题是每次灰度全量切换完成之后,flink的水印就会推进不了,停留在切换的kafka数据时间戳附近,推进不了,请问下,这个有人遇到过吗?是什么原因,可以怎么解决?flink 1.17.1和1.14.5都不行

我尝试过withIdleness,或者不用withTimestampAssigner,但是在下次切换的时候又出这种问题了


参考回答:

将b的source算子并行度设置为1,再通过map算子扩展为8个分区,再进行后面的watermark设置,开窗,jion操作。

这要找到withidleness失效的原因,理论上不会出现这种问题,只要你给4个source都设置了withidleness,那要么一直有问题,要么一直没问题,不会说灰度一下就有问题了。

解决的思路是,你不是有的并行度没数据吗,那我就在source这设置1个并行度,然后再分给多个并行度(随便怎么分,总之要保证eventtime均匀),这样这多个并行度的算子中就不会出现某一个没数据了。这个思路还是不如withidleness的方法好,eventtime均匀不是一个永远成立的条件。

不要在datasource那添加watermark,在后面重开一个map算子,再添加watermark试试


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/571639

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
21天前
|
存储 SQL 关系型数据库
实时计算 Flink版产品使用问题之如何高效地将各分片存储并跟踪每个分片的消费位置
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
21天前
|
消息中间件 Kafka 数据处理
实时计算 Flink版产品使用问题之如何处理数据并记录每条数据的变更
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
21天前
|
资源调度 Java Scala
实时计算 Flink版产品使用问题之如何实现ZooKeeper抖动导致任务失败时,能从最近的检查点重新启动任务
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
21天前
|
消息中间件 存储 关系型数据库
实时计算 Flink版产品使用问题之同步时,上游批量删除大量数据(如20万条),如何提高删除效率
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
21天前
|
Prometheus 监控 Cloud Native
实时计算 Flink版产品使用问题之怎么关闭HDFS的Web界面
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
21天前
|
SQL 关系型数据库 MySQL
实时计算 Flink版产品使用问题之两个数据表是否可以同时进行双向的数据同步
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
21天前
|
NoSQL 关系型数据库 MySQL
实时计算 Flink版产品使用问题之全量同步的内存释放该怎么实现
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2月前
|
存储 监控 大数据
阿里云实时计算Flink在多行业的应用和实践
本文整理自 Flink Forward Asia 2023 中闭门会的分享。主要分享实时计算在各行业的应用实践,对回归实时计算的重点场景进行介绍以及企业如何使用实时计算技术,并且提供一些在技术架构上的参考建议。
697 7
阿里云实时计算Flink在多行业的应用和实践
|
1月前
|
SQL 消息中间件 Kafka
实时计算 Flink版产品使用问题之如何在EMR-Flink的Flink SOL中针对source表单独设置并行度
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
24天前
|
消息中间件 监控 Kafka
联通实时计算平台问题之Flink状态后端数据量较大时,问题排查要如何进行
联通实时计算平台问题之Flink状态后端数据量较大时,问题排查要如何进行

相关产品

  • 实时计算 Flink版