如何使用Spark';s API distinct()?
我在中检查了API如何使用Spark';s API distinct()?,api,apache-spark,Api,Apache Spark,我在中检查了APIdistinct()的定义, 上面说 返回包含源数据集的不同元素的新数据集 但是分割源数据集的规则是什么 假设我的数据集包含100行,并且我的程序会逐行处理它,如果我使用distinct()拆分数据集,比如300个任务,结果会与拆分100个任务不同吗 Distinct() 您不能使用distinct()分割数据集,它只是删除重复的数据集,因此您将获得相同数量或更少的元素。您可以设置numtask来更改 如果在计算的任何阶段中使用的并行任务的数量不够多,那么集群资源可能会利用不足
distinct()
的定义,
上面说
返回包含源数据集的不同元素的新数据集
但是分割源数据集的规则是什么
假设我的数据集包含100行,并且我的程序会逐行处理它,如果我使用distinct()拆分数据集,比如300个任务,结果会与拆分100个任务不同吗 Distinct()
您不能使用distinct()
分割数据集,它只是删除重复的数据集,因此您将获得相同数量或更少的元素。您可以设置numtask
来更改
如果在计算的任何阶段中使用的并行任务的数量不够多,那么集群资源可能会利用不足
范例
数据集((1)、(2)、(2)、(3))变为((1)、(2)、(3))
拆分元素
要拆分元素,例如将文本文件中的一行拆分为单词,可以使用flatMap
与映射类似,但每个输入项都可以映射到0个或多个输出项(因此func应该返回一个Seq而不是单个项)
请查看。谢谢您的回答。那么,我应该如何分割Spark应用程序上的数据集并确保我的程序可以并发运行呢?顺便问一下,distinct()参数的含义是什么?似乎名为“numPartition”@fanhk:要使用Spark,您需要一个RDD,当使用RDD时,您不必自己设置并发,它是内置的。我在我的帖子中为你的其他问题添加了答案。