开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

flinkcdc 写入hudi报错怎么办?

flinkcdc 写入hudi报错:org.apache.flink.runtime.client.JobInitializationException: Could not start the JobMaster.
at org.apache.flink.runtime.jobmaster.DefaultJobMasterServiceProcess.lambda$new$0(DefaultJobMasterServiceProcess.java:97)
at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1609)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.util.concurrent.CompletionException: org.apache.flink.util.FlinkRuntimeException: Failed to create checkpoint storage at checkpoint coordinator side.
at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273)
at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280)
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1606)
... 3 more
Caused by: org.apache.flink.util.FlinkRuntimeException: Failed to create checkpoint storage at checkpoint coordinator side.
at org.apache.flink.runtime.checkpoint.CheckpointCoordinator.(CheckpointCoordinator.java:324)

展开
收起
小小鹿鹿鹿 2024-01-18 07:43:20 97 0
2 条回答
写回答
取消 提交回答
  • 这个错误是由于Flink在创建检查点存储时出现了问题。你可以尝试以下方法来解决这个问题:

    1. 增加内存分配给Flink任务。你可以在启动Flink任务时,通过设置taskmanager.memory.process.size参数来增加内存分配。例如,将内存分配设置为2GB:
    flink run -m yarn-cluster -yn 4 -yjm 2g -c com.example.MyJob /path/to/your/jarfile.jar
    
    1. 检查你的Hudi配置是否正确。确保Hudi的配置文件(如hudi-conf.yaml)中的相关配置项设置正确,例如:
    hoodie:
      datasource:
        write:
          type: hudi
          table: my_table
          hive_sync_enable: true
          hive_database: my_database
          hive_table: my_table
          hive_partition_fields: partition_field1,partition_field2
          hive_partition_extractor_class: org.apache.hudi.hive.MultiPartKeysValueExtractor
          hive_jdbc_url: jdbc:hive2://localhost:10000/my_database
          hive_username: hive_user
          hive_password: hive_password
    
    1. 如果问题仍然存在,尝试升级Flink和Hudi到最新版本,或者查看Flink和Hudi的官方文档以获取更多关于这个问题的信息。
    2024-01-21 09:10:21
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个错误是由于Flink在尝试创建检查点存储时失败导致的。可能的原因有很多,例如磁盘空间不足、文件系统权限问题等。你可以尝试以下方法来解决这个问题:

    1. 检查你的Kubernetes集群是否有足够的资源(如CPU和内存)来运行Flink任务。如果资源不足,你需要增加集群的资源或者优化你的Flink任务以减少资源使用。

    2. 检查你的Kubernetes集群的文件系统是否有足够的空间来存储检查点。如果空间不足,你需要清理一些不必要的文件或者增加文件系统的容量。

    3. 检查你的Kubernetes集群的权限设置,确保Flink进程有足够的权限来访问和操作文件系统。

    4. 检查你的Flink配置文件,确保所有的配置都是正确的。特别是关于检查点存储的配置,你需要确保它指向一个可用的存储位置。

    5. 如果以上方法都无法解决问题,你可能需要查看Flink的日志以获取更详细的错误信息。这可能会帮助你找到问题的根源。

    2024-01-19 15:12:18
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载