Я использую sparklyr и H2O в R для разработки некоторых моделей ML. Получение ошибки при начальном чтении данных. Я извлекаю данные, используя spark_read_csv
, настраиваю разделы, используя sdf_partition
, затем определяю кадр данных H2O, используя as_h2o_frame
.
df <- spark_read_csv(sc,
"frame_name",
"aPathToData.csv")
partitions <- df %>% sdf_partition(training = 0.6,
test_validate = 0.4,
seed=12)
train_set <- as_h2o_frame(sc,
partitions$training,
name="train_set")
Это возвращает ошибку:
Ошибка: использование стека C 38903392 слишком близко к пределу
Я успешно запустил этот точный код на гораздо меньшем наборе данных: 145 МБ против моего текущего CSV, который составляет 2,3 ГБ. Тем не менее, у меня есть 32 ГБ памяти, и она не соответствует размеру набора данных, я отбросил большинство строк и уменьшил его до 32 МБ, но все равно выдает ошибку. Должно быть чем-то уникальным для набора данных, кроме размера.
ОБНОВЛЕНИЕ: ошибка связана с количеством столбцов в наборе данных. Когда я запускаю as_h2o_frame
с количеством столбцов в кадре данных spark за 1689, я получаю сообщение об ошибке. 1689 или меньше столбцов, без ошибок.