我為什麼要寫 新書《離線和實時大資料開發實戰》

2021-09-20 12:09:21 字數 2595 閱讀 6250

購買鏈結(機械工業出版社官方**店鋪)

感謝@薛奎 和@空無 大大寫推薦書評。

大資料技術一直是個領先網際網路公司的必備核心技術,阿里巴巴最近10年一直在持續加大投入,並將大資料處理技術用於大量的大規模業務場景。每年雙十一對實時、離線技術也都是極限的考驗,而作者就是在這樣的環境下成長起來,基於真實業務場景鑽研相關的技術,既有實戰也有體系,相信這樣的書會一定會給行業的從業者帶來幫助,尤其是準備用大資料對傳統公司進行改造公升級正摩拳擦掌的朋友。

--空無,阿里巴巴資深總監

這是一本經過實踐淬鍊的大資料實操的書,特別是作者在阿里經歷了不同大資料平台(離線,實時)的演進和迭代,相同的技術,不同的歷鍊,得到的領悟與實踐真經一定會不一樣。同類書籍相信不少,而同作者這樣實戰提煉而成的書應該不多。如果你是乙個真正想**並想從事大資料工作的人,相信這本書會給你莫大幫助。

--薛奎,阿里巴巴資深資料技術專家

念念不忘,終有迴響。

撰寫一本關於資料開發相關書的念頭誕生於幾年前我個人學習資料知識的早期,當時我遍尋市面上所有的資料書籍,沒有發現一本系統化講述、同時又從專案實踐角度突出重點的資料開發書籍。

這本書是從2023年底開始構思的,差不多花費了2023年整年的業餘時間至整體成文,再經歷了2023年這幾個月的正文修改、排版調整、**編輯、最終定稿、出版印刷,5月初這本書終於正式出版。

這本書主要面向大資料開發的初級和中級人員。

個人非常理解某領域初學者的苦衷,對於領域急需入門者來說,首要最重要的不是具體的api、安裝教程等,而是先找到該領域的知識圖譜,有了它,就可按圖索驥,有所學、有所不學,有所深入,有所了解。

本書正是基於這樣的初衷撰寫的,本書最希望的是幫助和加快大資料相關人員建立自己大資料開發領域知識圖譜的過程,能夠更快的了解這片領域,而無需花更長的時間自己去摸索。

當然,另外一方面,未來是乙個dt(data technology)時代,同時隨著人工智慧、大資料、雲計算的崛起,未來資料將扮演關鍵的作用,資料將成為如同水電煤一樣的基礎設施。但是,實際上目前資料的價值還遠遠沒有得到充分的挖掘,比如醫療資料、生物基因資料、交通物流資料、零售資料等。所以個人非常希望本書能夠幫助到各個業務領域的業務分析人員、分析師、演算法工程師等,讓他們更快對熟悉和掌握悉資料的加工處理知識和技巧,從而能夠更好更快地分析資料、挖掘資料和應用資料,讓資料產生更多、更大的價值。

也非常希望通過閱讀本書,讀者能建立自己的大資料開發知識體系和圖譜,並掌握資料開發的各種技術,包含其有關概念、原理、架構以及實際的開發和優化技巧等,並能對實際專案中的資料開發提供指導和參考。

本書包含三大部分,共計12章內容。

第1章  站在資料的全域性角度,對資料流程、流程中涉及的主要資料技術進行了介紹,此外本章還介紹了主要的資料從業者角色和他們的日常工作內容,使讀者有個感性的認識;

第2章  站在資料平台的角度,對離線和實時資料平台架構以及相關的各項技術進行介紹,本章是本書的綱領,同時也給出了資料技術的整體骨架,後續的各章將基於此骨架,具體詳述各項技術;

第二部分為離線資料處理篇,離線資料是目前整個資料開發的根本和基礎,也是目前資料開發的主戰場,本部分詳細介紹了離線資料處理的各種技術,其中:

第3章  詳細介紹離線資料處理的技術基礎hadoop mapreduce和hdfs,本章主要從執行原理和過程方面介紹了此項技術,此章內容是後續第4章和第5章的基礎;

第4章  詳細介紹了hive,hive是目前脫機數處理的主要工具和技術,本章主要介紹了其概念、原理、架構,並以執行**的方式,詳細介紹了其執行過程和機制;

第5章  詳細介紹了hive的優化技術,包含資料傾斜的概念,join無關的優化技巧,join相關的優化技巧尤其是大表和大表join的可能的優化方案等;

第6章  詳細介紹了資料的維度建模技術,包含維度建模的各種概念、維度表和事實表的設計以及大資料時代對於維度建模的改良和優化等;

第7章  主要以虛構的某全國連鎖零售超市futureretailer為例介紹了邏輯資料倉儲的構建,包含資料倉儲的邏輯架構、分層、開發和命名規範等,此外本章還介紹了資料湖的新資料架構。

第三部分為實時資料處理篇,主要介紹了實時資料處理的各項技術,包含storm、spark streaming、flink、beam以及流計算sql等,其中:

第8章  詳細介紹了分布式流式計算最早流行的storm技術,包含原生storm以及衍生的trideng框架;

第9章  主要介紹了spark生態對於流式資料處理的解決方案spark streaming,包含其基本原理介紹、基本api、可靠性、效能調優、資料傾斜和反壓機制等;

第10章 主要介紹了流計算技術新貴flink技術,flink兼顧了資料處理的延遲以及吞吐量,而且具有流計算框架應該具有的諸多資料特性,因此被廣泛認可為下一代的流式處理機引擎;

第11章 主要介紹了google力推的beam技術,beam的設計目標就是統一離線批處理和實時流處理的程式設計正規化,beam抽象出的資料處理的通用處理正規化「beam mode」是流計算技術的核心和精華;

第12章 主要結合flink sql和阿里雲stream sql介紹了流計算 sql以並以典型的幾種實時開發場景為例進行了實時資料開發實戰。

我為什麼要寫部落格?

一 為什麼選擇這個行業 作為乙個剛工作5個月的程式設計師,毫無疑問是個新人。當初在學校學的也不是計算機專業,程式設計完全只是個愛好。14年3月,我 第一次答辯結束,但是和我一組的同學卻退出了這個專案,導師說讓我接著完成。那時候,我還不怎麼懂得拒絕別人,而且覺得多做點東西對自己有好處,所以就答應了。當...

我為什麼要寫部落格

我之所以要寫部落格,是因為去年我們出來實習。找工作的時候,人家都只要有經驗的,對於乙個還沒畢業的大學生來說,這個有點難,而且面試了好多公司,都被問道我又沒有部落格什麼的,那一刻我意識到部落格的重要了,下面是我對寫部落格的看法和我認為堅持寫部落格的好處。1 強化知識點 在寫一篇文章前,你必定是要把以文...

我為什麼要寫部落格?

因為現在知識太複雜了,總是容易忘,而去網上查詢的東西,總是太多太複雜,無法及時有效的找到自己需要的資訊,只有適合自己的才是最好的,而自己總結的才是最適合自己的知識。須知磨刀不誤砍柴功。當我以前老師說你們連yum都不會配置的時候,我們笑了,因為我們已經配置了幾十遍了,現在我真的忘記了。當我在想vi列模...