Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 星星点点_Apache Spark_Shuffle - Fatal编程技术网

Apache spark 星星点点

Apache spark 星星点点,apache-spark,shuffle,Apache Spark,Shuffle,我需要了解在Spark中洗牌是如何发生的。洗牌是否是BYKEY操作中的性能开销。一般来说,对于RDD,洗牌将如何发生,以及配对RDD或联接洗牌将如何发生。如果您可以用RDD和配对RDD中的示例进行解释,那就太好了。在ByKey操作中发生的洗牌操作是一种开销,并且它会带来一组特定的密钥供特定的工作节点处理 当您执行groupByKey()和rdd.toDebugString时,您将看到rdd的各个阶段,在“groupByKey”的情况下,您将看到无序rdd 例如,假设您有3个节点:(假设数据是成对

我需要了解在Spark中洗牌是如何发生的。洗牌是否是BYKEY操作中的性能开销。一般来说,对于RDD,洗牌将如何发生,以及配对RDD或联接洗牌将如何发生。如果您可以用RDD和配对RDD中的示例进行解释,那就太好了。

在ByKey操作中发生的洗牌操作是一种开销,并且它会带来一组特定的密钥供特定的工作节点处理

当您执行groupByKey()和rdd.toDebugString时,您将看到rdd的各个阶段,在“groupByKey”的情况下,您将看到无序rdd

例如,假设您有3个节点:(假设数据是成对的RDD形式)

现在,如果在包含此数据的RDD上执行groupByKey,它将把所有类似的键放在一个节点下。因此,在对数据进行洗牌之后

 Node 1 -> Contains -> ("California", Iterable(("San Francisco", "SanJose")))           

 Node 2 -> Contains -> ("Utah", Iterable(("Salt Lake City", "St.George")))

 Node 3 -> Contains -> ("Texas", Iterable(("Austin"), ("Dallas")))

您可以通过以下文章:
 Node 1 -> Contains -> ("California", Iterable(("San Francisco", "SanJose")))           

 Node 2 -> Contains -> ("Utah", Iterable(("Salt Lake City", "St.George")))

 Node 3 -> Contains -> ("Texas", Iterable(("Austin"), ("Dallas")))