注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合HBase企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)

HBase企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)

HBase企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)

定 價(jià):¥89.00

作 者: 馬延輝,孟鑫,李立松 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 大數(shù)據(jù)技術(shù)叢書
標(biāo) 簽: 編程語言與程序設(shè)計(jì) 計(jì)算機(jī)與互聯(lián)網(wǎng)

ISBN: 9787111478324 出版時(shí)間: 2014-09-01 包裝: 平裝
開本: 16開 頁數(shù): 484 字?jǐn)?shù):  

內(nèi)容簡介

  《HBase企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)》強(qiáng)調(diào)HBase在企業(yè)的實(shí)際應(yīng)用,立足于企業(yè)的實(shí)際生產(chǎn)環(huán)境,旨在幫助企業(yè)切實(shí)解決大數(shù)據(jù)技術(shù)如何落地的問題。三位作者都是奮戰(zhàn)在中國大數(shù)據(jù)技術(shù)一線的實(shí)踐派專家,本書是他們實(shí)踐經(jīng)驗(yàn)的結(jié)晶。 《HBase企業(yè)應(yīng)用開發(fā)實(shí)戰(zhàn)》內(nèi)容在三個(gè)維度上具有重要特色:功能維度,從HBase的安裝配置、參數(shù)設(shè)置,到數(shù)據(jù)模型、表結(jié)構(gòu)設(shè)計(jì)、客戶端使用、高級特性,本書做了系統(tǒng)且詳盡的介紹;實(shí)戰(zhàn)維度,不僅通過3個(gè)典型的應(yīng)用案例詳細(xì)講解了如何使用HBase設(shè)計(jì)大型的數(shù)據(jù)應(yīng)用系統(tǒng),而且還結(jié)合實(shí)際生產(chǎn)系統(tǒng)講解了HBase的集群運(yùn)維、監(jiān)控和性能調(diào)優(yōu);理論維度,則深入分析了HBase、框架設(shè)計(jì)、模式設(shè)計(jì)和基本原理??芍^是理論與實(shí)踐完美結(jié)合,深度與廣度兼?zhèn)洌?/div>

作者簡介

  馬延輝,資深Hadoop技術(shù)專家,對Hadoop生態(tài)系統(tǒng)相關(guān)技術(shù)有深刻的理解。曾就職于淘寶、Answers.com、暴風(fēng)影音等知名互聯(lián)網(wǎng)公司,從事Hadoop相關(guān)的技術(shù)工作,在企業(yè)級的大數(shù)據(jù)系統(tǒng)的研發(fā)、運(yùn)維和管理方面積累了豐富的實(shí)戰(zhàn)經(jīng)驗(yàn)。開源HBase監(jiān)控工具Ella作者。在國內(nèi)Hadoop社區(qū)內(nèi)非?;钴S,經(jīng)常在各種會(huì)議和沙龍上做技術(shù)分享,深受歡迎?,F(xiàn)在專注于大數(shù)據(jù)技術(shù)在傳統(tǒng)行業(yè)的落地,致力于大數(shù)據(jù)技術(shù)的普及和推廣。 孟鑫,資深Hadoop技術(shù)專家,在軟件行業(yè)從業(yè)近10年,對海量數(shù)據(jù)處理技術(shù)有著深刻的認(rèn)識,曾負(fù)責(zé)Hadoop平臺(tái)建設(shè)工作,在Hadoop開發(fā)和運(yùn)維方面積累了大量的實(shí)戰(zhàn)經(jīng)驗(yàn)。于2013年獲取了Cloudera的Hadoop Developer認(rèn)證,多次到企業(yè)和社區(qū)去分享Hadoop、HBase等方面的技術(shù)知識和經(jīng)驗(yàn)。對技術(shù)擁有極大的興趣,熱衷于研究各種新技術(shù),總結(jié)和分享經(jīng)驗(yàn)及教訓(xùn),目前從事管理工作,但依然熱衷于產(chǎn)品設(shè)計(jì)和實(shí)現(xiàn)。 李立松,資深Hadoop技術(shù)專家,Easyhadoop技術(shù)社區(qū)創(chuàng)始人之一,對HDFS、MapReduce、HBase、Hive等Hadoop生態(tài)系統(tǒng)中的技術(shù)有比較深入的研究,在Hadoop開發(fā)方面積累了豐富的經(jīng)驗(yàn)。曾就職于暴風(fēng),負(fù)責(zé)暴風(fēng)大數(shù)據(jù)平臺(tái)開發(fā)與應(yīng)用,暴風(fēng)大數(shù)據(jù)項(xiàng)目負(fù)責(zé)人?,F(xiàn)在就職于締元信,擔(dān)任Hadoop高級工程師,負(fù)責(zé)締元信DMP平臺(tái)的研發(fā)工作。

