apache-spark - 如何使用 Livy 在 Dataproc 中包含 BigQuery 连接器
问题描述
我正在尝试使用位于 GCP Dataproc 中的 Livy 运行我的应用程序,但我得到了这个:“ Caused by: 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/)
如何在 Livy 的类路径中包含 bigquery-connector?请问你能帮帮我吗?谢谢你们!
解决方案
看起来您的应用程序依赖于 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
推荐阅读
- r - R闪亮的条件面板在多个页面上使用相同的过滤器
- react-native - React Native中大文件上传的最佳解决方案是什么
- javascript - Node.js Express - 模块与中间件
- sql-server - 按月份名称对查询输出进行排序
- wordpress - 使用带有 Wordpress ACF 转发器字段的 Bootstrap Accordion
- html - 如何使用 Flexbox 以角度并排对齐 2 个不同的组件
- python - 如何使用我的类型进行预测
在我的一组图像上?Python / Torchvision / PyTorch - elasticsearch - 弹性搜索将多词标记组合到单个标记
- react-native - 检查是否在反应本机测试中调用了navigation.navigate
- c# - 无法添加 cookie 选项