不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

前言

現如今,不懂得大數據知識和微服務分佈式的程序員,都不敢說自己是一名合格的程序員。

而懂得這些知識點的程序員,也不敢說自己能完全掌握。

當然,也有天才隱藏在人群中,默默的發光照亮別人,燃燒自己照亮別人。

今天分享的就特別有趣了,總共分為五大實戰技術文檔:Spark、Hadoop、Hbase、Netty、還有微服務分佈式。

第一部分,就先介紹Hadoop實戰吧

作為雲計算所青睞的分佈式架構,Hadoop 是一個 用Java語言實現的軟件框架,在由大量計算機組成的集群中運行海量數據的分佈式計算,是谷歌實現雲計算的重要基石。本篇分為3個部分,深人找出地介紹了Hadoop框架、編寫和運行Hadoop數據處理程序所需的實踐技能及Hadoop之外更大的生態系統。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學


  • 第一部分的3章介紹了Hadoop的框架,涵蓋我們理解並使用Hadoop所需的基礎知識。這些章節描述了構成一個Hadoop集 群的硬件組件,以及建立一個可運行 系統的安裝及配置方法。第一部分還從高層描述了MapReduce框架,並讓你能編寫和運行第一個MapReduce程序。
  • 第二部分包含5章,給出編寫和運行Haoop數據處理程序所需的實踐技能。在這些章節中,我們將探討使用Hadoop分析專利數據集的各種實例,包括Bloom flter這樣的先進算法。我們還將給出對生產環境下使用Hadoop極其有用的編程和管理技術。
  • 第三部分被稱為“Hadoop也瘋狂” ,包含本篇的最後4章,將探討Hadoop之外更大的生態系統。雲服務提供了創建Hadoop集群的另一種方案, 可以替代那種由自己購買並擁有硬件集群的方式。許多附加產品包在MapReduce之上提供了更高級別的編程抽象。最後,我們會看到幾個用Hadoop解決實際業務問題的案例。
不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

第二部分,Spark大數據分析實戰

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

第1章從Spark 概念出發,介紹Spark的來龍去脈,闡述Spark機制與如何進行Spark編程。

第2章詳細介紹 Spark的開發環境配置。

第3章詳細介紹 Spark生態系統重要組件Spark SQL、Spark Streaming、GraphX、MLlib的實現機制,為後續使用奠定基礎。

第4章詳細介紹如何通過Flume、Kafka、Spark Streaming. HDFS. Flask 等開源工具構建實時與離線數據分析流水線。

第5章從實際出發, 詳細介紹如何在Azure雲平臺,通過Nodejs、AzureQueue、Azure Tablc. Spark Streaming、MLlib 等組件對用戶行為數據進行分析與推薦。

第6章詳細介紹如何通過Titter API、Spark SQL、Spark Streaming、Cassandra.D3等組件對Twitter進行情感分析與統計分析。

第7章詳細介紹如何通過Scrapy、Kafka、MongoDB、 Spark、 Spark Streaming.Elastic Search等組件對新聞進行抓取、分析、熱點新聞聚類等挖掘工作。

第8章詳細介紹了協同過濾概念和模型,講解了如何在Spark中實現基於Item-based. User-based 和Model-based協同過濾算法的推薦系統。

第9章詳細介紹了 社交網絡分析的基本概念和經典算法,以及如何利用Spark實現這些經典算法,用於真實網絡的分析。

第10章詳細介紹 了主題分析模型(LDA),講解如何在Spark中實現LDA算法,並且對真實的新聞數據進行分析。

第11章詳細介紹了搜索引擎的基本原理,以及其中用到的核心搜索排序相關算法一-PageRank 和Ranking SVM,並講解了如何在Spark 中實現PageRank和RankingSVM算法,以及如何對真實的Web數據進行分析。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

第三部分,HBase實戰

HBase是一種NoSQL存儲系統,專門]設計用來快速隨機讀寫大規模數據。HBase運行在普通商用服務器上,可以平滑擴展,以支持從中等規模到數十億行、數百萬列的數據集。

