Flink报错问题之数据写入报错如何解决

简介: Flink报错通常是指在使用Apache Flink进行实时数据处理时遇到的错误和异常情况;本合集致力于收集Flink运行中的报错信息和解决策略,以便开发者及时排查和修复问题,优化Flink作业的稳定性。

问题一:flink报错

你好,flink在运行job时发现如下报错 Could not allocate all requires slots within timeout of 300000 ms. Slots required: 3, slots allocated: 2 但是观察flink的web页面时发现slot还有170多个,还有其它原因会导致这个错误的出现吗?*来自志愿者整理的flink邮件归档




参考答案:

分配slot超时了,导致只分配了两个,还有一个超时了没有分配成功,你查看下日志,找下超时原因。*来自志愿者整理的flink



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/372233?spm=a2c6h.13066369.question.43.6f064d5cLVu4GJ



问题二:报错日志如下,为什么出现报错呢?

"报错日志如下,为什么出现报错呢? org.apache.flink.runtime.JobException: Recovery is suppressed by NoRestartBackoffTimeStrategy

at org.apache.flink.runtime.executiongraph.failover.flip1.ExecutionFailureHandler.handleFailure(ExecutionFailureHandler.java:139)

at org.apache.flink.runtime.executiongraph.failover.flip1.ExecutionFailureHandler.getGlobalFailureHandlingResult(ExecutionFailureHandler.java:102)

at org.apache.flink.runtime.scheduler.DefaultScheduler.handleGlobalFailure(DefaultScheduler.java:299)

at org.apache.flink.runtime.operators.coordination.OperatorCoordinatorHolder$LazyInitializedCoordinatorContext.lambda$failJob$0(OperatorCoordinatorHolder.java:635)

at org.apache.flink.runtime.rpc.akka.AkkaRpcActor.lambda$handleRunAsync$4(AkkaRpcActor.java:453)

at org.apache.flink.runtime.concurrent.akka.ClassLoadingUtils.runWithContextClassLoader(ClassLoadingUtils.java:68)

at org.apache.flink.runtime.rpc.akka.AkkaRpcActor.handleRunAsync(AkkaRpcActor.java:453)

at org.apache.flink.runtime.rpc.akka.AkkaRpcActor.handleRpcMessage(AkkaRpcActor.java:218)

at org.apache.flink.runtime.rpc.akka.FencedAkkaRpcActor.handleRpcMessage(FencedAkkaRpcActor.java:84)

at org.apache.flink.runtime.rpc.akka.AkkaRpcActor.handleMessage(AkkaRpcActor.java:168)

at akka.japi.pf.UnitCaseStatement.apply(CaseStatements.scala:24)

at akka.japi.pf.UnitCaseStatement.apply(CaseStatements.scala:20)

at scala.PartialFunction.applyOrElse(PartialFunction.scala:123)

at scala.PartialFunction.applyOrElse$(PartialFunction.scala:122)

at akka.japi.pf.UnitCaseStatement.applyOrElse(CaseStatements.scala:20)

at scala.PartialFunction$OrElse.applyOrElse(PartialFunction.scala:171)

at scala.PartialFunction$OrElse.applyOrElse(PartialFunction.scala:172)

at scala.PartialFunction$OrElse.applyOrElse(PartialFunction.scala:172)

at akka.actor.Actor.aroundReceive(Actor.scala:537)

at akka.actor.Actor.aroundReceive$(Actor.scala:535)

at akka.actor.AbstractActor.aroundReceive(AbstractActor.scala:220)

at akka.actor.ActorCell.receiveMessage(ActorCell.scala:580)

at akka.actor.ActorCell.invoke(ActorCell.scala:548)

at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:270)

at akka.dispatch.Mailbox.run(Mailbox.scala:231)

at akka.dispatch.Mailbox.exec(Mailbox.scala:243)

at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)

at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)

at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)

at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)

Caused by: org.apache.flink.util.FlinkException: Global failure triggered by OperatorCoordinator for 'Source: products[7] -> DropUpdateBefore[8] -> ConstraintEnforcer[9] -> Sink: sink_products[9]' (operator cbc357ccb763df2852fee8c4fc7d55f2).

at org.apache.flink.runtime.operators.coordination.OperatorCoordinatorHolder$LazyInitializedCoordinatorContext.failJob(OperatorCoordinatorHolder.java:617)

