Я работаю с pyspark 2.1.1.
Я создал PySpark DataFrame с sqlContext.sql('select...')
на искровом кластере, который слишком велик для .collect () или .toPandas ().
Поскольку я хочу использовать его в небольших частях с пандами, сначала я просто хочу поработать над очень маленькой частью в пандах, чтобы протестировать некоторый код.
Я пробовал несколько комбинаций .limit(), .cache (), collect () и .toPandas () все разбили мой sparkContext и / или вызвали java.lang.OutOfMemoryError
.
Например, хотя Dataframe имеет только 3 маленьких столбца: этот код вызываетOutOfMemoryError:
test = psdf.limit(5).cache()
test2 = test.collect()
Похоже, что .limit () на самом деле не работает так, как я ожидаю.
Как мне извлечь небольшую часть таблицы с помощью pyspark, которая на самом деле простомаленькая часть, с которой я могу работать очень быстро?