Как включить коннектор BigQuery в Dataproc с помощью Livy

avatar
Celso Marques
1 июля 2021 в 18:41
161
1
2

Я пытаюсь запустить свое приложение с помощью Livy, которая находится внутри GCP Dataproc, но получаю следующее: "Вызвано: java.lang.ClassNotFoundException: bigquery.DefaultSource"

Я могу запустить hadoop fs -ls gs://xxxx внутри Dataproc, и я проверил, указывает ли Spark на правильное место, чтобы найти gcs-connector.jar, и это тоже нормально .

Я включил Livy в Dataproc с помощью инициализации (https://github.com/GoogleCloudDataproc/initialization-actions/blob/master/livy/)

Как включить коннектор bigquery-connector в путь к классам Livy? Не могли бы вы мне помочь, пожалуйста? Всем спасибо!

Источник

Ответы (1)

avatar
Jerry Ding
2 июля 2021 в 18:48
2

Похоже, ваше приложение зависит от коннектора BigQuery, а не коннектора GCS (bigquery.DefaultSource).

Коннектор GCS всегда должен быть включен в путь к классам HADOOP по умолчанию, но вам придется вручную добавить JAR коннектора BigQuery в ваше приложение.

Предполагая, что это приложение Spark, вы можете настроить свойство JAR Spark так, чтобы оно извлекало JAR-коннектор bigquery из GCS во время выполнения: spark.jars='gs://spark-lib/bigquery/spark-bigquery-latest_2.12.jar'

Дополнительные варианты установки см. https://github.com/GoogleCloudDataproc/spark-bigquery-connector/blob/master/README.md