本篇是基於經驗提煉而成的指南,它教給讀者如何運用HBase設計、搭建及運行大數據應用系統。全書共分為4個部分。前兩個部分分別介紹了分佈式系統和大規模數據處理的發展歷史,講解HBase的基本原理模式設計以及如何使用HBase的高級特性;第三部分通過真實的應用和代碼示例以及支持這些實踐技巧的理論知識,進一步探索HBase的一些實用技術;第四部分講解如何把原型開發系統升級為羽翼豐滿的生產系統。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學


  • 第1章總體介紹Hadoop、HBase和NoSQL的起源。我們將介紹HBase是什麼和不是什麼,把HBase 和其他NoSQL數據庫進行對比,介紹一些通用的使用場景。我們會幫你判斷對於你的項目和公司來說HBase是否是正確的技術選擇。第1章包括簡單安裝HBase和開始存儲一點兒數據。
  • 第2章開始運行一個示例應用。通過這個例子,我們探討使用HBase的基礎知識。包括創建表、存取數據以及HBase的數據模型。我們也會深入探討HBase的內部工作機制,理解HBase如何組織數據,以及在你的應用中如何利用這些知識。
  • 第3章作為一個分佈式系統重新介紹HBase。本章探討HBase. Hadoop和ZooKeeper之間的關係。你會學到HBase的分佈式架構以及如何轉換成一個強大的分佈式數據系統。動手練習示例中會探討在HBase.上使用Hadoop MapReduce的使用場景。
  • 第4章專門針對HBase模式設計。我們用示例應用來探討這個複雜的主題。你會看到表設計決策是如何影響應用的,以及如何避免常見錯誤。我們會把一些關係型數據庫知識映射到HBase世界裡。你還會看到如何使用服務器端過濾器( server-side filter )來進一步完善模式設計。這一章也涵蓋HBase的高級物理配置選項。
  • 第5章介紹協處理器( coprocessor),這是一- 種把計算推向HBase集群的計算機制。你會用兩種不同的方式擴展示例應用,在集群上構建應用的新特性。
  • 第6章全面、快速地介紹可選的HBase客戶端。HBase 是用Java編寫的,但這並不意味著你的應用必須是用Java編寫的。你可以用各種編程語言和不同的網絡協議來訪問示例應用。
  • 第三部分從第7章開始,將開始構建-一個真實的、 可以投入生產環境的應用系統。你會了解這個應用系統打算解決的問題和特別的挑戰。然後我們深人到實現過程中,在技術細節上做全面考慮。也就是說,從前端到後端全面探討如何在HBase上搭建應用系統。
  • 第8章介紹如何在一個新領域裡使用HBase。我們將帶你快速進入這個新領域GIS,然後教你如何基於HBase使用一種可擴展的方式來面對這個領域裡特別的挑戰。這一章的焦點在於針對特定領域的模式設計以及最大化利用掃描( scan )和過濾器( filter )特性。之前可以沒有GIS經驗,但是要準備好充分運用前面章節學習的知識。
  • 在第四部分,第9章將部署你的HBase集群。從頭開始,我們教你如何著手進行HBase部署。這一章將探討硬件的種類、數量和如何分配硬件。考慮雲服務嗎?我們也會談到。硬件確定以後,我們為你介紹如何為一一個 基本部署配置集群,如何讓集群正常啟動運行。
  • 第10章將把你的部署升級到生產水平。我們教你通過參數和監控工具來監控集群。你會了解到如何根據你的應用負載來進一步優化集群的性能。 我們教你如何管理集群,如何保持集群健康運行,有問題時如何診斷和處理,有需要時如何升級,等等。你將學習使用附帶的工具來管理數據的備份和恢復,以及如何配置多集群間的複製工作。
不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

第四部分,Netty實戰

本篇共分為4個部分:第一部分詳細地介紹Netty的相關概念以及核心組件,第二部分介紹自定義協議經常用到的編解碼器,第三部分介紹Netty對於應用層高級協議的支持,會覆蓋常見的協議及其在實踐中的應用,第四部分是幾個案例研究。此外,附錄部分還會簡單地介紹Maven,以及如何通過使用Maven編譯和運行本書中的示例。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

閱讀本篇不需要讀者精通Java網絡和併發編程。如果想要更加深人地理解本書背後的理念以及Netty源碼本身,可以系統地學習一下Java網絡編程、NIO、併發和異步編程以及相關的設計模式。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

第五部分,微服務分佈式構架開發實戰

隨著第三方框架的逐漸完善,實施微服務架構的開發成本越來越低,分佈式架構成為主流勢不可擋。一個完善的架構或系統中包含了許多的知識點,而每一.個知識點則又可以引出非常多的內容,過度地專注於細節反而會拖慢達成目標的步伐。為了更快地實施微服務,本篇基於開源且穩定的第三方工具,介紹如何構建一個龐大且複雜的分佈式系統,用於滿足項目中的實際需求。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

每一個工具庫為了適應更豐富的使用場景,通常都會把部分參數以配置文件的方式暴露出來,同時提供用於開發環境的默認配置。本書基於快速使用為主線,儘可能多地講解配置參數的意義及它們之間的關係,幫助讀者在掌握足夠多的知識點後,建立起對微服務分佈式架構的認知,以便為探求更深層次的知識點做好鋪墊。

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

至此,Spark、Hbase、Hadoop、Netty、微服務五大技術文檔已經整理完畢啦,需要文檔的朋友,就可以轉發此文關注小編,私信小編“技術”來得到獲取方式嘍~~~

不懂大數據分佈式?Spark+Hbase+Hadoop+微服務+Netty,PDF教你學

感謝大家的支持,持續關注,持續分享乾貨!


分享到:


相關文章: