В прошлом пайплайне финальный таск, укладывающий данные в БД SQLite принимал 2 параметра:
Хорошо бы иметь возможность указать период и загрузить все данные за этот период параллельно, дабы сократить время выполнения пайплайна.
При запуске задачи в командной строке можно задать дополнительный параметр --workers
. Этот параметр указывает на то сколько воркеров необходимо поднять (как дочерние процессы), чтобы начать выполнение задач. Дело в том, что в пайплайнах нередко бывают ситуации, когда одновременно может выполняться не 1 таск, а несколько. В нашем сценарии с CopyTaxiTripData2SQLite
для каждого отдельного месяца можно запускать по 1 воркеру параллельно. Давайте реализуем такую возможность.
Видимо ты рассматриваешь вариант когда одновременно скачаются неколько месяцев, одновременно обработаются и одновременно придут на запись. Такое вряд ли будет, и в целом обработается это гораздо быстрее чем качать это все последовательно, так что в этом смысл все равно есть.
Urev Oleg 2 Октябрь 2022
В нашем сценарии с CopyTaxiTripData2SQLite для каждого отдельного месяца можно запускать по 1 воркеру параллельно. - с SQLite такое невозможно, тк у нее только 1 процесс на запись данных.