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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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 1个分区的RDD上的collect、zipWithIndex、map和flatMap是否保持顺序?_Apache Spark - Fatal编程技术网

Apache spark 1个分区的RDD上的collect、zipWithIndex、map和flatMap是否保持顺序?

Apache spark 1个分区的RDD上的collect、zipWithIndex、map和flatMap是否保持顺序?,apache-spark,Apache Spark,我想知道这个简单的问题: 1个分区的RDD上的collect、zipWithIndex、map和flatMap是否保持顺序 谢谢RDD只能按键排序。无法对非键/值数据进行排序 但是,如果RDD中确实有一些已排序的键/值数据,那么collect将保留顺序。请注意,collectAsMap不会保留订单 map返回非键/值数据,因此返回的RDD不会被排序。平面地图也是如此 那mapToPair和flatMapToPair呢。如果这些工作所处理的RDD包含键/值数据,则没有理由假定输出RDD的键相同,因

我想知道这个简单的问题: 1个分区的RDD上的collect、zipWithIndex、map和flatMap是否保持顺序


谢谢

RDD只能按键排序。无法对非键/值数据进行排序

但是,如果RDD中确实有一些已排序的键/值数据,那么collect将保留顺序。请注意,collectAsMap不会保留订单

map返回非键/值数据,因此返回的RDD不会被排序。平面地图也是如此

那mapToPair和flatMapToPair呢。如果这些工作所处理的RDD包含键/值数据,则没有理由假定输出RDD的键相同,因此不能假定顺序被保留。我无法想象,在密钥不变的情况下,这些方法是为了保持顺序而实现的

mapValues和flatMapValues确实保留了输入RDD的键,因此可能保留了顺序,但您必须自己进行调查


至于zipWithIndex,根据这一点:zipWithIndex作用的RDD的顺序没有被保留

我认为RDD的元素从来没有被排序过。除非,也许,如果你做了点什么。