Flink问题之source并行度不同导致任务没有数据落地如何解决

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。

问题一:‘=-yD Kerberos 认证问题


大家好

我们这里有通过-yd动态的提交Kerberos认证参数的需求 想问下这个jira为啥被标记为了won’t fix,谢谢 https://issues.apache.org/jira/browse/FLINK-12130


参考回答:

这个问题在最新的代码上已经修复了,在flink 1.9 上应该也是不存在这个问题的,你可以用下看看


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


问题二:slot询问


我在的Flink是在yarn上跑,在yarn上部署了个yarn-session,命令如下:

./yarn-session.sh -jm 5120m -tm 10240m -s 30 -d -st

这里我是设置了一个tm上面跑30个slot,但是我在1.8版本的时候,是在yarn中会看到的是一个tm是使用一个cpu,但是我切换到了1.9.1后,发现是一个slot使用一个cpu,导致我设置的并行超出了yarn中的cpu资源。请问在1.9.1中,如果降低这个cpu使用率?


参考回答:

可以通过 “yarn.containers.vcores” 配置每个 TM 的 CPU。

这个配置项如果不配,默认是用slot数量,1.8 应该也是这个行为才对。


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


问题三:Flink1.9批任务yn和ys对任务的影响


跑tpcds的query1: flink run -m yarn-cluster -d -p 100 -yn 20 -ys 5 -yjm 60g -ytm 30g 任务可以正常执行 flink run -m yarn-cluster -d -p 100 -yn 10 -ys 10 -yjm 60g -ytm 30g 任务在做hashjoin的时候就会失败 报错是No pooled slot available and request to ResourceManager for new slot failed 搞不懂这有啥关系,求指教 faaron zheng


参考回答:

Flink 1.9 中 -yn参数应该是不生效的,后续版本中已经删除了这个参数。

根据你的参数,在每个 TM 的内存为30G不变的情况下,每个 TM

中的slot个数(-ys)从5变成10,也就意味着平均每个slot占用的内存变为了原来的一半。

Flink 1.9 的sql batch 算子对 flink managed memory 是有确定的需求的,很可能是这个变化导致单个 slot

的managed memory无法满足算子的资源需求了。


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


问题四:source并行度不同导致任务没有数据落地


最近碰到一个很头疼的事情,两个任务相同的sql语句不同的source,任务的并行度为8,一个source是kafka一个source是rabbitmq,kafka和rabbitmq中加载相同的数据后,source为rabbitmq的任务有数据落地,source为kafka的任务运行好几次都不见有数据落地。因为sql中涉及到了窗口,所以考虑过kafka多partition对数据读取顺序的影响,将所有数据都加载到kafka的同一个partition中重启任务后发现还是没有数据落地。考虑到这两个任务唯一的不同点就是源为rabbitmq的任务source算子的并行度为1,所以将源为kafka的任务的source并行度也设为1,运行任务后发现有数据落地了。source并行度的改变应该只是改变了一下source与其它算子之间的数据传递方式,这种改变会对最终的结果造成影响吗?有没有大佬碰到过相同的问题?

flink版本1.9.1

sql:select count(ps_comment) col1,ceil(stddev_pop(ps_availqty)) col2,

tumble_start(over_time,interval '72' hour) col3, tumble_end(over_time,interval '72' hour) col4, ps_date from cirrostream_kafka_ck_source_03_8x3 where ps_availqty <= 489 and ps_supplycost > 998 and ps_comment not like '%ff%' and ps_partkey <= 3751122 or ps_suppkey = 723 group by ps_date,ps_availqty,tumble(over_time,interval '72' hour) having min(ps_partkey) not in (3525711,3738707,3740245)


参考回答:

你是不是指定了Rowtime的列? 如果指定了,Kafka是否有的通道一直没有数据或者数据没有前进?

Window的输出触发是需要watermark前进的,这也就需要你的每个通道都有数据在时间上前进,也就是说每个Kafka的通道都需要有最新时间点的数据源源不断的来。

你设置成一个并发,那就只要一个通道有数据就可以了,所以绕过了这个问题。


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


问题五:Flink 1.9 SQL Kafka Connector,Json format,how to d


Flink 1.9 SQL Kafka Connector,Json format,how to deal with not json message? Hi community,when I write the flink ddl sql like this:

CREATE TABLE kafka_src ( id varchar, a varchar, b TIMESTAMP, c TIMESTAMP ) with ( ... 'format.type' = 'json', 'format.property-version' = '1', 'format.derive-schema' = 'true', 'update-mode' = 'append' );

If the message is not the json format ,there is a error in the log。 My question is that how to deal with the message which it not json format? My thought is that I can catch the exception in JsonRowDeserializationSchema deserialize() method,is there any parameters to do this? Thanks your replay.


参考回答:

I'm sorry there is no such configuration for json format currently. I think it makes sense to add such configuration like 'format.ignore-parse-errors' in csv format. I created FLINK-15396[1] to track this.


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

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
2月前
|
消息中间件 分布式计算 大数据
大数据-123 - Flink 并行度 相关概念 全局、作业、算子、Slot并行度 Flink并行度设置与测试
大数据-123 - Flink 并行度 相关概念 全局、作业、算子、Slot并行度 Flink并行度设置与测试
160 0
|
1月前
|
存储 监控 数据处理
flink 向doris 数据库写入数据时出现背压如何排查?
本文介绍了如何确定和解决Flink任务向Doris数据库写入数据时遇到的背压问题。首先通过Flink Web UI和性能指标监控识别背压,然后从Doris数据库性能、网络连接稳定性、Flink任务数据处理逻辑及资源配置等方面排查原因,并通过分析相关日志进一步定位问题。
168 61
|
2月前
|
运维 数据处理 Apache
数据实时计算产品对比测评报告:阿里云实时计算Flink版
数据实时计算产品对比测评报告:阿里云实时计算Flink版
|
2月前
|
分布式计算 监控 大数据
大数据-148 Apache Kudu 从 Flink 下沉数据到 Kudu
大数据-148 Apache Kudu 从 Flink 下沉数据到 Kudu
82 1
|
2月前
|
消息中间件 分布式计算 大数据
大数据-128 - Flink 并行度设置 细节详解 全局、作业、算子、Slot
大数据-128 - Flink 并行度设置 细节详解 全局、作业、算子、Slot
153 0
|
2月前
|
资源调度 分布式计算 大数据
大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
124 0
|
2月前
|
SQL 分布式计算 大数据
大数据-108 Flink 快速应用案例 重回Hello WordCount!方案1批数据 方案2流数据(一)
大数据-108 Flink 快速应用案例 重回Hello WordCount!方案1批数据 方案2流数据(一)
59 0
|
Java 中间件 流计算
Flink 如何分流数据
Flink 如何分流数据,3种分流方式
4122 0
|
3月前
|
运维 数据处理 数据安全/隐私保护
阿里云实时计算Flink版测评报告
该测评报告详细介绍了阿里云实时计算Flink版在用户行为分析与标签画像中的应用实践,展示了其毫秒级的数据处理能力和高效的开发流程。报告还全面评测了该服务在稳定性、性能、开发运维及安全性方面的卓越表现,并对比自建Flink集群的优势。最后,报告评估了其成本效益,强调了其灵活扩展性和高投资回报率,适合各类实时数据处理需求。

相关产品

  • 实时计算 Flink版