at org.apac"



参考答案:

设置了你的时区后,重启flink集群。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/497144?spm=a2c6h.13066369.question.44.6f064d5cVqGiJm



问题三:Flink这个报错是 任务太多了吗?

Flink这个报错是 任务太多了吗? org.apache.flink.shaded.zookeeper3.org.apache.zookeeper.KeeperException$NumberQuotaExceedException: KeeperErrorCode = Nodes number exceeds quota limit for /flink2/application_1670910941835_27837/leader



参考答案:

这个报错是因为 Flink 使用的 ZooKeeper 集群节点数目超出了 ZooKeeper 的节点数量限制。每个 ZooKeeper 集群都有节点数量的限制,当超过限制时就会出现 KeeperException$NumberQuotaExceedException 异常。

该异常一般发生在 Flink 集群规模较大、任务数量较多的情况下。解决该异常的方法是:

1、增加 ZooKeeper 集群的节点数量限制。 在 Kafka、Hadoop 等大数据生态系统中,ZooKeeper 集群节点数量的限制通常会被修改为更大的值。如果您的 ZooKeeper 集群节点数量已达到限制,则需要修改节点数量限制,以容纳更多的 Flink 集群节点。

2、减少 Flink 集群节点数量。 如果您的 ZooKeeper 集群节点数量已经达到了上限,且无法修改限制时,则需要减少 Flink 集群节点数量。可以通过增加每个节点的内存、CPU 资源,以提高每个节点的处理能力,从而减少节点数量。

3、将 Flink 集群拆分成多个子集群。 如果无法增加 ZooKeeper 集群节点数量限制,且无法减少 Flink 集群节点数量时,可以将 Flink 集群拆分成多个子集群,并将它们连接到不同的 ZooKeeper 集群上。这样可以将节点数量分散到多个 ZooKeeper 集群上,从而解决该问题。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/491319?spm=a2c6h.13066369.question.45.6f064d5cnYJqmC



问题四:flink on k8s 报错读不出kafka数据来,on yarn没问题 有大佬知道这什么报错吗?

flink on k8s 报错读不出kafka数据来,on yarn没问题 有大佬知道这什么报错吗?



参考答案:

网络问题。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/492517?spm=a2c6h.13066369.question.46.6f064d5cG6zs1N



问题五:用flink1.13版本写入ES8.5.3版本,数据只能写入一部分,之后报错,为什么?

