apache-spark - 如何使用 Livy 将 BigQuery Connector 包含在 Dataproc 中

标签 apache-spark google-cloud-dataproc livy

我正在尝试使用驻留在 GCP Dataproc 中的 Livy 运行我的应用程序,但我收到以下消息:“由:java.lang.ClassNotFoundException:bigquery.DefaultSource”引起”

我能够在 Dataproc 内运行 hadoop fs -ls gs://xxxx 并检查 Spark 是否指向正确的位置以便找到 gcs-connector.jar,这没问题也是。

我使用初始化将 Livy 包含在 Dataproc 中 ( https://github.com/GoogleCloudDataproc/initialization-actions/blob/master/livy/ )

如何将 bigquery-connector 包含在 Livy 的类路径中? 请问你能帮帮我吗? 谢谢大家!

最佳答案

您的应用程序似乎依赖于 BigQuery 连接器,而不是 GCS 连接器 (bigquery.DefaultSource)。

默认情况下,GCS 连接器应始终包含在 HADOOP 类路径中,但您必须手动将 BigQuery 连接器 jar 添加到应用程序中。

假设这是一个 Spark 应用程序,您可以设置 Spark jar 属性以在运行时从 GCS 中提取 bigquery 连接器 jar:spark.jars='gs://spark-lib/bigquery/spark-bigquery -latest_2.12.jar'

有关更多安装选项,请参阅 https://github.com/GoogleCloudDataproc/spark-bigquery-connector/blob/master/README.md

关于apache-spark - 如何使用 Livy 将 BigQuery Connector 包含在 Dataproc 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68215418/

相关文章:

apache-spark - Dataproc 未从自定义 Conda channel 安装自定义 Conda 包

pyspark - 在 Zeppelin 上使用 Apache Livy 解释器时,Matplotlib 不绘图

apache-spark - 从 pyspark 数据框中的结构类型获取字段值

apache-spark - 连接 Pyspark 和 Kafka

apache-spark - "No Filesystem for Scheme: gs"在本地运行 spark 作业时

apache-spark - Livy pyspark Jypyter 与 Spark Magic 中的 Python session 错误 - 错误 repl.PythonInterpreter : Process has died with 1

java - 从当前 livy session 访问数据文件

scala - Spark 数据集中的 groupByKey

cassandra - Spark Cassandra 连接器 - where 子句

java - 无法使用来自 Spark 的 GSC 连接器连接 Google 存储文件