Spark開發-WordCount流程詳細講解
核心
wordcount流程詳細講解
有一份這樣的資料
hello xlucas hello hadoop
hello hadoop
hello spark
hello kafka
最後的結果是這樣的
hello:5
hadoop:2
spark:1
xlucas:1
kafka:1
那麼這裡spark主要做了哪些事情?
我們先從textFile可以看到這裡呼叫了HadoopFile
從HadoopFile這裡我們可以看到,建立了一個HadoopRDD的例項
在去掉Key的時候會做Map操作,這個map會返回 一個MapPartitionsRDD
這裡的flatMap也會返回一個MapPartitionsRDD
在做reduceByKey的時候,其實呼叫了combineByKeyWithClassTag
我們可以看到combineByKeyWithClassTag其實返回了一個shuffledRDD
我們可以看到在shuffledRDD最後還做了一個MapPartitionsRDD的操作,其實這一步主要做了一次資料整理,在操作之前將檔案的key去掉了,這一步將檔案的key加上寫回到HDFS等操作
整個流程圖是這樣的:
相關文章
- .Net for Spark 實現 WordCount 應用及除錯入坑詳解Spark除錯
- dart類詳細講解Dart
- C#開發Windows服務詳細流程C#Windows
- Go Struct超詳細講解GoStruct
- 指標的詳細講解指標
- 大資料開發-Spark Join原理詳解大資料Spark
- 詳細講解:零知識證明 之 ZCash 完整的匿名交易流程
- Java中的static詳細講解Java
- react的詳細知識講解!React
- 詳細講解函式呼叫原理函式
- MyBatis-Plus詳細講解(一)MyBatis
- Spring @Conditional註解 詳細講解及示例Spring
- svn分支協同開發流程(內附超詳細流程圖和解釋)流程圖
- 詳細講解23種設計模式設計模式
- 幣幣交易模式系統開發技術丨質押邏輯詳細開發需求講解模式
- 研發流程在敏捷開發中的詳解敏捷
- Vue 框架-12-Vue 專案的詳細開發流程Vue框架
- 第一個spark應用開發詳解(java版)SparkJava
- 演算法--揹包九講(詳細講解+程式碼)演算法
- MVC 三層架構案例詳細講解MVC架構
- DeFi和CeFi的區別詳細講解
- 詳細講解!RabbitMQ防止資料丟失MQ
- spring 詳細講解(ioc,依賴注入,aop)Spring依賴注入
- Mbps 及其相關單位詳細講解
- 網路安全Bypass網路卡詳細講解
- EventBus 3.0+ 原始碼詳解(史上最詳細圖文講解)原始碼
- Linux開機流程詳解Linux
- 詳細講解:零知識證明 之 zk-SNARK 開篇
- Spark Parquet詳解Spark
- 區塊鏈技術Python(鏈遊)元宇宙系統開發程式詳細講解方案區塊鏈Python元宇宙
- 機器學習之決策樹詳細講解及程式碼講解機器學習
- webpack4.x最詳細入門講解Web
- vue-cli 目錄結構詳細講解Vue
- Spring 面向切面程式設計AOP 詳細講解Spring程式設計
- ES6中rest引數詳細講解REST
- 超詳細講解頁面載入過程
- 【DAPP】佛薩奇2.0矩陣互助開發詳情丨佛薩奇制度系統開發細節講解APP矩陣
- Linux下安裝Hadoop 詳解及WordCount執行LinuxHadoop
- DApp智慧合約技術開發詳情講解APP