用flink1.13版本写入ES8.5.3版本,数据只能写入一部分,之后报错Failed Elasticsearch item request: Unable to parse response body for Response{requestLine=POST /_bulk?timeout=1m HTTP/1.1, host=http://10.206.67.212:9200, response=HTTP/1.1 200 OK}; 这是什么原因



参考答案:

这个问题可能是由于ES的限制引起的。ES有一个默认的请求体大小限制,如果一次请求体大小超过该限制,则会抛出类似的异常。根据你提供的信息,问题的原因可能是请求体过大,导致ES无法正确解析请求体,从而导致写入错误。

为了解决这个问题,可以尝试以下几种方法:

增加ES的请求体大小限制。可以在ES的配置文件中调整该值。具体操作可以参考ES的官方文档。

减小flink写入ES时的批处理大小。可以将写入ES的批处理大小调小一些,这样可以减小请求体大小,从而避免ES的限制。

对数据进行分批处理。可以将数据分成多个批次处理,每个批次的数据量比较小,这样可以避免一次请求体过大的问题。

需要注意的是,如果数据量较大,可能需要同时采用多种方法来解决该问题。



关于本问题的更多回答可点击进行查看:

https://developer.aliyun.com/ask/491328?spm=a2c6h.13066369.question.45.6f064d5ca6JeEg

相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
4月前
|
SQL 人工智能 JSON
Flink 2.1 SQL:解锁实时数据与AI集成,实现可扩展流处理
简介:本文整理自阿里云高级技术专家李麟在Flink Forward Asia 2025新加坡站的分享,介绍了Flink 2.1 SQL在实时数据处理与AI融合方面的关键进展,包括AI函数集成、Join优化及未来发展方向,助力构建高效实时AI管道。
846 43
|
4月前
|
SQL 人工智能 JSON
Flink 2.1 SQL:解锁实时数据与AI集成,实现可扩展流处理
本文整理自阿里云的高级技术专家、Apache Flink PMC 成员李麟老师在 Flink Forward Asia 2025 新加坡[1]站 —— 实时 AI 专场中的分享。将带来关于 Flink 2.1 版本中 SQL 在实时数据处理和 AI 方面进展的话题。
308 0
Flink 2.1 SQL:解锁实时数据与AI集成,实现可扩展流处理
|
8月前
|
存储 消息中间件 Kafka
基于 Flink 的中国电信星海时空数据多引擎实时改造
本文整理自中国电信集团大数据架构师李新虎老师在Flink Forward Asia 2024的分享,围绕星海时空智能系统展开,涵盖四个核心部分:时空数据现状、实时场景多引擎化、典型应用及未来展望。系统日处理8000亿条数据,具备亚米级定位能力,通过Flink多引擎架构解决数据膨胀与响应时效等问题,优化资源利用并提升计算效率。应用场景包括运动状态识别、个体行为分析和群智感知,未来将推进湖仓一体改造与三维时空服务体系建设,助力数字化转型与智慧城市建设。
863 3
基于 Flink 的中国电信星海时空数据多引擎实时改造
|
4月前
|
SQL 关系型数据库 Apache
从 Flink 到 Doris 的实时数据写入实践 —— 基于 Flink CDC 构建更实时高效的数据集成链路
本文将深入解析 Flink-Doris-Connector 三大典型场景中的设计与实现,并结合 Flink CDC 详细介绍了整库同步的解决方案,助力构建更加高效、稳定的实时数据处理体系。
1982 0
从 Flink 到 Doris 的实时数据写入实践 —— 基于 Flink CDC 构建更实时高效的数据集成链路
|
5月前
|
存储 消息中间件 搜索推荐
京东零售基于Flink的推荐系统智能数据体系
摘要:本文整理自京东零售技术专家张颖老师,在 Flink Forward Asia 2024 生产实践(二)专场中的分享,介绍了基于Flink构建的推荐系统数据,以及Flink智能体系带来的智能服务功能。内容分为以下六个部分: 推荐系统架构 索引 样本 特征 可解释 指标 Tips:关注「公众号」回复 FFA 2024 查看会后资料~
391 1
京东零售基于Flink的推荐系统智能数据体系
|
9月前
|
Oracle 关系型数据库 Java
【YashanDB知识库】Flink CDC实时同步Oracle数据到崖山
本文介绍通过Flink CDC实现Oracle数据实时同步至崖山数据库(YashanDB)的方法,支持全量与增量同步,并涵盖新增、修改和删除的DML操作。内容包括环境准备(如JDK、Flink版本等)、Oracle日志归档启用、用户权限配置、增量日志记录设置、元数据迁移、Flink安装与配置、生成Flink SQL文件、Streampark部署,以及创建和启动实时同步任务的具体步骤。适合需要跨数据库实时同步方案的技术人员参考。
【YashanDB知识库】Flink CDC实时同步Oracle数据到崖山
|
10月前
|
Java 关系型数据库 MySQL
SpringBoot 通过集成 Flink CDC 来实时追踪 MySql 数据变动
通过详细的步骤和示例代码,您可以在 SpringBoot 项目中成功集成 Flink CDC,并实时追踪 MySQL 数据库的变动。
2556 45
|
9月前
|
消息中间件 关系型数据库 Kafka
阿里云基于 Flink CDC 的现代数据栈云上实践
阿里云基于 Flink CDC 的现代数据栈云上实践
182 1
|
存储 监控 数据处理
flink 向doris 数据库写入数据时出现背压如何排查?
本文介绍了如何确定和解决Flink任务向Doris数据库写入数据时遇到的背压问题。首先通过Flink Web UI和性能指标监控识别背压,然后从Doris数据库性能、网络连接稳定性、Flink任务数据处理逻辑及资源配置等方面排查原因,并通过分析相关日志进一步定位问题。
921 61
|
运维 数据处理 Apache
数据实时计算产品对比测评报告:阿里云实时计算Flink版
数据实时计算产品对比测评报告:阿里云实时计算Flink版

热门文章

最新文章

相关产品

  • 实时计算 Flink版