Spark没有读取HDFS文件的方法?那textFile是怎么读的?
生活随笔
收集整理的這篇文章主要介紹了
Spark没有读取HDFS文件的方法?那textFile是怎么读的?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
直入正題吧,ctrl+鼠標點進textFile方法。?
package org.apache.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.* @param path path to the text file on a supported file system* @param minPartitions suggested minimum number of partitions for the resulting RDD* @return RDD of lines of the text file從HDFS、本地文件系統(在所有節點上可用)或任何節點讀取文本文件支持hadoop的文件系統URI,并將其作為字符串的RDD返回。* @param路徑到受支持的文件系統上的文本文件的路徑* @param minPartitions建議結果RDD的最小分區數* @返回文本文件行的RDD*/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包下的flatmap方法怎么跳到了hadoop的包下。而且這幾個類,使我們在mapreduce代碼中用到的類。
分析結果:
Spark是沒有讀取HDFS文件的方法
的,textFile引用的是MR的方法,
MR在讀文件的時候,首先把文件劃
分成一個個
split切片,嚴格地說,partition與
split-對應, 默認情況下 :
block數= split數
split數= partition數
所以:
block數= partition數
總結
以上是生活随笔為你收集整理的Spark没有读取HDFS文件的方法?那textFile是怎么读的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: no.7 _猜数字
- 下一篇: 一个略显复杂的transformatio