#partitioning #aws-glue #aws-glue-spark
#разделение #aws-glue #aws-glue-spark
Вопрос:
Если у меня задание на склеивание выполняется каждый час, но разделяется по дням… какова ожидаемая функциональность? Будет ли задание сначала создавать раздел для этого дня, а затем последующие задания будут добавляться к этому разделу? Есть ли какая-либо документация, которая дает представление о том, как это будет работать?
Комментарии:
1. Я понял, что вы хотите понять, как Glue создает выходные разделы для ваших данных, но, на мой взгляд, не хватает дополнительного контекста, который мог бы точно помочь. Предполагая, что вы записываете в s3, раздел фактически является просто еще одним префиксом в корзине. Следовательно, если ваша работа имеет
partitionKeys
значение этого ключа раздела, он будет помещен в префикс с этим именем. По мере обработки новых дат будут создаваться новые префиксы. Подробнее here:docs.aws.amazon.com/glue/latest/dg /…2. Спасибо, я спрашиваю, если я запускаю задание несколько раз в течение дня, и каждый раз при его запуске задается значение одного и того же ключа раздела, будет ли
s3://my_bucket/logs/year=2018/month=01/day=23/
задание добавлять новый файл при каждом запуске в этот раздел? или задание будет добавлено к существующему файлу в этом разделе?3. Таким образом, s3 является неизменяемым по своей природе, что означает, что объекты, которые вы пишете, не могут быть изменены, за исключением обновления метаданных и удаления объектов. Каждое задание создаст уникальные файлы (в зависимости от ваших выходных разделов) в префиксе. Glue основан на spark, поэтому поведение spark будет таким же, как и поведение Glue, за исключением случаев, когда при использовании динамических фреймов у нас нет возможности указать режимы сохранения.