# #performance #google-cloud-platform #google-cloud-dataproc #data-processing #dataproc
Вопрос:
Я перенес часть приложения C для обработки на DataProc, используя задания PySpark (чтение и запись в большой объем данных — около 10 ГБ) . Приложение C, которое запускается за 8 минут в локальном центре обработки данных, занимает около 4 часов на обработку данных . Может ли кто-нибудь посоветовать мне оптимальную конфигурацию процесса обработки данных ? В настоящее время я использую ниже один :
—главная машина типа n2-highmem-32 —главный загрузочный диск типа pd-ssd —главный загрузочный диск размером 500 —число рабочих 2 —рабочий тип машины n2-highmem-32 —рабочий загрузочный диск типа pd-ssd —рабочий загрузочный диск размером 500 —образ версии 1.4-debian10
Буду очень признателен за любую помощь в оптимальной конфигурации dataproc .
Спасибо, РП
Комментарии:
1. Какова конфигурация оборудования в вашем центре обработки данных? Вы указываете » —num-работники 2`. Для заданий, которые выигрывают от распараллеливания, два рабочих узла не принесут большой пользы, если таковые имеются, если учесть накладные расходы на выполнение заданий. Отредактируйте свой вопрос, указав подробную информацию как о средах, так и о выполняемом коде. В качестве подсказки, n2-highmem-32-это небольшая виртуальная машина. Мой рабочий стол, вероятно, в 10 раз быстрее. При сравнении систем сравните равные системы по объему памяти, процессора, сети и дискового ввода-вывода.
2. Можете ли вы поделиться командой, которую вы используете для запуска этого задания в Datparoc? Кроме того, как вы распараллеливаете обработку в Spark? Какие данные обрабатываются и как вы их разделяете?
Ответ №1:
Вот несколько хороших статей о настройке производительности работы в Dataproc: советы по настройке заданий Spark и 10 вопросов о производительности кластера Hadoop и Spark.