之前一直困惑为什么
libraryDependencies += "amplab" % "spark-indexedrdd" % "0.4.0"这个一直加载不成功,我查找了很多资料,也试过很多次,终于发现了原因,那就是可能是版本兼容的问题。因此我build.sbt中添加了这句话(我主要是通过sbt搭建的scala,因此只是用的是build.sbt文件)
resolvers += "Spark Packages Repo" at "http://dl.bintray.com/spark-packages/maven"
哇偶,神奇的事情发生了,reflesh之后真的成功了。
但是你可能会发现在import indexedRDD之后还是会出现错误,这是主要是因为Spark库中还没有集成indexedRDD因此在进行import的时候添加以下两条:
import edu.berkeley.cs.amplab.spark.indexedrdd.IndexedRDD
import edu.berkeley.cs.amplab.spark.indexedrdd.IndexedRDD._
这样你就会发现不在报错了。IndexedRDD的主要功能会提供跟快捷的查找速度相比于RDD,都是基于分布式的数据集,但是IndexRDD支持通过键值对数据进行查找,缩短了数据的处理速度。