圖書目錄

前 言 第一部分 基礎(chǔ)篇 第1章 認(rèn)識HBase 2 1.1 理解大數(shù)據(jù)背景 2 1.1.1 什么是大數(shù)據(jù) 3 1.1.2 為何大數(shù)據(jù)至關(guān)重要 4 1.1.3 NoSQL在大數(shù)據(jù)中扮演的角色 4 1.2 HBase是什么 6 1.2.1 HBase的發(fā)展歷史 6 1.2.2 HBase的發(fā)行版本 7 1.2.3 HBase的特性 9 1.3 HBase與Hadoop的關(guān)系 10 1.4 HBase的核心功能模塊 12 1.4.1 客戶端Client 12 1.4.2 協(xié)調(diào)服務(wù)組件ZooKeeper 13 1.4.3 主節(jié)點(diǎn)HMaster 13 1.4.4 Region節(jié)點(diǎn)HRegionServer 13 1.5 HBase的使用場景和經(jīng)典案例 14 1.5.1 搜索引擎應(yīng)用 15 1.5.2 增量數(shù)據(jù)存儲(chǔ) 15 1.5.3 用戶內(nèi)容服務(wù) 17 1.5.4 實(shí)時(shí)消息系統(tǒng)構(gòu)建 18 1.6 本章小結(jié) 18 第2章 HBase安裝與配置 19 2.1 先決條件 19 2.2 HBase運(yùn)行模式 23 2.2.1 單機(jī)模式 23 2.2.2 分布式模式 24 2.3 HBase的Web UI 31 2.4 HBase Shell工具使用 31 2.5 停止HBase集群 33 2.6 本章小結(jié) 33 第3章 數(shù)據(jù)模型 34 3.1 兩類數(shù)據(jù)模型 34 3.1.1 邏輯模型 35 3.1.2 物理模型 35 3.2 數(shù)據(jù)模型的重要概念 36 3.2.1 表 36 3.2.2 行鍵 37 3.2.3 列族 38 3.2.4 單元格 38 3.3 數(shù)據(jù)模型的操作 38 3.3.1 讀Get 39 3.3.2 寫Put 39 3.3.3 掃描Scan 39 3.3.4 刪除Delete 40 3.4 數(shù)據(jù)模型的特殊屬性 40 3.4.1 版本 40 3.4.2 排序 42 3.4.3 列的元數(shù)據(jù) 42 3.4.4 連接查詢 43 3.4.5 計(jì)數(shù)器 43 3.4.6 原子操作 43 3.4.7 事務(wù)特性ACID 43 3.4.8 行鎖 45 3.4.9 自動(dòng)分區(qū) 45 3.5 CAP原理與最終一致性 46 3.6 本章小結(jié) 47 第4章 HBase表結(jié)構(gòu)設(shè)計(jì) 48 4.1 模式創(chuàng)建 48 4.2 Rowkey設(shè)計(jì) 49 4.3 列族定義 51 4.3.1 可配置的數(shù)據(jù)塊大小 51 4.3.2 數(shù)據(jù)塊緩存 52 4.3.3 布隆過濾器 52 4.3.4 數(shù)據(jù)壓縮 53 4.3.5 單元時(shí)間版本 53 4.3.6 生存時(shí)間 54 4.4 模式設(shè)計(jì)實(shí)例 54 4.4.1 實(shí)例1:動(dòng)物分類 54 4.4.2 實(shí)例2:店鋪與商品 56 4.4.3 實(shí)例3:網(wǎng)上商城用戶消費(fèi)記錄 57 4.4.4 實(shí)例4:微博用戶與粉絲 58 4.5 本章小結(jié) 60 第5章 HBase客戶端 61 5.1 精通原生Java客戶端 61 5.1.1 客戶端配置 62 5.1.2 創(chuàng)建表 69 5.1.3 刪除表 70 5.1.4 插入數(shù)據(jù) 70 5.1.5 查詢數(shù)據(jù) 72 5.1.6 刪除數(shù)據(jù) 76 5.1.7 過濾查詢 77 5.2 使用HBase Shell工具操作HBase 79 5.2.1 命令分類 79 5.2.2 常規(guī)命令 80 5.2.3 DDL命令 81 5.2.4 DML命令 82 5.2.5 工具命令Tools 86 5.2.6 復(fù)制命令 87 5.2.7 安全命令 87 5.3 使用Thrift客戶端訪問HBase 88 5.3.1 Thrift與Thrift2區(qū)別 88 5.3.2 安裝與部署Thrift2 89 5.3.3 Python使用案例 93 5.4 通過REST客戶端訪問HBase 95 5.4.1 啟動(dòng)服務(wù) 95 5.4.2 使用REST訪問example表 96 5.5 使用MapReduce批量操作HBase 97 5.5.1 三種訪問模式 98 5.5.2 實(shí)現(xiàn)MapReduce API 98 5.5.3 HBase作為輸入源示例 99 5.5.4 HBase作為輸出源示例 101 5.5.5 HBase作為共享源示例 103 5.6 通過Web UI工具查看HBase狀態(tài) 106 5.6.1 Master狀態(tài)界面 106 5.6.2 RegionServer狀態(tài)界面 107 5.6.3 ZooKeeper統(tǒng)計(jì)信息頁面 109 5.7 其他客戶端 110 5.8 本章小結(jié) 110 第二部分 實(shí)戰(zhàn)篇 第6章 整合SQL引擎層 114 6.1 NoSQL背景知識 114 6.1.1 什么是NoSQL 114 6.1.2 將SQL整合到HBase的原因 115 6.1.3 基于HBase的SQL引擎實(shí)現(xiàn) 116 6.2 Hive整合HBase的實(shí)現(xiàn) 119 6.2.1 認(rèn)識Hive 119 6.2.2 Hive整合HBase的環(huán)境準(zhǔn)備 122 6.2.3 Linux環(huán)境下重新編譯Hive 123 6.2.4 Hive參數(shù)配置 125 6.2.5 啟動(dòng)Hive 127 6.2.6 Hive與HBase整合后的框架如何使用 127 6.2.7 HBase到Hive的字段映射 133 6.2.8 多列與Hive Map類型 134 6.3 查詢引擎Phoenix 137 6.3.1 認(rèn)識Phoenix 138 6.3.2 Phoenix安裝環(huán)境準(zhǔn)備 141 6.3.3 Phoenix安裝部署 142 6.3.4 Phoenix源碼編譯 143 6.3.5 Phoenix中SQLLine的快速使用 149 6.3.6 使用JDBC訪問Phoenix 153 6.4 對象映射框架Kundera 155 6.4.1 認(rèn)識Kundera 155 6.4.2 Kundera的客戶端API快速使用 158 6.4.3 Kundera模塊介紹 161 6.4.4 Kundera的REST訪問方式 162 6.5 分布式SQL引擎Lealone 165 6.5.1 認(rèn)識Lealone 165 6.5.2 Lealone的安裝部署 166 6.5.3 通過JDBC訪問Lealone 168 6.5.4 通過Python訪問Lealone 169 6.5.5 Lealone特有的建表語法 170 6.6 本章小結(jié) 171 第7章 構(gòu)建音樂站用戶屬性庫 173 7.1 案例背景 173 7.1.1 音樂站 173 7.1.2 需求概述 175 7.1.3 需求范圍和系統(tǒng)邊界 175 7.1.4 需求詳述 176 7.1.5 名詞解釋 180 7.2 概要設(shè)計(jì) 181 7.2.1 設(shè)計(jì)目標(biāo) 181 7.2.2 數(shù)據(jù)規(guī)模假設(shè) 181 7.2.3 功能指標(biāo) 182 7.2.4 系統(tǒng)流程 182 7.3 表結(jié)構(gòu)設(shè)計(jì) 183 7.3.1 功能抽象 183 7.3.2 邏輯結(jié)構(gòu) 184 7.3.3 Rowkey設(shè)計(jì) 188 7.3.4 列族設(shè)計(jì) 188 7.3.5 版本定義 188 7.3.6 優(yōu)化屬性定義 188 7.4 數(shù)據(jù)加載 189 7.4.1 加載流程 189 7.4.2 Mapper類 190 7.4.3 Main類 192 7.4.4 運(yùn)行 193 7.5 數(shù)據(jù)檢索 193 7.5.1 HBaseTable 193 7.5.2 HBaseAdmin 193 7.5.3 幾種檢索類型 195 7.6 后臺(tái)查詢 198 7.6.1 二級索引實(shí)現(xiàn) 198 7.6.2 后臺(tái)查詢系統(tǒng) 205 7.7 本章小結(jié) 206 第8章 構(gòu)建廣告實(shí)時(shí)計(jì)算系統(tǒng) 208 8.1 理解廣告數(shù)據(jù)和流處理框架 208 8.1.1 網(wǎng)絡(luò)廣告的幾大特性 209 8.1.2 網(wǎng)絡(luò)廣告的數(shù)據(jù)類型 210 8.1.3 流處理框架 211 8.1.4 背景與需求描述 217 8.2 概要設(shè)計(jì) 218 8.2.1 設(shè)計(jì)目標(biāo) 219 8.2.2 主要功能 219 8.2.3 系統(tǒng)架構(gòu) 219 8.3 詳細(xì)設(shè)計(jì) 221 8.3.1 表結(jié)構(gòu)設(shè)計(jì) 221 8.3.2 功能模塊設(shè)計(jì) 222 8.4 核心功能實(shí)現(xiàn) 223 8.4.1 規(guī)劃集群環(huán)境部署 223 8.4.2 安裝ZooKeeper集群 225 8.4.3 安裝Kafka分布式集群 228 8.4.4 實(shí)現(xiàn)Kafka生產(chǎn)者 231 8.4.5 安裝Storm分布式集群 233 8.4.6 查看集群節(jié)點(diǎn)部署情況 240 8.4.7 基于Storm-kafka中間件實(shí)現(xiàn)計(jì)算邏輯 240 8.4.8 如何使用HBase中統(tǒng)計(jì)數(shù)據(jù) 251 8.5 本章小結(jié) 252 第三部分 高級篇 第9章 核心概念 254 9.1 核心結(jié)構(gòu) 254 9.1.1 B+樹 255 9.1.2 LSM樹 255 9.1.3 兩種結(jié)構(gòu)本質(zhì)區(qū)別 257 9.2 底層持久化 258 9.2.1 存儲(chǔ)基本架構(gòu) 258 9.2.2 HDFS文件 259 9.2.3 Region切分 264 9.2.4 合并 265 9.2.5 HFile格式 266 9.2.6 KeyValue格式 269 9.3 預(yù)寫日志 270 9.3.1 概要流程 270 9.3.2 相關(guān)Java類 271 9.3.3 日志回放 274 9.3.4 日志一致性 275 9.4 寫入流程 276 9.4.1 客戶端 276 9.4.2 服務(wù)器端 281 9.5 查詢流程 286 9.5.1 兩種查詢操作 286 9.5.2 客戶端 286 9.5.3 服務(wù)器端 287 9.6 數(shù)據(jù)備份 291 9.6.1 備份機(jī)制架構(gòu) 292 9.6.2 故障恢復(fù) 292 9.7 數(shù)據(jù)壓縮 294 9.7.1 支持的壓縮算法 295 9.7.2 使用配置 295 9.8 本章小結(jié) 296 第10章 HBase高級特性 297 10.1 過濾器 297 10.1.1 過濾器的兩類參數(shù) 297 10.1.2 比較器 298 10.1.3 列值過濾器 300 10.1.4 鍵值元數(shù)據(jù)過濾器 300 10.1.5 行鍵過濾器 303 10.1.6 功能過濾器 303 10.1.7 Thrift使用過濾器 304 10.1.8 過濾器總結(jié) 309 10.2 計(jì)數(shù)器 310 10.2.1 使用Shell操作計(jì)數(shù)器 310 10.2.2 基于單列的計(jì)數(shù)器 312 10.2.3 多列計(jì)數(shù)器 313 10.3 協(xié)處理器 314 10.3.1 認(rèn)識協(xié)處理器 315 10.3.2 觀察者Observer 316 10.3.3 終端EndPoint 318 10.3.4 協(xié)處理器部署 320 10.4 Schema設(shè)計(jì)要點(diǎn) 323 10.4.1 行鍵設(shè)計(jì) 323 10.4.2 列族設(shè)計(jì) 325 10.5 二級索引 325 10.5.1 Client-managed方式 326 10.5.2 ITHBase實(shí)現(xiàn) 326 10.5.3 IHBase實(shí)現(xiàn) 329 10.5.4 Coprocessor方式 329 10.5.5 MapReduce兩種方式 330 10.6 布隆過濾器 330 10.6.1 基本概念 331 10.6.2 配置布隆過濾器 332 10.6.3 使用布隆過濾器 333 10.7 負(fù)載均衡 333 10.7.1 全局計(jì)劃 334 10.7.2 隨機(jī)分配計(jì)劃 337 10.7.3 批量啟動(dòng)分配計(jì)劃 337 10.7.4 通過Shell控制負(fù)載均衡 338 10.8 批量加載 338 10.8.1 準(zhǔn)備數(shù)據(jù):importtsv 338 10.8.2 加載數(shù)據(jù):completebulkload 340 10.9 本章小結(jié) 340 第11章 集群運(yùn)維管理 341 11.1 HBase常用工具 341 11.1.1 文件檢測修復(fù)工具h(yuǎn)bck 342 11.1.2 文件查看工具h(yuǎn)file 346 11.1.3 WAL日志查看工具h(yuǎn)log 348 11.1.4 壓縮測試工具CompressionTest 349 11.1.5 數(shù)據(jù)遷移工具CopyTable 350 11.1.6 導(dǎo)出工具export 351 11.1.7 導(dǎo)入工具Import 351 11.1.8 日志回放工具WALPlayer 351 11.1.9 行數(shù)統(tǒng)計(jì)工具RowCounter 352 11.2 Region和RegionServer管理 353 11.2.1 大合并工具major_compact 353 11.2.2 Region合并工具M(jìn)erge 354 11.2.3 下線節(jié)點(diǎn) 354 11.2.4 滾動(dòng)重啟 355 11.3 性能指標(biāo)Metrics 356 11.3.1 Master Metrics 357 11.3.2 RegionServer Metrics 357 11.3.3 RPC Metrics 358 11.3.4 JVM Metrics 359 11.3.5 集群屬性Metrics 360 11.4 監(jiān)控系統(tǒng)Ganglia 360 11.4.1 HBase監(jiān)控指標(biāo) 360 11.4.2 安裝、部署和使用Ganglia 361 11.5 HBase管理擴(kuò)展JMX 366 11.5.1 如何使用JMX 366 11.5.2 基于JMX的監(jiān)控工具Ella 368 11.6 報(bào)警工具Nagios 371 11.7 故障處理 376 11.7.1 問題咨詢渠道 377 11.7.2 常用日志信息 377 11.7.3 常用故障調(diào)試工具 379 11.7.4 客戶端故障排查 384 11.7.5 MapReduce故障排查 386 11.7.6 網(wǎng)絡(luò)故障排查 387 11.7.7 RegionServer相關(guān)問題解決 387 11.7.8 Master相關(guān)問題解決 391 11.7.9 ZooKeeper相關(guān)問題解決 392 11.8 集群備份 392 11.8.1 冷備份 393 11.8.2 熱備份之Replication 393 11.8.3 熱備份之CopyTable 393 11.8.4 熱備份之Export 393 11.9 本章小結(jié) 393

Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號