標籤:
大資料為什麼要選擇Spark
Spark是一個基於記憶體計算的開源叢集計算系統,目的是更快速的進行資料分析。 Spark由加州伯克利大學AMP實驗室Matei為主的小團隊使用Scala開發開發,其核心部分的代碼只有63個Scala檔案,非常輕量級。 Spark 提供了與 Hadoop 相似的開源叢集計算環境,但基於記憶體和迭代最佳化的設計,Spark 在某些工作負載表現更優秀。
在2014上半年,Spark開源生態系統得到了大幅增長,已成為大資料領域最活躍的開源項目之一,當下已活躍在Hortonworks、IBM、 Cloudera、MapR和Pivotal等眾多知名大資料公司。那麼Spark究竟以什麼吸引了如此多的關注,這裡我們看向Dzone上的6個總結。
1. 輕量級快速處理。著眼大資料處理,速度往往被置於第一位,我們經常尋找能儘快處理我們資料的工具。Spark允 許Hadoop叢集中的應用程式在記憶體中以100倍的速度運行,即使在磁碟上運行也能快10倍。Spark通過減少磁碟IO來達到效能提升,它們將中間處 理資料全部放到了記憶體中。Spark使用了RDD(Resilient Distributed Dataset)的理念,這允許它可以透明的記憶體中儲存資料,只在需要時才持久化到磁碟。這種做法大大的減少了資料處理過程中磁碟的讀寫,大幅度的降低了 所需時間。
2. 便於使用,Spark支援多語言。Spark允許Java、Scala及Python,這允許開發人員在自己熟悉的語言環境下進行工作。它內建了80多個高等級操作符,允許在shell中進行互動式查詢。
3. 支援複雜查詢。在簡單的“map”及“reduce”操作之外,Spark還支援SQL查詢、流式查詢及複雜查詢,比如開箱即用的機器學習機圖演算法。同時,使用者可以在同一個工作流程中無縫的搭配這些能力。
4. 即時的流處理。對比MapReduce只能處理離線資料,Spark支援即時的StreamCompute。Spark依賴 Spark Streaming對資料進行即時的處理,當然在YARN之後Hadoop也可以藉助其他的工具進行流式計算。對於 Spark Streaming,Cloudera的評價是:
簡單:輕量級且具備功能強大的API,Sparks Streaming允許你快速開發流應用程式。
容錯:不像其他的流解決方案,比如Storm,無需額外的代碼和配置,Spark Streaming就可以做大量的恢複和交付工作。
整合:為流處理和批處理重用了同樣的代碼,甚至可以將流資料儲存到曆史資料中。
5. 可以與Hadoop和已存Hadoop資料整合。Spark可以獨立的運行,除了可以運行在當下的YARN叢集管理之外,它還可以讀取已有的任何Hadoop資料。這是個非常大的優勢,它可以運行在任何Hadoop資料來源上,比如HBase、HDFS等。這個特性讓使用者可以輕易遷移已有Hadoop應用,如果合適的話。
6. 活躍和無限壯大的社區。Spark起源於2009年,當下已有超過50個機構250個工程師貢獻過代碼,和去年六月相比,程式碼數幾乎擴大三倍,這是個令人豔羨的增長。
經管之家(原人大經濟論壇)推出CDA大資料分析師脫產就業班培訓(http://cda.pinggu.org/bigdata-jy.html), 以大資料分析師為目標,從資料分析基礎、JAVA語言入門和linux作業系統入門 知識學起,系統介紹Hadoop、HDFS、MapReduce和Hbase等理論知識和hadoop的生態環境,詳細示範hadoop三種模式的安裝配 置,以案例的形式,重點講解基於mahout項目的大資料分析之聚類、分類以及主題推薦。重點培養基於Hadoop架構的大資料分析思想及架構設計,通過 示範實際的大資料 分析案例,使學員能在較短的時間內理解大資料分析的真實價值,掌握如何使用hadoop架構應用於大資料分析過程,使學員能有一個快速提升成為兼有理論和 實戰的大資料分析師,從而更好地適應當前互連網經濟背景下對大資料分析師需求的旺盛的就業形勢。
北京現場&遠程直播
時間 |
課 程 |
大綱簡 介 |
第一階段 |
系統基礎篇 15天 |
1.開學典禮及大資料概述 1天 2.linux作業系統及 2天 3.unbuntu系統介紹 1天 4.JAVA基礎 5天 5.python基礎 4天 6.hadoop單機、偽分布、叢集搭建 2天 |
第二階段 |
hadoop生態實戰篇 15天 |
1.HDFS深入剖析 1天 2.MapReduce基礎理論及進階編程實戰 3天 3.Pig原理,部署與Pig Latin語言,應用案例 1天 4.Hive體系架構、安裝與HiveQL及Hive應用案例 3天 5.Zookeeper與分布式系統開發 1天 6.HBase體系架構,叢集部署,管理 2天 7.HBase資料模型,實戰案例建模剖析 3天 8.strom入門及部署 1天 |
第三階段 |
資料分析理論篇 15天 |
1.SPSS軟體入門 1天 2.資料分析之統計基礎(使用軟體為SPSS) 4天 3.R軟體操作入門 1天 4.資料採礦之聚類(使用軟體為R) 3天 5.資料採礦之分類(使用軟體為R) 4天 6.資料採礦之關聯規則(使用軟體為R)2天 |
第四階段 |
大資料分析案例篇 15天 |
1.大資料視覺效果技術及工具簡介 1天 2.大資料背景下隱私保護及技術介紹 1天 3.大資料的分析方法--SMART模型介紹 1天 4.基於hadoop+Mahout的8個大資料分析案例實戰 2天 5.Spark基礎原理、叢集安裝並運行Spark 2天 6.Spark SQL 原理及資料整合應用 2天 7.Spark GraphX圖計算方法應用 1天 8.Spark 推薦應用(ALS方法,FP-growth方法)2天 9.Spark 資料建模流程(logistics迴歸,決策樹,樸素貝葉斯方法)3天 |
第五階段 |
畢業篇 6天 |
1.畢業設計 5天 2.畢業典禮 1天 |
大資料為什麼要選擇Spark