Step 1 of 5

В прошлом пайплайне финальный таск, укладывающий данные в БД SQLite принимал 2 параметра:

  • Год (year)
  • Месяц (month)

Хорошо бы иметь возможность указать период и загрузить все данные за этот период параллельно, дабы сократить время выполнения пайплайна.

При запуске задачи в командной строке можно задать дополнительный параметр --workers. Этот параметр указывает на то сколько воркеров необходимо поднять (как дочерние процессы), чтобы начать выполнение задач. Дело в том, что в пайплайнах нередко бывают ситуации, когда одновременно может выполняться не 1 таск, а несколько. В нашем сценарии с CopyTaxiTripData2SQLite для каждого отдельного месяца можно запускать по 1 воркеру параллельно. Давайте реализуем такую возможность.

Comments

В нашем сценарии с CopyTaxiTripData2SQLite для каждого отдельного месяца можно запускать по 1 воркеру параллельно. - с SQLite такое невозможно, тк у нее только 1 процесс на запись данных.

Видимо ты рассматриваешь вариант когда одновременно скачаются неколько месяцев, одновременно обработаются и одновременно придут на запись. Такое вряд ли будет, и в целом обработается это гораздо быстрее чем качать это все последовательно, так что в этом смысл все равно есть.