發表於2024-12-23
我們為什麼需要自己動手做大數據係統?本書從OpenStack雲平颱搭建、軟件部署、需求開發實現到結果展示,以縱嚮角度講解瞭生産性大數據項目上綫的整個流程;以完成一個實際項目需求貫穿各章節,講述瞭Hadoop生態圈中互聯網爬蟲技術、Sqoop、Hive、HBase組件協同工作流程,並展示瞭Spark計算框架、R製圖軟件和SparkRHive組件的使用方法。
如果你是一位在校大學生,對大數據感興趣,也知道使用的企業越來越多,市場需求更是日新月異,但苦於自己基礎不夠,心有餘而力不足;也看過不少大數據方麵的書籍、博客、視頻等,但感覺進步不大;如果你是一位在職人員,但目前主要使用傳統技術,雖然對大數據很有興趣,也深知其對未來的影響,但因時間不夠,雖有一定的基礎,常常也是打兩天魚、曬三天網,進展不是很理想。如果你有上述疑惑或遇到相似問題,本書正好比較適閤你。本書從OpenStack雲平颱搭建、軟件部署、需求開發實現到結果展示,以縱嚮角度講解瞭生産性大數據項目上綫的整個流程;以完成一個實際項目需求貫穿各章節,講述瞭Hadoop生態圈中互聯網爬蟲技術、Sqoop、Hive、HBase組件協同工作流程,並展示瞭Spark計算框架、R製圖軟件和SparkRHive組件的使用方法。本書的一大特色是提供瞭實際操作環境,用戶可以在綫登錄雲平颱來動手操作書中的數據和代碼,登錄網址請參考http://www.feiguyun.com/support。
張魁
虛擬化工程師,Openstack架構師,蘇州某高校雲平颱架構師,十餘年Linux係統運維實踐及虛擬化開發經驗,4年Linux係統補丁開發經驗。先後在美企擔任虛擬化應用運維、服務器集群開發運維工程師或係統開發架構師,高校信息中心雲平颱架構師,主要關注Openstack、Docker及分布式存儲等。
張粵磊
DBA、大數據架構師,十餘年一綫數據處理數據分析實戰經驗。先後在谘詢、金融、互聯網行業擔任數據平颱技術負責人或架構師。主要關注大數據基礎平颱、大數據模型構建和大數據分析。
劉未昕
從事IT研發和項目管理工作十餘年以上。使用多種程序設計語言,目前研究方嚮主要是大數據生態係統,從事金融、數據倉庫等領域研發。五年以上IT行業授課、培訓經驗,並在多所高校擔任外聘講師。
吳茂貴
運籌學與控製論專業研究生學曆。畢業後主要參與數據倉庫、商務智能等方麵的項目,期間做過數據處理、數據分析、數據挖掘等工作,行業涉及金融、物流、製造業等。近期主要做復雜數據存儲、清理、轉換等工作,同時在大數據方麵也很有興趣並投入大量時間和精力,且將持續為之。
第1章 為什麼要自己動手做大數據係統 1
1.1 大數據時代 1
1.2 實戰大數據項目 2
1.3 大數據演練平颱 2
第2章 項目背景及準備 4
2.1 項目背景 4
2.2 項目簡介 4
2.3 項目架構 4
2.4 操作係統 5
2.5 數據存儲 7
2.6 數據處理 8
2.7 開發工具 9
2.8 調試工具 10
2.9 版本管理 10
第3章 大數據環境搭建和配置 11
3.1 各組件功能說明 11
3.1.1 各種數據源的采集工具 12
3.1.2 企業大數據存儲工具 12
3.1.3 企業大數據係統的數據倉庫工具 12
3.1.4 企業大數據係統的分析計算工具 13
3.1.5 企業大數據係統的數據庫工具 13
3.2 大數據係統各組件安裝部署配置 13
3.2.1 安裝的前期準備工作 13
3.2.2 Hadoop基礎環境安裝及配置 15
3.2.3 Hive安裝及配置 21
3.2.4 Sqoop安裝及配置 24
3.2.5 Spark安裝及配置 30
3.2.6 Zookeeper安裝及配置 31
3.2.7 HBase安裝及配置 33
3.3 自動化安裝及部署說明 35
3.3.1 自動化安裝及部署整體架構設計 35
3.3.2 大數據係統自動化部署邏輯調用關係 36
3.4 本章小結 43
第4章 大數據的獲取 44
4.1 使用爬蟲獲取互聯網數據 45
4.2 Python和Scrapy 框架的安裝 45
4.3 抓取和解析招聘職位信息 47
4.4 職位信息的落地 51
4.5 兩個爬蟲配閤工作 53
4.6 讓爬蟲的架構設計更加閤理 55
4.7 獲取數據的其他方式 57
4.8 使用Sqoop同步論壇中帖子數據 57
4.9 本章小結 59
第5章 大數據的處理 60
5.1 Hive是什麼 60
5.2 為什麼使用Hive做數據倉庫建模 60
5.3 飛榖項目中Hive建模步驟 61
5.3.1 邏輯模型的創建 62
5.3.2 物理模型的創建 67
5.3.3 將爬蟲數據導入stg_job錶 74
5.4 使用Hive進行數據清洗轉換 77
5.5 數據清洗轉換的必要性 78
5.6 使用HiveQL清洗數據、提取維度信息 79
5.6.1 使用HQL清洗數據 79
5.6.2 提取維度信息 82
5.7 定義Hive UDF封裝處理邏輯 85
5.7.1 Hive UDF的開發、部署和調用 86
5.7.2 Python版本的UDF 89
5.8 使用左外連接構造聚閤錶rpt_job 92
5.9 讓數據處理自動調度 96
5.9.1 HQL的幾種執行方式 96
5.9.2 Hive Thrift服務 99
5.9.3 使用JDBC連接Hive 100
5.9.4 Python調用HiveServer服務 103
5.9.5 用crontab實現的任務調度 105
5.10 本章小結 107
第6章 大數據的存儲 108
6.1 NoSQL及HBase簡介 108
6.2 HBase中的主要概念 110
6.3 HBase客戶端及JavaAPI 111
6.4 Hive數據導入HBase的兩種方案 114
6.4.1 利用既有的JAR包實現整閤 114
6.4.2 手動編寫MapReduce程序 116
6.5 使用Java API查詢HBase中的職位信息 122
6.5.1 為什麼是HBase而非Hive 122
6.5.2 多條件組閤查詢HBase中的職位信息 123
6.6 如何顯示職位錶中的某條具體信息 132
6.7 本章小結 133
第7章 大數據的展示 134
7.1 概述 134
7.2 數據分析的一般步驟 135
7.3 用R來做數據分析展示 135
7.3.1 在Ubuntu上安裝R 135
7.3.2 R的基本使用方式 137
7.4 用Hive充當R的數據來源 139
7.4.1 RHive組件 139
7.4.2 把R圖錶整閤到Web頁麵中 145
7.5 本章小結 151
第8章 大數據的分析挖掘 152
8.1 基於Spark的數據挖掘技術 152
8.2 Spark和Hadoop的關係 153
8.3 在Ubuntu上安裝Spark集群 154
8.3.1 JDK和Hadoop的安裝 154
8.3.2 安裝Scala 154
8.3.3 安裝Spark 155
8.4 Spark的運行方式 157
8.5 使用Spark替代Hadoop Yarn引擎 160
8.5.1 使用spark-sql查看Hive錶 160
8.5.2 在beeline客戶端使用Spark引擎 161
8.5.3 在Java代碼中引用Spark的ThriftServer 163
8.6 對招聘公司名稱做全文檢索 168
8.6.1 從HDFS數據源構造JavaRDD 169
8.6.2 使用Spark SQL操作RDD 173
8.6.3 把RDD運行結果展現在前端 174
8.7 如何把Spark用得更好 175
8.8 SparkR組件的使用 177
8.8.1 SparkR的安裝及啓動 177
8.8.2 運行自帶的Sample例子 179
8.8.3 利用SparkR生成職位統計餅圖 179
8.9 本章小結 181
第9章 自己動手搭建支撐大數據係統的雲平颱 182
9.1 雲平颱架構 182
9.1.1 一期雲基礎平颱架構 182
9.1.2 二期雲基礎平颱架構 184
9.2 雲平颱搭建及部署 185
9.2.1 安裝組件前準備 185
9.2.2 Identity(Keystone)組件 190
9.2.3 Image(Glance)組件 198
9.2.4 Compute(Nova)組件 201
9.2.5 Storage(Cinder)組件 206
9.2.6 Networking(Neutron)組件 210
9.2.7 Ceph分布式存儲係統 221
9.2.8 Dashboard(Horizon)組件 230
9.3 Identity(Keystone)與LDAP的整閤 232
9.4 配置Image組件大鏡像部署 235
9.5 配置業務係統無縫遷移 236
9.6 本章小結 237
參考文獻 238
前 言
一個遊泳愛好者,最大的煩惱是什麼?沒有好的教練?缺少好的教材?也許不是。如果哪天自己能擁有一個遊泳池,可隨時暢遊,而且維護成本很低廉,甚至免費,同時還有教練的指導和一些遊泳愛好者一起,那應該是一件很美的事。對於一個大數據愛好者,如果也能擁有一個屬於自己的大數據實踐環境,能夠方便、快捷、隨時隨地使用真實環境,同時還有一些實戰性、生産性的項目或課件,與一些誌同道閤的小夥伴一起攻堅剋難,應該也是一件令人期待的事。
“紙上得來終覺淺,絕知此事要躬行”。要掌握一門技術,尤其像大數據相關技術,涉及的內容多,範圍廣,對環境的要求高,如果隻是看看書、看看視頻,很難深入理解,更不用說融會貫通瞭。一些有條件的學生,他們可以搭幾個節點,組成一個微型大數據群,照著書中的一些實例練習,但這些練習往往支離破碎,缺乏係統性、生産性,更不用說包含生産性項目中的版本控製、質量管理和流程規範等。而這些對實施生産項目來說很重要,有時其重要性超過瞭對技術的要求。本書,就是為彌補這些內容而寫的。
除瞭實戰性、生産性的課件外,我們還提供瞭隨時隨地可操作、可實踐的大數據雲平颱——飛榖雲,這是我們自主開發的大數據平颱,該平颱用戶可通過外網登錄,與論壇及門戶實現無縫連接。此外,還有很多誌同道閤的大數據愛好者一起學習、一起做項目。
本書主要內容
第1章,介紹我們為什麼需要自己動手做大數據係統。
第2章,介紹動手做大數據係統的項目背景、項目架構及相關基礎知識。
第3章,介紹大數據係統環境的搭建和配置,主要包括如何搭建和配置Hadoop集群、Sqoop、Hive、HBase、ZooKeeper、Spark、MySQL等,圖文並茂,內容翔實。
第4章,介紹大數據係統中數據獲取相關技術,包括如何利用爬蟲技術獲取平麵數據和使用Sqoop獲取結構化數據。
第5章,介紹大數據係統中數據倉庫工具Hive的使用方法及進行ETL的過程詳解。
第6章,介紹大數據係統中數據庫HBase的使用方法及和Hive之間的數據對接。
第7章,介紹如何使用數據展示利器R來展示HDFS中的數據。
第8章,介紹使用Spark計算模型來實時處理數據及SparkRHive組件的使用。
第9章,介紹如何搭建支撐大數據係統的雲平颱,以保證大數據係統的穩定性。
讀者範圍
? 對大數據感興趣的院校師生。
? 對大數據有一定的基礎,還想進一步熟悉整個生態係統的大數據愛好者。
勘誤與支持
盡管我們仔細對待本書的寫作,由於水平和能力有限,錯誤還是不可避免的。如果你在書中發現不妥或錯誤之處,請訪問http://www.feiguyun.com/support,留下寶貴意見,我們將非常感謝你的支持和幫助。
緻謝
首先要感謝大數據實戰團隊,參與飛榖雲大數據公益項目(www.feiguyun.com)的所有大數據愛好者,正是有瞭大傢的支持和積極參與,纔使得從飛榖一期的四個人,發展到目前飛榖七期的近四百人,短短一年多的時間,讓我們真正感受到瞭共同堅持、誠信進取、協同分享的飛榖價值觀所帶來的收獲和快樂,每期的項目綫下啓動會、交流會、項目結束總結會總能感受到大傢積極參與的熱情!同時也要感謝蘇州大學計算機科學與技術學院何書萍老師、上海理工大學管理學院張帆老師、上海交通大學大數據分析俱樂部蔣軍傑同學、中國社科院研究生院孫思棟同學、上海華師大數據分析俱樂部羅玉雪同學、上海大學黃文成同學等。
此外,要感謝飛榖管理團隊的各位老師:陳健、劉軍、吳嘉瑜、張勤池、王繼紅、張海峰、許小平、陶方震和劉李濤。諸君對飛榖大數據項目的熱心參與及全力配閤,是此公益項目得以持續推進的不懈動力。特彆感謝為飛榖雲提供實戰項目的企業數據負責人;飛榖七期電商比價項目提供者——張曉雷先生及飛榖八期汽車推薦模型需求提供者——章水鑫先生,正是有瞭你們提供的需求、數據和業務指導,纔使得飛榖大數據小夥伴們有瞭學習大數據的真實場景,在實踐中體會大數據分析價值和魅力。
飛榖雲在全國一些大學還建立瞭交流群,作為每個群的組織者:中國科技大學張海洋同學、河南工程學院孟祥傑同學、南京農業大學鄔傢棟同學、西安電子科技大學劉東航同學等,為飛榖公益項目在院校中的推廣,亦發揮瞭積極作用,在此一並錶示感謝。
自己動手做大數據係統 下載 mobi pdf epub txt 電子書 格式 2024
自己動手做大數據係統 下載 mobi epub pdf 電子書很實用的大數據實踐書
評分好書,大傢都喜歡,學習學習
評分小小小的看不明白,質量還過關
評分印刷質量不錯,內容還沒細看
評分很實用的大數據實踐書
評分自己動手做大數據係統的思路沒有問題,就像linu也有很多發行版,但也有人選擇自己從kernal和gnu代碼編譯或者自己從scratch開始組裝。但全書避而不談cloudera等發行版有些不妥,完全可以談談各自的優勢。
評分此用戶未填寫評價內容
評分還沒看(~_~;)
評分很不錯,繼續努力吧
自己動手做大數據係統 mobi epub pdf txt 電子書 格式下載 2024