spark读取本地文件

 /**
   * Read a text file from HDFS, a local file system (available on all nodes), or any
   * Hadoop-supported file system URI, and return it as an RDD of Strings.
   */
  def textFile(
      path: String,
      minPartitions: Int = defaultMinPartitions): RDD[String] = withScope {
    assertNotStopped()
    hadoopFile(path, classOf[TextInputFormat], classOf[LongWritable], classOf[Text],
      minPartitions).map(pair => pair._2.toString).setName(path)
  }

由spark的源码源码的注释能够知道,spark能够读取本地数据文件,可是须要在全部的节点都有这个数据文件(亲测,在有三个节点的集群中,只在master中有这个数据文件时执行textFile方法一直报找不到文件,node

在另外两个work中复制这个文件以后,就能够读取文件了)ide

sc.textFile("file:///root/wc/sparkInput")在idea中读取本地文件是因为本地环境中有hadoop的环境变量.在集群中若是须要加载本地的文件还不如传到hdfs上,而后从hdfs中读取数据.(spark用的是1.6.1)由于