#python #google-cloud-platform #virtual-machine #google-compute-engine
# #python #google-облачная платформа #виртуальная машина #google-compute-engine
Вопрос:
У меня есть скрипт на Python, который должен создавать довольно длинный список, в настоящее время используемая мной виртуальная машина имеет 8-ядерный процессор и 30 ГБ оперативной памяти, однако этого недостаточно, поскольку на компьютере заканчивается память, прежде чем он сможет сгенерировать список. Мне интересно, возможно ли иметь, скажем, 5 похожих виртуальных машин, чтобы они работали с одним и тем же сценарием и объединяли свои ресурсы вместе? Я думал об использовании MIG, однако мне интересно, где бы я тогда сохранил сценарий и как они могли бы взаимодействовать между ними?
Комментарии:
1. Есть варианты раскрутки сервера с объемом памяти более 30 ГБ, рассматривали ли вы возможность пойти по этому пути?
2. Вы не упомянули, позволяет ли природа проблемы ее распараллеливать. Вы ищете решение, при котором сегодня вы обрабатываете Y входных элементов на одной виртуальной машине и хотите выполнить ту же работу на 5 виртуальных машинах X, где каждая обрабатывает Y / 5 элементов?
3. Распределенные вычисления для достижения одного и того же результата на нескольких серверах — очень сложная операция. Лучше рассмотреть параллельное вычисление меньшей части (что делает каждый шаблон распределенных вычислений с согласованием в конце).
4. Ваш вопрос требует более подробной информации. Вы не показали сценарий. Вы не включили информацию о том, поддерживает ли скрипт кластеры систем, таких как Hadoop.
5. @lukas рассмотрит это, спасибо!
Ответ №1:
Решил эту проблему, изменив мой скрипт на Python, чтобы использовать генератор вместо сохранения списка в var и просто для цикла через этот генератор, нет необходимости в дополнительной вычислительной мощности.