Менеджер сборки для обработки данных ГИС
Моя организация тратит много времени на обработку данных ГИС. Я создал несколько сценариев Python, которые выполняют различные этапы обработки данных. За исключением первого сценария, все сценарии зависят от другого сценария, который завершается до его запуска. Для выполнения многих сценариев требуется более 5 минут (один - более часа), поэтому я не хочу повторять уже выполненные шаги. Я хочу, чтобы это работало аналогично Make, чтобы в случае возникновения ошибки в "script3" мне не приходилось повторно выполнять "script1" и "script2". Я могу просто перезапустить "script3".
Является ли SCons подходящим инструментом для этого? Я посмотрел на него, и, похоже, он сосредоточен на компиляции кода, а не на запуске скриптов. Я открыт для других подходящих инструментов.
1 ответ
Я не уверен, что вам нужна система сборки. Если я что-то упускаю, вам нужна какая-то управляемая автоматизация для выполнения ваших задач обработки и обработки ошибок времени выполнения.
Конечно, "make" и "SCons" могут это сделать, но это все равно, что использовать базуку для забивания гвоздя. И вы на самом деле упускаете из виду то, что может быть проще и выгоднее тратить время на обучение в долгосрочной перспективе, а именно сам Python. Python - это полноценный многопарадигмальный язык программирования с множеством функций для надежной обработки исключений и взаимодействия с операционной системой (и он активно используется при системном администрировании на Unix-подобных платформах).
Первым простым шагом будет сделать так, чтобы мастер-сценарий вызывал каждый из ваших других сценариев, каждый внутри try ... except
блокировать и обрабатывать исключения в соответствии с вашими требованиями. И вы можете улучшить это по мере продвижения, путем рефакторинга ваших скриптов в согласованное приложение Python.