Apache spark 小数据集的Dataproc群集上的Pyspark崩溃
我正在运行一个在gcp dataproc集群上创建的jupyter笔记本,该集群由3个工作节点和1个“N1-standard2”类型的主节点(2个内核,7.5GB RAM)组成,用于我的数据科学项目。数据集由约40万行组成。我调用了一个Apache spark 小数据集的Dataproc群集上的Pyspark崩溃,apache-spark,pyspark,group-by,google-cloud-dataproc,pyspark-dataframes,Apache Spark,Pyspark,Group By,Google Cloud Dataproc,Pyspark Dataframes,我正在运行一个在gcp dataproc集群上创建的jupyter笔记本,该集群由3个工作节点和1个“N1-standard2”类型的主节点(2个内核,7.5GB RAM)组成,用于我的数据科学项目。数据集由约40万行组成。我调用了一个groupBy函数,其中groupBy列只包含10个唯一值,因此输出数据帧应该只包含10行 每次我调用grouped_df.show()或grouped_df.toPandas()时,它都会崩溃,其中grouped_df是在调用groupBy()和sum()函数后
groupBy
函数,其中groupBy
列只包含10个唯一值,因此输出数据帧应该只包含10行
每次我调用grouped_df.show()
或grouped_df.toPandas()
时,它都会崩溃,其中grouped_df是在调用groupBy()
和sum()函数后获得的
builder = SparkSession.builder \
.appName("Spark NLP Licensed") \
.master("local[*]") \
.config("spark.driver.memory", "40G") \
.config("spark.serializer", "org.apache.spark.serializer.KryoSerializer") \
.config("spark.kryoserializer.buffer.max", "2000M") \
.config("spark.jars.packages", "com.johnsnowlabs.nlp:spark-nlp_2.11:2.5.1") \
.config("fs.gs.impl", "com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem") \
.config("fs.AbstractFileSystem.gs.impl", "com.google.cloud.hadoop.fs.gcs.GoogleHadoopFS")
return builder.getOrCreate()
这应该是spark最初为处理大型数据集而构建的cakewalk。我正在附加我正在使用的spark配置,该配置已在函数中定义
builder = SparkSession.builder \
.appName("Spark NLP Licensed") \
.master("local[*]") \
.config("spark.driver.memory", "40G") \
.config("spark.serializer", "org.apache.spark.serializer.KryoSerializer") \
.config("spark.kryoserializer.buffer.max", "2000M") \
.config("spark.jars.packages", "com.johnsnowlabs.nlp:spark-nlp_2.11:2.5.1") \
.config("fs.gs.impl", "com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem") \
.config("fs.AbstractFileSystem.gs.impl", "com.google.cloud.hadoop.fs.gcs.GoogleHadoopFS")
return builder.getOrCreate()
`
这就是我得到的错误。请帮忙。
在setMaster()中设置主机的URL很有帮助。现在我可以加载20GB大小的数据,并在集群上执行groupBy()操作。
谢谢@mazaneicha。
.master(local[*])
表示您正在本地运行应用程序,在笔记本中,而不是在群集上运行。@mazaneicha应该是什么?关于您的master的URL,请参阅谢谢。将尝试