Чтение данных из BigQuery с искрой Scala - PullRequest
1 голос
/ 08 апреля 2019

Я пытаюсь прочитать данные из bigquery и распечатать их. Вот что я попробовал,

// Initialize Spark session
val spark = SparkSession
  .builder
  .master("local")
  .appName("Word Count")
  .config("fs.gs.project.id", "bigquery-public-data")
  .config("google.cloud.auth.service.account.enable", "true")
  .config("fs.gs.auth.service.account.json.keyfile", "<key_file>")
  .getOrCreate()

val macbeth = spark.sql("SELECT * FROM shakespeare WHERE corpus = 'macbeth'").persist()
macbeth.show(100)

Но это дает мне ошибку следующим образом,

Exception in thread "main" org.apache.spark.sql.AnalysisException: Table or view not found: shakespeare; line 1 pos 14

Caused by: org.apache.spark.sql.catalyst.analysis.NoSuchTableException: Table or view 'shakespeare' not found in database 'default';

Я не мог найти способ это исправить. Пожалуйста, помогите мне прочитать данные из этого набора данных.

1 Ответ

2 голосов
/ 08 апреля 2019

Таблица или вид не найдены: Шекспир;строка 1 поз. 14

Когда BigQuery ищет таблицу, он ищет ее в рамках идентификатора проекта и набора данных.В вашем коде я вижу две возможные проблемы:

  1. projectId - вы используете публичный проект BigQuery в качестве вашего projectId bigquery-public-data, вам нужно изменить значение этой переменной на правильное значение
  2. datasetId - в своем запросе вы не указали набор данных, в котором хранится shakespeare таблица
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...