У меня есть данные в формате JSON, имеющие формат метки времени ISO 8601, например, «2017-06-29T00: 00: 00-0400», и я пытаюсь использовать AWS Glue для преобразования для использования Athena / Quicksights; однако каждая попытка преобразования, которую я пробовал, все еще видит поле назначения как строку (после сканирования файла назначения json). Я также получаю поле разбора ошибки HIVE_BAD_DATA при попытке выполнить запрос к таблице в Афине
Вы можете попытаться установить timestamp.formats = yyyy-MM-dd'T'HH: mm: ss + | -hhmm в разделе параметров serde определения таблицы.Вы можете сделать это в AWS Glue.
Спасибо за ввод, я смог обойти мою проблему, создав вычисляемое поле в Quicksight на основе строки, используя parseDate (replace (substring ({date_in_ISO}, 1,19), 'T', ""), 'гггг-мм-дд чч: мм: сс')
Попробуйте
df = df.withColumn ("isodate", to_timestamp ("isodate", "yyyy-MM-dd'T'HH: mm: ssZ"))