gpt4 book ai didi

apache-spark - 使用 Cloud SQL 代理从 Dataproc 连接到 Cloud SQL

转载 作者:行者123 更新时间:2023-12-04 04:14:23 26 4
gpt4 key购买 nike

我正在尝试通过 Cloud SQL 代理(不使用 Hive)和使用 Scala 2.11.12 从 Dataproc 访问 Cloud SQL。 SO中也有类似的问题,但没有人能回答我所面临的问题。

我已经设法将 Dataproc 连接到 Cloud SQL,将 spark.master 置于“本地”模式,但在使用“ yarn ”模式时出现异常,所以我肯定遗漏了一些东西。
我创建了一个 GitHub 存储库,因此任何人都可以在本地进行测试,但您需要运行一个 Cloud SQL 实例:https://github.com/mikela/SomeDataprocSparkJob

该应用程序在执行以下操作时崩溃:

SparkSession
.builder()
.appName("SomeSparkJob")
.getOrCreate()

我在提交作业时得到的异常是 .getOrCreate()以上:
Exception in thread "main" java.lang.NoSuchFieldError: ASCII
at org.apache.hadoop.yarn.api.records.impl.pb.ApplicationSubmissionContextPBImpl.checkTags(ApplicationSubmissionContextPBImpl.java:287)
at org.apache.hadoop.yarn.api.records.impl.pb.ApplicationSubmissionContextPBImpl.setApplicationTags(ApplicationSubmissionContextPBImpl.java:302)
at org.apache.spark.deploy.yarn.Client$$anonfun$createApplicationSubmissionContext$2.apply(Client.scala:245)
at org.apache.spark.deploy.yarn.Client$$anonfun$createApplicationSubmissionContext$2.apply(Client.scala:244)
at scala.Option.foreach(Option.scala:257)
at org.apache.spark.deploy.yarn.Client.createApplicationSubmissionContext(Client.scala:244)
at org.apache.spark.deploy.yarn.Client.submitApplication(Client.scala:180)
at org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:57)
at org.apache.spark.scheduler.TaskSchedulerImpl.start(TaskSchedulerImpl.scala:183)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:501)
at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2520)
at org.apache.spark.sql.SparkSession$Builder$$anonfun$7.apply(SparkSession.scala:935)
at org.apache.spark.sql.SparkSession$Builder$$anonfun$7.apply(SparkSession.scala:926)
at scala.Option.getOrElse(Option.scala:121)
at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:926)
at dev.ancor.somedataprocsparkjob.SomeSparkJob$.main(SomeSparkJob.scala:13)
at dev.ancor.somedataprocsparkjob.SomeSparkJob.main(SomeSparkJob.scala)


问题是:为什么在“ yarn ”模式下运行时会出现该异常,我该如何解决?谢谢!

最佳答案

正如 Gabe Weiss 和 David Rabinowitz 所证实的那样,我们可以将 Dataproc 集群和 Cloud SQL 放在 VPC 网络中,只需使用 private IP .无需使用 Cloud SQL 代理。

关于apache-spark - 使用 Cloud SQL 代理从 Dataproc 连接到 Cloud SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59879055/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com