Обработка типа данных DECIMAL в AWS-Glue- Ошибка: HIVE_CURSOR_ERROR: невозможно прочитать значение в 0 в блоке 0 - PullRequest
0 голосов
/ 08 июня 2019

У меня есть задание Glue, которое копирует данные из таблицы CTAS в другую таблицу в формате Parquet. Цель состоит в том, чтобы выбрать подмножество столбцов и строк из таблицы CTAS и загрузить их в целевую таблицу Parquet.

Все работает хорошо, за исключением случаев, когда я пытаюсь просмотреть данные в таблице Parquet, я получаю эту ошибку: HIVE_CURSOR_ERROR: невозможно прочитать значение в 0 в блоке 0 Исследование было выполнено и: config ("spark.sql.parquet.writeLegacyFormat", "true") работает только при работе только с Glue DynamicFrame. В моей работе у меня есть фрейм данных Spark из-за наличия собственного SQL. Затем я преобразовал это обратно в Glue DynamicFrame и применил сопоставление, которое преобразует строку в DECIMAL. Пример: ("units_passed", "string", "units_passed", "decimal (4,1)"), Я также попытался добавить конфигурацию ("spark.sql.parquet.writeLegacyFormat", "true"), которая не решила проблему. Любая помощь приветствуется.

Я ожидаю, что смогу просматривать данные в таблице Parquet без ошибок и с правильным представлением столбцов с типами данных DECIMAL.

...