использование файлов gzip в Data Crawler - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть файлы gzip в S3 Bucket.Это не файлы CSV, это текстовые файлы со столбцами, разделенными пробелом.Я новичок в использовании Glue и есть ли способ использовать Glue - Data Crawler для чтения этого содержимого?

1 Ответ

0 голосов
/ 19 сентября 2018

Клей просто искра под капотом.Таким образом, вы можете просто использовать один и тот же искровой код для обработки файла с разделителем пробелов, т.е. splitBy и т. Д. Glue Crawler создаст метаданные для таблицы путем анализа данных.Если ваши данные разделены пробелами, то сканер Glue не сможет их проанализировать.Он будет рассматривать всю строку как один текстовый столбец.Чтобы обработать его, вам нужно написать собственный классификатор, используя шаблон Grok.К сожалению, в документации AWS нет четкого примера.Ниже приведен пример:

Предположим, что ваши данные похожи на приведенные ниже: (это также может быть в файле gzip)

qwe 123 22,3 2019-09-02

asd 123 12,3 2019-09-02

de3 345 23,3 2019-08-22

we3 455 12,3 2018-08-11

ccc 543 12,0 2017-12-12

  1. Сначала необходимо создать собственный классификатор

Шаблон Grok

% {NOTSPACE: name}% {INT: class_num}% {BASE10NUM: balance}% {CUSTOMDATE: balance_date}

Пользовательские шаблоны

CUSTOMDATE% {YEAR} -% {MONTHNUM} -% {MONTHDAY}

Теперь создайте сканер, используя только что созданный вами классификатор.Запустите гусеничный ход.Затем проверьте метаданные, созданные в вашей базе данных, чтобы увидеть, правильно ли она распознала данные.

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

Если вы новичок в Glue и хотите попробовать, вы можете прочитать блог, который я написал в LinkedIn относительно Glue.Пожалуйста, нажмите на эту ссылку .

...