Неправильное представление с классификаторами заключается в том, что они предназначены для указания форматов файлов в дополнение к встроенным, таким как JSON, CSV и т. д., а НЕ для указания форматов анализа отдельных типов данных.
Как предполагает пользователь @lilline, лучший способ изменить тип данных — использовать функцию ApplyMapping.
При создании задания Glue вы можете выбрать вариант: Предлагаемый скрипт, сгенерированный AWS Glue.
Затем, выбрав таблицу из каталога Glue в качестве источника, вы можете внести изменения в типы данных, имена столбцов и т. д.
Выходной код может выглядеть примерно так:
applymapping1 = ApplyMapping.apply(frame = datasource0, mappings = [("paymentid", "string", "paymentid", "string"), ("updateddateutc", "string", "updateddateutc", "timestamp"), ...], transformation_ctx = "applymapping1")
Эффективное преобразование строки updateddateutc в отметку времени.
Чтобы создать классификатор, вам нужно будет указать каждый отдельный столбец в файле.
Classifier type: Grok
Classification: Name Grok
pattern: %{MY_TIMESTAMP}
Custom patterns MY_TIMESTAMP (%{USERNAME:test}[,]%{YEAR:year}[-]%{MONTHNUM:mm}[-]%{MONTHDAY:dd} %{TIME:time})
person
comfytoday
schedule
12.07.2018