Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.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
如何在Spark RDD(Java)而不是scala、python中通过索引获取元素_Java_Python_Apache Spark_Pyspark_Rdd - Fatal编程技术网

如何在Spark RDD(Java)而不是scala、python中通过索引获取元素

如何在Spark RDD(Java)而不是scala、python中通过索引获取元素,java,python,apache-spark,pyspark,rdd,Java,Python,Apache Spark,Pyspark,Rdd,我知道方法rdd.first(),它给了我rdd中的第一个元素 另外,还有方法rdd.take(num),它给出了第一个num元素 但是,是否有可能通过索引获取元素?RDD没有索引,在大多数情况下,RDD不能保证顺序,也不支持有效的单个项目访问 你可以 zipWithIndex和filter zipWithIndex,交换元素和查找 但这是不建议的,需要线性扫描,并且可能具有不确定性行为。对于分布式处理系统来说,顺序并不重要。

我知道方法
rdd.first()
,它给了我
rdd
中的第一个元素

另外,还有方法
rdd.take(num)
,它给出了第一个
num
元素


但是,是否有可能通过索引获取元素?

RDD没有索引,在大多数情况下,RDD不能保证顺序,也不支持有效的单个项目访问

你可以

  • zipWithIndex
    filter
  • zipWithIndex
    ,交换元素和
    查找

但这是不建议的,需要线性扫描,并且可能具有不确定性行为。

对于分布式处理系统来说,顺序并不重要。