Установите конфигурацию Spark при запуске Python в dbt для BigQuery

Достигнут некоторый прогресс в проверке концепции модели dbt Python в GCP (BigQuery). Создал кластер обработки данных для Spark и могу выполнить модель, но в модели появляется ошибка, требующая изменения конфигурации для Spark. В частности, мне нужно установить следующее:

"spark.sql.legacy.parquet.int96RebaseModeInRead": "ИСПРАВЛЕНО" "spark.sql.legacy.parquet.int96RebaseModeInWrite": "ИСПРАВЛЕНО" "spark.sql.legacy.parquet.datetimeRebaseModeInRead": "ИСПРАВЛЕНО" "spark.sql.legacy.parquet.datetimeRebaseModeInWrite": "ИСПРАВЛЕНО"

Я не уверен, где и как установить эти параметры конфигурации искры. Это в файле Profiles.yml или я могу сделать это программно в самой модели Python... или где-то еще?

Попробовал установить в файле Profiles.yml следующее:

аналитический_профиль: выходы: разработчик: server_side_parameters: "spark.sql.legacy.parquet.int96RebaseModeInRead": "ИСПРАВЛЕНО" "spark.sql.legacy.parquet.int96RebaseModeInWrite": "ИСПРАВЛЕНО" "spark.sql.legacy.parquet.datetimeRebaseModeInRead": "ИСПРАВЛЕНО" "spark.sql.legacy.parquet.datetimeRebaseModeInWrite": "ИСПРАВЛЕНО"

Пожалуйста, уточните вашу конкретную проблему или предоставьте дополнительную информацию, чтобы выделить именно то, что вам нужно. Поскольку сейчас написано, трудно точно сказать, о чем вы спрашиваете.

Сергей Кох 11.06.2024 08:26

При запуске моей модели dbt на Python я получаю следующую ошибку: Вы можете получить другой результат из-за обновления Spark 3.0: запись дат до 1582-10-15 или меток времени до 1900-01-01T00:00:00Z в Parquet файлы могут быть опасными, так как файлы могут быть прочитаны Spark 2.x или более поздними версиями Hive, которые используют устаревший гибридный календарь, отличный от пролептического григорианского календаря Spark 3.0+. Более подробную информацию см. в SPARK-31404. При поиске исправлений мне нужно установить параметры искры, указанные выше, но я не знаю, где и как установить эти настройки искры.

Bo Bucklen 11.06.2024 14:40

При поиске исправлений мне нужно установить параметры искры, указанные выше, но я не знаю, где и как установить эти настройки искры.

Bo Bucklen 11.06.2024 15:01
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
3
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это должно было быть очевидно, но я не связал воедино тот факт, что конфигурация Spark была частью объекта сеанса, который передается в функцию модели. Это исправило ошибку, которую я получал:

session.conf.set("spark.sql.legacy.parquet.datetimeRebaseModeInWrite", "CORRECTED")
session.conf.set("spark.sql.legacy.parquet.int96RebaseModeInWrite", "CORRECTED")
session.conf.set("spark.sql.legacy.parquet.datetimeRebaseModeInRead", "CORRECTED")
session.conf.set("spark.sql.legacy.parquet.datetimeRebaseModeInWrite", "CORRECTED")

Другие вопросы по теме