出版時(shí)間:2013-9-1 出版社:人民郵電出版社 作者:Nick Dimiduk,Amandeep Khurana 譯者:謝磊
Tag標(biāo)簽:無
內(nèi)容概要
《HBase實(shí)戰(zhàn)》是一本基于經(jīng)驗(yàn)提煉而成的指南,它教給讀者如何運(yùn)用HBase設(shè)計(jì)、搭建及運(yùn)行大數(shù)據(jù)應(yīng)用系統(tǒng)。全書共分為4個(gè)部分。前兩個(gè)部分分別介紹了分布式系統(tǒng)和大規(guī)模數(shù)據(jù)處理的發(fā)展歷史,講解HBase的基本原理模式設(shè)計(jì)以及如何使用HBase的高級(jí)特性;第三部分通過真實(shí)的應(yīng)用和代碼示例以及支持這些實(shí)踐技巧的理論知識(shí),進(jìn)一步探索HBase的一些實(shí)用技術(shù);第四部分講解如何把原型開發(fā)系統(tǒng)升級(jí)為羽翼豐滿的生產(chǎn)系統(tǒng)。
《HBase實(shí)戰(zhàn)》適合所有對(duì)云計(jì)算、大數(shù)據(jù)處理技術(shù)和NoSQL數(shù)據(jù)庫感興趣的技術(shù)人員閱讀,尤其適合對(duì)Hadoop及HBase感興趣的技術(shù)人員參考。閱讀《HBase實(shí)戰(zhàn)》不要求之前具備HBase、Hadoop或者M(jìn)apReduce方面的知識(shí)。
作者簡(jiǎn)介
1. 本書兩位作者Nick Dimiduk和Amandeep Khurana都是長(zhǎng)期的HBase實(shí)踐者,非常有真材實(shí)料。
2. 本書譯者謝磊是ChinaHadoop技術(shù)社區(qū)發(fā)起人,資深I(lǐng)T人士,從事軟件行業(yè)十多年,現(xiàn)在從事企業(yè)級(jí)大數(shù)據(jù)解決方案的工作,致力于大數(shù)據(jù)技術(shù)的普及和推廣。
書籍目錄
第一部分 HBase基礎(chǔ)
第1章 HBase介紹
1.1 數(shù)據(jù)管理系統(tǒng):速成
1.1.1 你好,大數(shù)據(jù)
1.1.2 數(shù)據(jù)創(chuàng)新
1.1.3 HBase的崛起
1.2 HBase使用場(chǎng)景和成功案例
1.2.1 典型互聯(lián)網(wǎng)搜索問題:BigTable發(fā)明的原因
1.2.2 抓取增量數(shù)據(jù)
1.2.3 內(nèi)容服務(wù)
1.2.4 信息交換
1.3 你好HBase
1.3.1 快速安裝
1.3.2 HBase Shell命令行交互
1.3.3 存儲(chǔ)數(shù)據(jù)
1.4 小結(jié)
第2章 入門
2.1 從頭開始
2.1.1 創(chuàng)建表
2.1.2 檢查表模式
2.1.3 建立連接
2.1.4 連接管理
2.2 數(shù)據(jù)操作
2.2.1 存儲(chǔ)數(shù)據(jù)
2.2.2 修改數(shù)據(jù)
2.2.3 工作機(jī)制:HBase寫路徑
2.2.4 讀數(shù)據(jù)
2.2.5 工作機(jī)制:HBase讀路徑
2.2.6 刪除數(shù)據(jù)
2.2.7 合并:HBase的后臺(tái)工作
2.2.8 有時(shí)間版本的數(shù)據(jù)
2.2.9 數(shù)據(jù)模型概括
2.3 數(shù)據(jù)坐標(biāo)
2.4 小結(jié)
2.5 數(shù)據(jù)模型
2.5.1 邏輯模型:有序映射的映射集合
2.5.2 物理模型:面向列族
2.6 表掃描
2.6.1 設(shè)計(jì)用于掃描的表
2.6.2 執(zhí)行掃描
2.6.3 掃描器緩存
2.6.4 使用過濾器
2.7 原子操作
2.8 ACID語義
2.9 小結(jié)
第3章 分布式的HBase、HDFS和MapReduce
3.1 一個(gè)MapReduce的例子
3.1.1 延遲與吞吐量
3.1.2 串行計(jì)算吞吐量有限
3.1.3 并行計(jì)算提高吞吐量
3.1.4 MapReduce:用布式計(jì)算最大化吞吐量
3.2 Hadoop MapReduce概覽
3.2.1 MapReduce數(shù)據(jù)流介紹
3.2.2 MapReduce內(nèi)部機(jī)制
3.3 分布式模式的HBase
3.3.1 切分和分配大表
3.3.2 如何找到region
3.3.3 如何找到-ROOT-表
3.4 HBase和MapReduce
3.4.1 使用HBase作為數(shù)據(jù)源
3.4.2 使用HBase接收數(shù)據(jù)
3.4.3 使用HBase共享資源
3.5 信息匯總
3.5.1 編寫MapReduce應(yīng)用
3.5.2 運(yùn)行MapReduce應(yīng)用
3.6 大規(guī)模條件下的可用性和可靠性
3.6.1 HDFS作為底層存儲(chǔ)
3.7 小結(jié)
第二部分 高級(jí)概念
第4章 HBase表設(shè)計(jì)
4.1 如何開始模式設(shè)計(jì)
4.1.1 問題建模
4.1.2 需求定義:提前多做準(zhǔn)備工作總是有好處的
4.1.3 均衡分布數(shù)據(jù)和負(fù)載的建模方法
4.1.4 目標(biāo)數(shù)據(jù)訪問
4.2 反規(guī)范化是HBase世界里的詞語
4.3 相同表里的混雜數(shù)據(jù)
4.4 行鍵設(shè)計(jì)策略
4.5 IO考慮
4.5.1 為寫優(yōu)化
4.5.2 為讀優(yōu)化
4.5.3 基數(shù)和行鍵結(jié)構(gòu)
4.6 從關(guān)系型到非關(guān)系型
4.6.1 一些基本概念
4.6.2 嵌套實(shí)體
4.6.3 沒有映射到的一些東西
4.7 列族高級(jí)配置
4.7.1 可配置的數(shù)據(jù)塊大小
4.7.2 數(shù)據(jù)塊緩存
4.7.3 激進(jìn)緩存
4.7.4 布隆過濾器
4.7.5 生存時(shí)間(TTL)
4.7.6 壓縮
4.7.7 單元時(shí)間版本
4.8 過濾數(shù)據(jù)
4.8.1 實(shí)現(xiàn)一個(gè)過濾器
4.8.2 預(yù)裝過濾器
4.9 小結(jié)
第5章 使用協(xié)處理器擴(kuò)展HBase
5.1 兩種協(xié)處理器
5.1.1 Observer協(xié)處理器
5.1.2 endpoint協(xié)處理器
5.2 實(shí)現(xiàn)一個(gè)observer
5.2.1 修改模式
5.2.2 從HBase開始
5.2.3 安裝observer
5.2.4 其他安裝選項(xiàng)
5.3 實(shí)現(xiàn)一個(gè)endpoint
5.3.1 為endpoint定義接口
5.3.2 實(shí)現(xiàn)endpoint服務(wù)器
5.3.3 實(shí)現(xiàn)endpoint客戶端
5.3.4 部署endpoint服務(wù)器
5.3.5 試運(yùn)行
5.4 小結(jié)
第6章 其他的HBase客戶端選擇
6.1 在UNIX里使用HBase Shell腳本
6.1.1 準(zhǔn)備HBase Shell
6.1.2 使用UNIX Shell腳本創(chuàng)建表模式
6.2 使用JRuby進(jìn)行HBase Shell編程
6.2.1 準(zhǔn)備HBase Shell
6.2.2 訪問TwitBase的users表
6.3 通過REST訪問HBase
6.3.1 啟動(dòng)HBase REST服務(wù)
6.3.2 訪問TwitBase的users表
6.4 通過Python使用HBase Thrift網(wǎng)關(guān)
6.4.1 生成Python語言的HBase Thrift客戶端庫
6.4.2 啟動(dòng)HBase Thrift服務(wù)
6.4.3 掃描TwitBaseuser表
6.5 asynchbase:另外一種HBase Java客戶端
6.5.1 創(chuàng)建一個(gè)asynchbase項(xiàng)目
6.5.2 改變TwitBase的密碼策略
6.5.3 試運(yùn)行
6.6 小結(jié)
第三部分 應(yīng)用系統(tǒng)實(shí)例
第7章 通過實(shí)例學(xué)習(xí)HBase:OpenTSDB
7.1 OpenTSDB概述
7.1.1 挑戰(zhàn):基礎(chǔ)設(shè)施監(jiān)控
7.1.2 數(shù)據(jù):時(shí)間序列
7.1.3 存儲(chǔ):HBase
7.2 設(shè)計(jì)一個(gè)HBase應(yīng)用系統(tǒng)
7.2.1 模式設(shè)計(jì)
7.2.2 應(yīng)用架構(gòu)
7.3 實(shí)現(xiàn)一個(gè)HBase應(yīng)用系統(tǒng)
7.3.1 存儲(chǔ)數(shù)據(jù)
7.3.2 查詢數(shù)據(jù)
7.4 小結(jié)
第8章 在HBase上查詢地理信息系統(tǒng)
8.1 運(yùn)用地理數(shù)據(jù)
8.2 設(shè)計(jì)一個(gè)空間索引
8.2.1 從復(fù)合行鍵開始
8.2.2 介紹geohash
8.2.3 理解geohash
8.2.4 在有空間感知特性的行鍵里使用geohash
8.3 實(shí)現(xiàn)最近鄰居查詢
8.4 把計(jì)算工作推往服務(wù)器端
8.4.1 基于查詢多邊形創(chuàng)建一次geohash掃描
8.4.2 區(qū)域內(nèi)查詢第一幕:客戶端
8.4.3 區(qū)域內(nèi)查詢第二幕:WithinFilter
8.5 小結(jié)
第四部分 讓HBase運(yùn)轉(zhuǎn)起來
第9章 部署HBase
9.1 規(guī)劃集群
9.1.1 原型集群
9.1.2 小型生產(chǎn)集群(10~20臺(tái)服務(wù)器)
9.1.3 中型生產(chǎn)集群(50臺(tái)以下服務(wù)器)
9.1.4 大型生產(chǎn)集群(超過50臺(tái)服務(wù)器)
9.1.5 Hadoop Master節(jié)點(diǎn)
9.1.6 HBase Master
9.1.7 Hadoop DataNode和HBase RegionServer
9.1.8 ZooKeeper
9.1.9 采用云服務(wù)怎么樣?
9.2 部署軟件
9.2.1 Whirr:在云端部署
9.3 發(fā)行版本
9.3.1 使用原生Apache發(fā)行版本
9.3.2 使用Cloudera的CDH發(fā)行版本
9.4 配置
9.4.1 HBase配置
9.4.2 與HBase有關(guān)的Hadoop配置參數(shù)
9.4.3 操作系統(tǒng)配置
9.5 管理守護(hù)進(jìn)程
9.6 小結(jié)
第10章 運(yùn)維
10.1 監(jiān)控你的集群
10.1.1 HBase如何輸出監(jiān)控指標(biāo)
10.1.2 收集監(jiān)控指標(biāo)和圖形展示
10.1.3 HBase輸出的監(jiān)控指標(biāo)
10.1.4 應(yīng)用端監(jiān)控
10.2 HBase集群的性能
10.2.1 性能測(cè)試
10.2.2 什么影響了HBase的性能
10.2.3 優(yōu)化支撐系統(tǒng)
10.2.4 優(yōu)化HBase
10.3 集群管理
10.3.1 啟動(dòng)和停止HBase
10.3.2 優(yōu)雅停止和讓節(jié)點(diǎn)退役
10.3.3 增加節(jié)點(diǎn)
10.3.4 滾動(dòng)重啟和升級(jí)
10.3.5 bin/hbase和HbaseShell
10.3.6 維護(hù)一致性——hbck
10.3.7 查看HFile和HLog
10.3.8 預(yù)先拆分表
10.4 備份和復(fù)制
10.4.1 集群間復(fù)制
10.4.2 使用MapReduce作業(yè)進(jìn)行備份
10.4.3 備份根目錄
10.5 小結(jié)
附錄A 探索HBase系統(tǒng)
附錄B 更多關(guān)于HDFS的工作原理
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載