Как я могу заставить конкретный набор данных строиться без инкремента без изменения семантической версии в репозитории преобразований?
Подробная информация о нашем конкретном случае использования:
У нас есть около 50 наборов данных, определенных одним инкрементным питоном с помощью ручной регистрации и цикла for. Входными данными для этого преобразования могут быть от 100 до 10000 небольших файлов gzip, поэтому, когда запускается более крупный набор данных, он в конечном итоге разделяет все это на несколько файлов паркета хорошего размера, что идеально подходит для наших последующих задач. Однако после того, как это задание выполнялось инкрементно в течение нескольких месяцев (с файлами, поступающими каждый час), в выходных данных также будет большое количество небольших файлов паркета. Мы хотели бы иметь возможность форсировать сборку моментального снимка этого единственного набора данных без необходимости изменять семантическую версию преобразования, которая запускала бы сборку моментальных снимков для всех 50 наборов данных. Это возможно?
Я понимаю, что потенциальным обходным путем может быть определение максимального количества выходных файлов в самом преобразовании, чтение текущего количества файлов в существующем выводе и принудительное создание моментального снимка, если текущий превышает максимальное значение. Однако, поскольку этот конвейер чувствителен ко времени (должен выполняться менее чем за час), это привнесет в конвейер некоторую степень непредсказуемости, поскольку создание моментального снимка занимает гораздо больше времени. Мы хотели бы иметь возможность запускать эти полные сборки моментальных снимков примерно раз в месяц по выходным.