Spark - на моделировании темы не осталось места на диске - PullRequest
1 голос
/ 27 апреля 2019

Я использую ноутбук Jupyter в системе с 64 ГБ ОЗУ, 32 ядрами и 500 ГБ дискового пространства.

Примерно 700 000 документов должны быть смоделированы в 600 тем.Размер словарного запаса составляет 48000 слов.Использовалось 100 итераций.

spark = SparkSession.builder.appName('LDA').master("local[*]").config("spark.local.dir", "/data/Data/allYears/tempAll").config("spark.driver.memory","50g").config("spark.executor.memory","50g").getOrCreate()

dataset = spark.read.format("libsvm").load("libsm_file.txt")

lda = LDA(k=600, maxIter=100 ,  optimizer='em' , seed=2 )

lda.setDocConcentration([1.01])
lda.setTopicConcentration(1.001)
model = lda.fit(dataset)

Превышение квоты диска: ошибка возникает после 10 часов работы

1 Ответ

0 голосов
/ 28 апреля 2019

Вы упомянули, что появившееся сообщение об ошибке указывает на превышение дисковой квоты. Я подозреваю, что Spark перетасовывает данные на диск, и на этом диске недостаточно места.

Чтобы смягчить это, вы должны попытаться явно передать --conf spark.local.dir=<path to disk with space> в место с достаточным пространством. Этот параметр указывает, какой путь Spark будет использовать для записи временных данных на диск (например, при записи данных в случайном порядке между этапами вашей работы). Даже если ваши входные и выходные данные не слишком велики, некоторые алгоритмы могут генерировать очень большое количество случайных данных.

Вы также можете рассмотреть мониторинг выделенного / свободного пространства этого пути, используя du во время выполнения задания, чтобы получить больше информации о том, сколько промежуточных данных записывается. Это подтвердит, что проблема заключается в большом количестве случайных данных, исчерпывающих доступное дисковое пространство.

...