从本地计算机连接到Spark Cluster

lfapxunr  于 2022-11-16  发布在  Apache
关注(0)|答案(1)|浏览(207)

我正在运行Spark Cluster(Master和3个Workers),并从我在本地机顶盒上运行的本地应用程序连接到它。
在我的应用程序中,我创建了一个数据集

List<String> points = Arrays.asList("UK", "US", "France", "Italy");
Dataset<String> dataset = spark.createDataset(points, Encoders. STRING());

运行得非常好,我可以看到数据集是通过运行创建的。

dataset.show()

然后我尝试将其写入本地驱动器的 parquet 文件

dataset.write().mode(SaveMode.Append)
                .parquet(<Hadoop Path>);

并且应用程序挂起,并始终记录以下消息:

WARN  org.apache.spark.scheduler.TaskSchedulerImpl - Initial job has not accepted any resources; check your cluster UI to ensure that workers are registered and have sufficient resources

是否为配置问题?

bvn4nwqk

bvn4nwqk1#

代码本身看起来不错,就WARN而言,虽然有可能是来自某个配置,但是你没有显示出来,没有人能猜到。
但是我建议你先扩大你的数据大小,给予一下。试一个更大的例子,不仅仅是4个元素,因为只有4个元素,当分割的时候,一些执行者可能什么都得不到。

相关问题