Spark精华问答 | 为什么要学Spark?
戳藍字“CSDN云計算”關注我們哦!
為什么要學習Spark?作為一個用來實現快速而通用的集群計算的平臺。擴展廣泛使用的MapReduce計算模型,而且高效地支持更多的計算模式,包括交互式查詢和流處理。Spark的一個重要特點就是能夠在內存中計算,因而更快。即使在磁盤上進行的復雜計算,Spark依然比MapReduce更加高效。優勢如此明顯的Spark,是不是要好好學習一下呢?
1
Q:學了Spark有什么用呢?
A:首先說一下Spark的優勢:
1、?更高的性能。因為數據被加載到集群主機的分布式內存中。數據可以被快速的轉換迭代,并緩存用以后續的頻繁訪問需求。在數據全部加載到內存的情況下,Spark可以比Hadoop快100倍,在內存不夠存放所有數據的情況下快hadoop10倍。
2、通過建立在Java、Scala、Python、SQL(應對交互式查詢)的標準API以方便各行各業使用,同時還含有大量開箱即用的機器學習庫。?
3、與現有Hadoop 1和2.x(YARN)生態兼容,因此機構可以無縫遷移。?
4、方便下載和安裝。方便的Shell(REPL: Read-Eval-Print-Loop)可以對API進行交互式的學習。?
5、借助高等級的架構提高生產力,從而可以講精力放到計算上。
所以總結一下就是簡單,快速,兼容性好,功能強大。不用再將注意力放在框架上,而是集中于業務邏輯,所以在大數據中Spark很受歡迎,學習Spark,符合市場需求。
Q:Spark的應用場景有哪些?
A:Yahoo將Spark用在Audience Expansion中的應用,進行點擊預測和即席查詢等
淘寶技術團隊使用了Spark來解決多次迭代的機器學習算法、高計算復雜度的算法等。應用于內容推薦、社區發現等
騰訊大數據精準推薦借助Spark快速迭代的優勢,實現了在“數據實時采集、算法實時訓練、系統實時預測”的全流程實時并行高維算法,最終成功應用于廣點通pCTR投放系統上。
優酷土豆將Spark應用于視頻推薦(圖計算)、廣告業務,主要實現機器學習、圖計算等迭代計算。
Q:Hadoop和Spark比較
A:Hadoop這項大數據處理技術大概已有十年歷史,而且被看做是首選的大數據集合處理的解決方案。MapReduce是一路計算的優秀解決方案,不過對于需要多路計算和算法的用例來說,并非十分高效。數據處理流程中的每一步都需要一個Map階段和一個Reduce階段,而且如果要利用這一解決方案,需要將所有用例都轉換成MapReduce模式。
而Spark則允許程序開發者使用有向無環圖(DAG)開發復雜的多步數據管道。而且還支持跨有向無環圖的內存數據共享,以便不同的作業可以共同處理同一個數據。
Spark運行在現有的Hadoop分布式文件系統基礎之上(HDFS)提供額外的增強功能。它支持將Spark應用部署到現存的Hadoop v1集群(with SIMR – Spark-Inside-MapReduce)或Hadoop v2 YARN集群甚至是Apache Mesos之中。
Q:Spark的特性
A:Spark通過在數據處理過程中成本更低的洗牌(Shuffle)方式,將MapReduce提升到一個更高的層次。利用內存數據存儲和接近實時的處理能力,Spark比其他的大數據處理技術的性能要快很多倍。
Spark還支持大數據查詢的延遲計算,這可以幫助優化大數據處理流程中的處理步驟。Spark還提供高級的API以提升開發者的生產力,除此之外還為大數據解決方案提供一致的體系架構模型。
Spark將中間結果保存在內存中而不是將其寫入磁盤,當需要多次處理同一數據集時,這一點特別實用。Spark的設計初衷就是既可以在內存中又可以在磁盤上工作的執行引擎。當內存中的數據不適用時,Spark操作符就會執行外部操作。Spark可以用于處理大于集群內存容量總和的數據集。
Spark會嘗試在內存中存儲盡可能多的數據然后將其寫入磁盤。它可以將某個數據集的一部分存入內存而剩余部分存入磁盤。開發者需要根據數據和用例評估對內存的需求。Spark的性能優勢得益于這種內存中的數據存儲。
Q:Spark的其他特性包括
A:支持比Map和Reduce更多的函數。優化任意操作算子圖(operator graphs)。可以幫助優化整體數據處理流程的大數據查詢的延遲計算。提供簡明、一致的Scala,Java和Python API。提供交互式Scala和Python Shell。目前暫不支持Java。Spark是用Scala程序設計語言編寫而成,運行于Java虛擬機(JVM)環境之上。目前支持如下程序設計語言
小伙伴們沖鴨,后臺留言區等著你!
關于Spark,今天你學到了什么?還有哪些不懂的?除此還對哪些話題感興趣?快來留言區打卡啦!留言方式:打開第XX天,答:……
同時歡迎大家搜集更多問題,投稿給我們!風里雨里留言區里等你~
福利
1、掃描添加小編微信,備注“姓名+公司職位”,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
2、公眾號后臺回復:白皮書,獲取IDC最新數據白皮書整理資料!
推薦閱讀:
微博宕機復盤:什么樣的技術架構,可支持80個明星并發出軌?
漫畫 | Kubernetes帶你一帆風順去遠航
Android 告急!
超酷炫!Facebook用深度學習和弱監督學習繪制全球精準道路圖
多地GitHub賬號使用受限;Python之父考慮重構解釋器;62歲程序員埋邏輯炸彈 | 開發者周刊
3個核心差異, 告訴你為什么Libra永遠成不了比特幣!
總結
以上是生活随笔為你收集整理的Spark精华问答 | 为什么要学Spark?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 股市熔断是哪一年
- 下一篇: 基金定投有年限限至吗 并不是时间越长越