我有一个数据框,我想在Spark Scala中将列转换为Set。但是转换时会发生错误java.lang.OutOfMemoryError: Java heap space
。我的数据如此之大,大约有5千万条记录在mongodb中100GB。我读过它是为了成名。
val readConf1 = ReadConfig(Map("uri" -> "mongodb://127.0.0.1/product-repository.detail?readPreference=primaryPreferred"))
val dff = MongoSpark.load(sc, readConf1).toDF()
val setUrl=dff.select(collect_list("DetailUrl")).first().getList[String](0).toSet
这是我的火花conf:
spark.executor.memory 4G
spark.executor.instances 12
spark.executor.cores 4
spark.executor.extraJavaOptions -Xms3600m
它通常以小数据运行,记录少于1,000,000条。如何解决此错误?