通過乙個實驗來看spark 中 map 與 flatmap 的區別。
步驟一:將測試資料放到hdfs上面
hadoopdfs -put data1/test1.txt /tmp/test1.txt
該測試資料有兩行文字:
步驟二:在spark中建立乙個rdd來讀取hdfs檔案/tmp/test1.txt
步驟三:檢視map函式的返回值
得到map函式返回的rdd:
檢視map函式的返回值——檔案中的每一行資料返回了乙個陣列物件
步驟四:檢視flatmap函式的返回值
得到flatmap函式返回的rdd:
檢視flatmap函式的返回值——檔案中的所有行資料僅返回了乙個陣列物件
總結:- spark 中 map函式會對每一條輸入進行指定的操作,然後為每一條輸入返回乙個物件;
- 而flatmap函式則是兩個操作的集合——正是「先對映後扁平化」:
操作1:同map函式一樣:對每一條輸入進行指定的操作,然後為每一條輸入返回乙個物件
操作2:最後將所有物件合併為乙個物件
Spark 中map與 flatMap的區別
進入spark安裝目錄,執行.spark shell 步驟一 將測試資料放到hdfs上面 hadoop dfs put data1 test1.txt tmp test1.txt 該測試資料有兩行文字 該測試資料有兩行文字 步驟二 在spark中建立乙個rdd來讀取hdfs檔案 tmp test1....
Spark 中 map 與 flatMap 的區別
通過乙個實驗來看spark 中 map 與 flatmap 的區別。步驟一 將測試資料放到hdfs上面 hadoopdfs put data1 test1.txt tmp test1.txt 該測試資料有兩行文字 步驟二 在spark中建立乙個rdd來讀取hdfs檔案 tmp test1.txt 步...
Spark 中 map 與 flatMap 的區別
通過乙個實驗來看spark 中 map 與 flatmap 的區別。步驟一 將測試資料放到hdfs上面 hadoopdfs put data1 test1.txt tmp test1.txt 該測試資料有兩行文字 步驟二 在spark中建立乙個rdd來讀取hdfs檔案 tmp test1.txt 步...