Я знаю, что есть много «Как настроить работу Spark» и т. Д. В блогах и темах, но, к сожалению, я стремлюсь работать со встроенным модулем кластеризации в pyspark (k-means), поэтому такие предложения, как «Использовать limitByKey вместо groupByKey» мне все еще не очень помогает, так как я не могу реально контролировать то, что происходит в коде после того, как я вызываю алгоритм кластеризации, и, очевидно, он потребляет огромный объем дискового пространства для перетасовки (работает на DataFrame размером 25 Гб).
Есть ли способ, например, предлагаемая настройка конфигурации (память исполнителя и т. Д.), Который я могу использовать, чтобы обойти эту проблему? Я бы предпочел, если возможно, сохранить используемое дисковое пространство для файлов tmp под 100-150 Гб.
В целом, я был бы признателен за любую информацию от любого, кто на самом деле использовал один из алгоритмов кластеризации из mllib для больших данных (или большого числа, как у меня). Удалось ли вам как-то избежать масштабных перетасовок, и если да, то как?
Спасибо!