- Spark大數據編程實用教程
- 艾叔主編
- 1607字
- 2021-03-23 18:09:22
前言
在大數據開發中,大數據處理是其中十分關鍵、必不可少的一環。Spark是主流的通用大數據處理平臺,因此,要學習大數據開發,必然要學習Spark。
近年來,作者在大數據教學上,尤其是在Spark技術的應用和推廣上進行了一系列有益的嘗試。
● 在全國較早地開設了云計算及大數據相關課程。
● 在全國較早地對本科生開展了系統、深入的Spark編程訓練。
● 主講的Spark實戰視頻課程在51CTO學院長期排名大數據(Spark分類)課程的年銷量第一。
● 作者指導3支Spark零基礎本科生團隊參加了3屆全國性Spark編程比賽(第二屆、第三屆和第四屆全國高校云計算應用創新大賽技能賽),在同多支985/211高校的參賽隊角逐中,我們的本科生隊戰勝了多支研究生隊,共獲得全國總決賽二等獎兩次,三等獎一次。
● 此外,編者指導的云計算和大數據作品,參加國家級科技創新競賽,共獲得全國特等獎一次,一等獎兩次。
在此期間,編者接觸并培養了大量的零基礎Spark學習者,總結出Spark初學者的四個共性問題。
● 內容繁雜,理不清頭緒:Spark的學習內容太多,哪些是必須學的?先學哪個?后學哪個?漫無目的地學,只會導致事倍功半。
● 基礎不夠:Spark開發需要大量的前置知識,例如虛擬機、Linux命令、網絡基礎、分布式系統基礎和編程語言等,很多都是理論和實踐結合在一起的,有一個問題搞不定,就會卡住進行不下去。
● Scala難以學習:Scala語法晦澀難懂,讀Spark的Scala API,明明很簡單的函數,卻看起來像天書。
● 無法動手:看了大量的Spark編程書籍,明白了Spark的技術原理,但是無法將自己的想法實現成Spark程序,更不用說利用Spark特性進行優化了。
為此,編者編寫了這本《Spark大數據編程實用教程》,力圖能夠幫助Spark初學者快速掌握Spark編程技能,少走彎路,具體做法如下。
● 針對第一個問題,本書總結Spark學習的痛點,構建了Spark快速學習路線圖,為讀者提供一條清晰明確的學習路徑;結合編者自身的開發經驗,按照20/80原則,精選Spark學習中的重難點,幫助讀者快速、深入地掌握Spark。
● 針對第二個問題,本書提供了一站式Spark前置課程資源,包括虛擬機、Linux和Shell編程等免費高清視頻,這些視頻在“網易云課堂”上學習人數多,好評度高。每門課大概10個小視頻,短小精悍,每個視頻時長15min以內,即使零基礎也可快速入門。
● 針對第三個問題,本書采用Scala作為Spark應用的開發語言,每個API和關鍵示例代碼都有詳細講解,幫助讀者在實戰中快速掌握Scala;同時,本書還提供配套編寫的《零基礎快速入門Scala》免費電子書,精選Scala知識點,幫助讀者在短時間內快速入門Scala。
● 針對第四個問題,本書提供了非常多的Spark示例,它們來源于編者團隊5年Spark項目開發、3年Spark全國編程大賽的實踐經驗。每個示例都有說明,關鍵代碼有解釋,還有測試數據和運行方法,非常適合自學。可以幫助讀者迅速上手,全面、深入地掌握Spark編程技能,快速積累Spark開發經驗。
本書共10章,分別是Spark與大數據、構建Spark運行環境、開發第一個Spark程序、深入理解Spark程序代碼、RDD編程、Spark SQL結構化數據處理、Spark Streaming、Structured Streaming、Spark R和GraphX。
在章節分工上,艾叔負責整個大綱的擬定,以及第1、2、3、4、5、6、7、8章的編寫;艾叔、汪忠洋共同完成第9、10章的編寫。
本書既可作為高等院校大數據、云計算和人工智能相關專業的教材,也可以作為 Spark學習者和大數據研發人員的技術參考書。
感謝機械工業出版社的胡毓堅總編、和慶娣編輯、王斌編輯的大力支持。正是由于他們專業、熱情和不辭辛苦的付出,才成就了本書,在此表示衷心的感謝!
感謝我的妻子,她營造了一個很好環境,讓我能夠安心寫書,此書能夠順利出版,與她的包容和支持是密不可分的;感謝我的女兒,雖然她不懂書的內容,卻總能給我以最溫暖的鼓勵;感謝我的父母,他們默默的支持是我前行的動力!
感謝一直以來,關心幫助我成長的家人、老師、領導、同學和朋友們!
謹以此書獻給我曾學習、工作和生活多年的母校,雖然現已離開,但仍將銘記校訓繼續前行!
由于時間緊、任務急,書中難免有疏漏之處,如果閱讀過程中有任何疑問,可通過作者郵箱:spark_aishu@126.com,或作者微信及公眾號:艾叔編程聯系我們。

作者微信

作者公眾號
編者
2020.01