预购商品
书目分类
特别推荐
第1章 VMware中安裝CentOS 1 1.1 下載CentOS 7鏡像文件 1 1.2 新建虛擬機器 4 1.3 安裝作業系統 6 1.4 動手練習 11 第2章 CentOS 7集群環境配置 12 2.1 系統環境配置 12 2.1.1 新建用戶 12 2.1.2 修改用戶許可權 13 2.1.3 關閉防火牆 13 2.1.4 設置固定IP 13 2.1.5 修改主機名稱 16 2.1.6 新建資原始目錄 17 2.2 安裝JDK 17 2.3 克隆虛擬機器 18 2.4 配置主機IP映射 20 2.5 動手練習 21 第3章 Hadoop 22 3.1 Hadoop簡介 22 3.1.1 Hadoop生態系統架構 22 3.1.2 Hadoop不同版本架構對比 24 3.2 YARN基本架構及組件 25 3.3 YARN工作流程 27 3.4 配置集群各節點SSH無金鑰登錄 28 3.4.1 無金鑰登錄原理 28 3.4.2 無金鑰登錄操作步驟 29 3.5 搭建Hadoop 3.x分散式集群 31 3.6 動手練習 37 第4章 HDFS 38 4.1 HDFS簡介 38 4.1.1 設計目標 38 4.1.2 總體架構 39 4.1.3 主要組件 40 4.1.4 文件讀寫 42 4.2 HDFS命令列操作 43 4.3 HDFS Web介面操作 46 4.4 HDFS Java API操作 48 4.4.1 讀取數據 48 4.4.2 創建目錄 50 4.4.3 創建文件 50 4.4.4 刪除檔 52 4.4.5 遍歷檔和目錄 52 4.4.6 獲取檔或目錄的中繼資料 53 4.4.7 上傳本地檔 54 4.4.8 下載檔案到本地 55 4.5 動手練習 55 第5章 MapReduce 56 5.1 MapReduce簡介 56 5.1.1 設計思想 56 5.1.2 任務流程 58 5.1.3 工作原理 59 5.2 MapReduce程式編寫步驟 61 5.3 案例分析:單詞計數 63 5.4 案例分析:數據去重 69 5.5 案例分析:求平均分 72 5.6 案例分析:二次排序 75 5.7 使用MRUnit測試MapReduce程式 82 5.8 動手練習 84 第6章 ZooKeeper 85 6.1 ZooKeeper簡介 85 6.1.1 應用場景 85 6.1.2 架構原理 86 6.1.3 資料模型 86 6.1.4 節點類型 87 6.1.5 Watcher機制 88 6.1.6 分散式鎖 89 6.2 ZooKeeper安裝配置 90 6.2.1 單機模式 90 6.2.2 偽分佈模式 91 6.2.3 集群模式 92 6.3 ZooKeeper命令列操作 95 6.4 ZooKeeper Java API操作 97 6.4.1 創建Java工程 98 6.4.2 創建節點 98 6.4.3 修改資料 100 6.4.4 獲取資料 101 6.4.5 刪除節點 105 6.5 案例分析:監聽伺服器動態上下線 106 6.6 動手練習 110 第7章 HDFS與YARN HA 111 7.1 HDFS HA搭建 111 7.1.1 架構原理 111 7.1.2 搭建步驟 112 7.1.3 結合ZooKeeper進行HDFS自動容錯移轉 118 7.2 YARN HA搭建 121 7.2.1 架構原理 122 7.2.2 搭建步驟 122 7.3 動手練習 126 第8章 HBase 127 8.1 什麼是HBase 127 8.2 HBase基本結構 128 8.3 HBase資料模型 129 8.4 HBase集群架構 130 8.5 HBase安裝配置 132 8.5.1 單機模式 132 8.5.2 偽分佈模式 134 8.5.3 集群模式 135 8.6 HBase Shell命令操作 139 8.7 HBase Java API操作 142 8.7.1 創建Java工程 142 8.7.2 創建表 143 8.7.3 添加數據 145 8.7.4 查詢資料 147 8.7.5 刪除資料 148 8.8 HBase篩檢程式 149 8.9 案例分析:HBase MapReduce數據轉移 153 8.9.1 HBase不同表間資料轉移 153 8.9.2 HDFS資料轉移至HBase 158 8.10 案例分析:HBase資料備份與恢復 161 8.11 動手練習 162 第9章 Hive 164 9.1 什麼是Hive 164 9.1.1 資料單元 164 9.1.2 資料類型 165 9.2 Hive架構體系 167 9.3 Hive三種運行模式 168 9.4 Hive安裝配置 169 9.4.1 內嵌模式 170 9.4.2 本地模式 172 9.4.3 遠端模式 175 9.5 Hive常見屬性配置 176 9.6 Beeline CLI的使用 177 9.7 Hive資料庫操作 181 9.8 Hive表操作 184 9.8.1 內部表 185 9.8.2 外部表 188 9.8.3 分區表 191 9.8.4 分桶表 194 9.9 Hive查詢 198 9.9.1 SELECT子句查詢 198 9.9.2 JOIN連接查詢 204 9.10 其他Hive命令 206 9.11 Hive中繼資料表結構分析 208 9.12 Hive自訂函數 210 9.13 Hive JDBC操作 212 9.14 案例分析:Hive與HBase整合 214 9.15 案例分析:Hive分析搜狗用戶搜索日誌 218 9.16 動手練習 222 第10章 Sqoop 224 10.1 什麼是Sqoop 224 10.1.1 Sqoop基本架構 224 10.1.2 Sqoop開發流程 225 10.2 使用Sqoop 225 10.3 資料導入工具 226 10.4 資料匯出工具 231 10.5 Sqoop安裝與配置 233 10.6 案例分析:將MySQL表數據導入到HDFS中 234 10.7 案例分析:將HDFS中的資料匯出到MySQL中 236 10.8 案例分析:將MySQL表數據導入到HBase中 237 10.9 動手練習 238 第11章 Kafka 239 11.1 什麼是Kafka 239 11.2 Kafka架構 240 11.3 主題與分區 241 11.4 分區副本 242 11.5 消費者組 244 11.6 資料存儲機制 245 11.7 Kafka集群環境搭建 247 11.8 命令列操作 249 11.8.1 創建主題 249 11.8.2 查詢主題 250 11.8.3 創建生產者 250 11.8.4 創建消費者 251 11.9 Java API操作 251 11.9.1 創建Java工程 252 11.9.2 創建生產者 252 11.9.3 創建消費者 254 11.9.4 運行程式 255 11.10 案例分析:Kafka生產者攔截器 257 11.11 動手練習 262 第12章 Flume 263 12.1 什麼是Flume 263 12.2 Flume的架構原理 263 12.2.1 單節點架構 263 12.2.2 組件介紹 264 12.2.3 多節點架構 265 12.3 安裝與簡單使用 267 12.4 案例分析:日誌監控(一) 269 12.5 案例分析:日誌監控(二) 272 12.6 攔截器 273 12.6.1 內置攔截器 274 12.6.2 自訂攔截器 277 12.7 選擇器 280 12.8 案例分析:攔截器和選擇器的應用 281 12.9 案例分析:Flume與Kafka整合 285 12.10 動手練習 287 第13章 Storm 288 13.1 什麼是Storm 288 13.2 Storm Topology 288 13.3 Storm集群架構 289 13.4 Storm流分組 291 13.5 Storm集群環境搭建 292 13.6 案例分析:單詞計數 296 13.6.1 設計思路 296 13.6.2 代碼編寫 297 13.6.3 程式運行 302 13.7 案例分析:Storm與Kafka整合 305 13.7.1 設計思路 305 13.7.2 代碼編寫 306 13.7.3 程式運行 309 13.8 動手練習 310 第14章 Elasticsearch 311 14.1 什麼是Elasticsearch 311 14.2 基本概念 311 14.2.1 索引、類型和文檔 311 14.2.2 分片和副本 312 14.2.3 路由 313 14.3 集群架構 313 14.4 集群環境搭建 315 14.5 安裝Kibana 321 14.6 REST API 324 14.6.1 集群狀態API 325 14.6.2 索引API 325 14.6.3 文檔API 327 14.6.4 搜索API 330 14.6.5 Query DSL 332 14.7 Head外掛程式安裝 336 14.8 Java API操作:員工資訊 340 14.9 動手練習 344 第15章 Scala 345 15.1 什麼是Scala 345 15.2 安裝Scala 345 15.2.1 Windows中安裝Scala 346 15.2.2 CentOS 7中安裝Scala 347 15.3 Scala基礎 347 15.3.1 變數聲明 348 15.3.2 資料類型 349 15.3.3 運算式 350 15.3.4 迴圈 351 15.3.5 方法與函數 353 15.4 集合 356 15.4.1 陣列 356 15.4.2 List 358 15.4.3 Map映射 359 15.4.4 元組 360 15.4.5 Set 361 15.5 類和對象 362 15.5.1 類的定義 362 15.5.2 單例對象 363 15.5.3 伴生對象 363 15.5.4 get和set方法 364 15.5.5 構造器 366 15.6 抽象類別和特質 368 15.6.1 抽象類別 368 15.6.2 特質 369 15.7 使用Eclipse創建Scala專案 371 15.7.1 安裝Scala for Eclipse IDE 371 15.7.2 創建Scala項目 372 15.8 使用IntelliJ IDEA創建Scala專案 372 15.8.1 IDEA中安裝Scala外掛程式 372 15.8.2 創建Scala項目 374 15.9 動手練習 375 第16章 Spark 376 16.1 Spark概述 376 16.2 Spark主要組件 377 16.3 Spark運行時架構 378 16.3.1 Spark Standalone模式 379 16.3.2 Spark On YARN模式 380 16.4 Spark集群環境搭建 382 16.4.1 Spark Standalone模式 382 16.4.2 Spark On YARN模式 384 16.5 Spark HA搭建 385 16.6 Spark應用程式的提交 389 16.7 Spark Shell的使用 391 16.8 Spark RDD 393 16.8.1 創建RDD 393 16.8.2 RDD運算元 394 16.9 案例分析:使用Spark RDD實現單詞計數 398 16.10 Spark SQL 403 16.10.1 DataFrame和Dataset 404 16.10.2 Spark SQL基本使用 404 16.11 案例分析:使用Spark SQL實現單詞計數 406 16.12 案例分析:Spark SQL與Hive整合 408 16.13 案例分析:Spark SQL讀寫MySQL 410 16.14 動手練習 414
張偉洋,大資料領域資深專家,擁有多年互聯網公司軟體研發經驗,曾在互聯網旅遊公司任軟體研發事業部經理。先後多次為中國海洋大學、曲阜師範大學、青島理工大學等高校舉行大資料專題講座,對Hadoop及周邊大資料框架ZooKeeper、Hive、HBase、Storm、Spark、Flink等有深入的研究。已出版《Flink大資料分析實戰》《Spark大資料分析實戰》等圖書,公眾號 “奮鬥在IT” 的創辦人。
客服公告
热门活动
订阅电子报