3個案例教你用Spark解決Map Reduce問題!
Spark是一個Apache專案,它被標榜為“快如閃電的叢集計算”。它擁有一個繁榮的開源社群,並且是目前最活躍的Apache專案。
Spark提供了一個更快、更通用的資料處理平臺。和Hadoop相比,Spark可以讓你的程式在記憶體中執行時速度提升100倍,或者在磁碟上執行時速度提升10倍。同時spark也讓傳統的mapreducejob開發變得更加簡單快捷。之前我們大聖眾包小編也為大家整理過Spark書單和方法,而本文將簡單介紹幾個經典hadoop的mr按理用spark實現,來讓大家熟悉spark的開發。
最大值最小值
求最大值最小值一直是Hadoop的經典案例,我們用Spark來實現一下,藉此感受一下spark中mr的思想和實現方式。話不多說直接上code
預期結果:
max:1001min:2
思路和hadoop中的mr類似,設定一個key,value為需要求最大與最小值的集合,然後再groupBykey聚合在一起處理。第二個方法就更簡單,效能也更好。
平均值問題
求每個key對應的平均值是常見的案例,在spark中處理類似問題常常會用到combineByKey這個函式,詳細介紹請google一下用法,下面看程式碼:
我們讓每個partiton先求出單個partition內各個key對應的所有整數的和sum以及個數count,然後返回一個pair(sum,count)在shuffle後累加各個key對應的所有sum和count,再相除得到均值.
TopN問題
Topn問題同樣也是hadoop種體現mr思想的經典案例,那麼在spark中如何方便快捷的解決呢:
思路很簡單,把資料groupBykey以後按key形成分組然後取每個分組最大的2個。預期結果:
以上簡單介紹了一下hadoop中常見的3個案例在spark中的實現。如果讀者們已經接觸過或者寫過一些hadoop的mapreducejob,那麼會不會覺得在spark中寫起來方便快捷很多呢。
相關推薦
3個案例教你用Spark解決Map Reduce問題!
Spark是一個Apache專案,它被標榜為“快如閃電的叢集計算”。它擁有一個繁榮的開源社群,並且是目前最活躍的Apache專案。 Spark提供了一個更快、更通用的資料處理平臺。和Hadoop相比,Spark可以讓你的程式在記憶體中執行時速度提升1
該用Python還是SQL?4個案例教你節省時間
不同的 結果集 體感 note pivot sub ram img pan 在數據分析行業,對數據提出的每一個問題都可以用多種潛在的語言和工具包來回答。每種語言都有其優勢,它們之間也存在著不同的區別。不能否認的是,有些操作用Python執行起來要比SQL更加高效。這篇文章分
20 個案例教你在 Java 8 中如何處理日期和時間?
靜態方法 catch 完全 是把 AD 時間 如何判斷 before .com 前言 前面一篇文章寫了《SimpleDateFormat 如何安全的使用?》, 裏面介紹了 SimpleDateFormat 如何處理日期/時間,以及如何保證線程安全,及其介紹了在 Java
雲電腦哪個好?——新睿雲從3個維度教你選擇適合自己的雲電腦
技術發展 能力 建議 cloud 硬件 這一 是什麽 雲服務 image 提起雲計算,很多人想到的都是各個IT企業程序員以及其背後的服務器,距離一般用戶還是非常遙遠,畢竟需要專業知識,門檻很高。不過隨著技術發展,雲電腦這款產品的出現,開始讓沒有編程基礎的用戶也能享受到雲計算
spark | 手把手教你用spark進行資料預處理
本文始發於個人公眾號:**TechFlow**,原創不易,求個關注 今天是spark專題的第七篇文章,我們一起看看spark的資料分析和處理。 過濾去重 在機器學習和資料分析當中,對於資料的瞭解和熟悉都是最基礎的。所謂巧婦難為無米之炊,如果說把用資料構建一個模型或者是支撐一個複雜的上層業務比喻成做飯的話
系統架構培訓:矩陣,封裝,一個案例教你激發客戶潛藏的需求!
系統架構培訓 封裝 矩陣 高層設計 在現實設計中,通過變化分析可以激發客戶潛藏的需求?下面看一個例子。一個美國某國際電子商務公司的訂單處理系統。假設系統必須能夠處理來自不同的國家(地區)的銷售訂單。最開始要求很簡單:處理美國和加拿大的訂單。系統的需求清單如下:要為加拿大和美國構建一個銷售訂單系
手把手教你用jumpserver搭建堡壘機!
ict 添加用戶 以及 這一 用戶名 端口 cal cti tom 首先,jumpserver是什麽呢? Jumpserver 是一款由Python編寫開源的跳板機(堡壘機)系統,實現了跳板機應有的功能。基於ssh協議來管理,客戶端無需安裝agent。 特點: 完全開源,G
python之有用的3個內置函數(filter/map/reduce)
得到 fun func 一個 == reduce 語法 too map 這三個內置函數還是非常有用的,在工作中用的還不少,順手,下面一一進行介紹 1、filter 語法:filter(function,iterable) 解釋:把叠代器通過function函數進行過
10個手機攝影技巧,教你用手機拍出大片
spider 攝影 nbsp 手機拍 amp 教你 spi 九宮格 技巧 一、拍攝時盡量靠近主體 二、選取黃金時間進行拍攝 三、巧用窗邊光線 四、學會留白 五、多使用前置鏡頭 六、使用黑白拍攝 七、發現快門的另一面 八、學會九宮格構圖 九、學會用濾鏡 十、
感情中最易出現這3種問題 教你3招迅速解決
阿里巴巴官方釋出微博稱,連續幾日,一篇名為《阿里員工透露:馬總早移走 1200 億人民幣!網友:不愧是老師》的文章被有組織的進行惡意傳播。阿里巴巴官方釋出微博稱,連續幾日,一篇名為《阿里員工透露:馬總早移走 1200 億人民幣!網友:不愧是老師》的文章被有組織的進行惡意傳播。 對此,阿里表示,該文完全捏造事
十個例子,教你用統計學方法高效完成機器學習專案(下)【楚才國科】
五、資料準備: 資料一般不會直接拿來建模。為了改變資料的形狀或結構,使它更適用於選定的問題架構或學習演算法,需要對資料進行必要的轉化。 資料準備也會用到統計模型,例如: 1、縮放。例如標準化和規範化。 2、編碼。例如整數編碼和獨熱編碼。 3、變換。例如 Box-Cox
十個例子,教你用統計學方法高效完成機器學習專案(上)【楚才國科】
統計學和機器學習是兩個聯絡特別緊密的領域 事實上,這兩者的界限有時候非常模糊。然而有一些明顯屬於統計學領域的方法,不僅可用於機器學習的專案,並且極具價值。公平地說,需要統計學方法來有效地完成機器學習預測建模專案。 一、問題架構: 這包括了問題型別的選擇,例如是迴歸還是分類,也許
10分鐘內教你用Python實現多個檔案自動上傳到百度雲
一、環境說明 Python 3.7 和 win10系統 二、準備工作 首先我們需要安裝一個包,在cmd命令列介面安裝 bypy包。 pip install bypy 然後安裝成功後,在命令列執行命令 bypy info 會彈出一些類似一下的介
教你用大功率路由器實現覆蓋3平方公里wix公眾賬號吸粉神器
相信大家對WiFi廣告路由器已經不再陌生了,但是廣告距離太近了,用處不大。那麼,有沒有一種簡單的辦法將WiFi廣告覆蓋數公里呢?答案當然是肯定的,這也是今天我要教大家制作覆蓋3公里的廣告神器,不需要連線網際網路也可以廣告。 步驟一:當然去淘寶購買一個大功率路
500行程式碼,教你用python寫個微信飛機大戰
這幾天在重溫微信小遊戲的飛機大戰,玩著玩著就在思考人生了,這飛機大戰怎麼就可以做的那麼好,操作簡單,簡單上手。 幫助蹲廁族、YP族、飯圈女孩在無聊之餘可以有一樣東西讓他們振作起來!讓他們的左手 / 右手有節奏有韻律的朝著同一個方向來回移動起來! 這是史詩級的發明,是濃墨重彩的一筆,是…… 在一陣抽搐後,我
教你用Fiddler在電腦上抓手機上的包
手機抓包 fiddler抓手機包 fiddler抓包 代理抓包 電腦上抓包很方便,並且很多種抓包工具。但是我們如果想要抓手機上的包並且分析它, 好像就比較麻煩了。但是我們用Fiddler可以解決這個問題。 首先我們在電腦上打開Fiddler並且設置,進入Tools---Fiddler Opti
教你用古詩詞詮釋人工智能境界
人工智能境界現代社會,如果能用古詩詞來全是某種事物,那很多人都會稱贊你有文化,有底蘊。現在小編就帶你看看微軟大中華區首席戰略官彭壯壯是怎樣用古詩詞來詮釋人工智能境界的吧!第一重境界:一劍橫空星鬥寒,甫隨平北復征蠻。2015年6月,微軟的技術使圖象識別錯誤率降低到3.5%,而普通人類錯誤率是5.1%,這是一個非
手把手教你用ngrx管理Angular狀態
cli emit spl 工作 準備就緒 優雅 spa 現在 改字體 本文將與你一起探討如何用不可變數據儲存的方式進行Angular應用的狀態管理 :ngrx/store——Angular的響應式Redux。本文將會完成一個小型簡單的Angular應用,最終代碼可以在這裏下
手把手教你用EST進行固件降級
希捷固件降級範例型號: ST3600057SS 固件版本 EN03 為DELL EQL存儲設備用的硬盤固件,像這類使用非標準扇區字節數,又或者關閉硬盤寫入緩存的情況,是不能在普通PC上使用,或者表速度很慢,所以我們進行降級固件,讓其能在普通PC上正常使用。本文出自 “EST硬盤之家” 博客,請務必保留此出處
Kindle 推送教程:教你用電子郵箱推送電子書
電子郵件 mail rec 實用 alt nal tom odi 批量 Kindle 推送是什麽意思?如何通過電子郵件附件推送?或許剛剛接觸 Kindle 的朋友對這個概念不是很清楚,其實所謂 Kindle 推送是指亞馬遜提供的一個“Kindle 個人文檔服務”,我們只需要