Для контекста: я просмотрел этот предыдущий вопрос , но был недоволен ответом по двум причинам:
- Я ничего не пишу на Python;на самом деле я не пишу для этого никаких пользовательских сценариев, поскольку полагаюсь на сканер , а не на скрипт Glue.
- Ответ не настолько полный, как мне требуетсяпоскольку это всего лишь ссылка на какую-то библиотеку.
Я хочу использовать AWS Glue для приема некоторых CSV-файлов в схему, а с помощью Athena преобразовать эту таблицу CSV в несколько форматов, отформатированных в Parquet.таблицы для целей ETL.В данных, с которыми я работаю, есть встроенные кавычки, что было бы неплохо, за исключением того факта, что одна моя запись имеет значение:
"blablabla","1","Freeman,Morgan","bla bla bla"
Кажется, что Glue срабатывает сам по себе, когда онвстречается с "Freeman,Morgan"
частью данных.
Если я использую стандартный сканер Glue, я получаю таблицу, созданную с помощью LazySimpleSerDe, которая усекает приведенную выше запись в своем столбце до:
"Freeman,
... что явно нежелательно.
Как заставить сканер выводить файл с правильным SerDe?
[Неприятно] Ограничения:
- Глядя на , а не , выполните это с помощью скрипта Glue, так как для этого я считаю, что мне нужно заранее иметь таблицу, тогда как сканер создаст таблицу от моего имени.
Если бы мне пришлось делать это через Амазонку Афина, я бы чувствовал, что это в значительной степени победит цель, но это надежное решение.