注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信網(wǎng)絡(luò)服務(wù)Hive性能調(diào)優(yōu)實(shí)戰(zhàn)

Hive性能調(diào)優(yōu)實(shí)戰(zhàn)

Hive性能調(diào)優(yōu)實(shí)戰(zhàn)

定 價(jià):¥89.00

作 者: 林志煌
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書(shū)可以去


ISBN: 9787111644323 出版時(shí)間: 2019-12-01 包裝:
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 296 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《Hive性能調(diào)優(yōu)實(shí)戰(zhàn)》旨在介紹如何進(jìn)行Hive性能調(diào)優(yōu),以及調(diào)優(yōu)時(shí)所涉及的工具。書(shū)中重點(diǎn)介紹了Hive性能調(diào)優(yōu)所涉及的Hadoop組件和Hive工具。考慮到很多調(diào)優(yōu)方法的著眼點(diǎn)有一定的相似性,這些調(diào)優(yōu)方法可以適用于多個(gè)Hive版本,所以《Hive性能調(diào)優(yōu)實(shí)戰(zhàn)》在介紹Hive的相關(guān)內(nèi)容時(shí)會(huì)穿插Hive 1.x、Hive 2.x及Hive 3.x等多個(gè)版本的內(nèi)容。 《Hive性能調(diào)優(yōu)實(shí)戰(zhàn)》共11章,涵蓋的內(nèi)容如下: 舉例感受Hive性能調(diào)優(yōu)的多樣性 Hive問(wèn)題排查與調(diào)優(yōu)思路 環(huán)境搭建 Hive及其相關(guān)大數(shù)據(jù)組件 深入MapReduce計(jì)算引擎 Hive SQL執(zhí)行計(jì)劃 Hive數(shù)據(jù)處理模式 YARN日志 數(shù)據(jù)存儲(chǔ) 發(fā)現(xiàn)并優(yōu)化Hive中的性能問(wèn)題 Hive知識(shí)體系總結(jié) 《Hive性能調(diào)優(yōu)實(shí)戰(zhàn)》內(nèi)容實(shí)用,非常適合對(duì)大數(shù)據(jù)技術(shù)感興趣的讀者閱讀,尤其是Hive進(jìn)階讀者。另外,《Hive性能調(diào)優(yōu)實(shí)戰(zhàn)》還適合IT培訓(xùn)機(jī)構(gòu)的大數(shù)據(jù)培訓(xùn)學(xué)員和高校相關(guān)專業(yè)的學(xué)生閱讀。

作者簡(jiǎn)介

  林志煌曾在中國(guó)互聯(lián)網(wǎng)頭部公司長(zhǎng)期從事大數(shù)據(jù)相關(guān)項(xiàng)目的研發(fā)。擅長(zhǎng)并能夠熟練使用Hive、MapReduce和Spark等大數(shù)據(jù)相關(guān)技術(shù)。經(jīng)手過(guò)日數(shù)據(jù)流量TB級(jí)別和總量PB級(jí)別的Hadoop大數(shù)據(jù)平臺(tái)建設(shè)。從事過(guò)數(shù)據(jù)采集、數(shù)據(jù)清洗、數(shù)據(jù)倉(cāng)庫(kù)模型構(gòu)建及數(shù)據(jù)產(chǎn)品研發(fā)等工作,涵蓋了數(shù)據(jù)生命周期的主要階段。

圖書(shū)目錄

第1章  舉例感受Hive性能調(diào)優(yōu)的多樣性 1 1.1  感受改寫(xiě)SQL對(duì)性能的影響 1 1.1.1  數(shù)據(jù)準(zhǔn)備 1 1.1.2  union案例 4 1.1.3  改寫(xiě)SQL實(shí)現(xiàn)union的優(yōu)化 5 1.1.4  失敗的union調(diào)優(yōu) 8 1.2  感受調(diào)整數(shù)據(jù)塊大小對(duì)性能的影響 10 1.2.1  數(shù)據(jù)準(zhǔn)備 11 1.2.2  案例比較 11 1.3  感受不同數(shù)據(jù)格式對(duì)性能的提升 15 1.3.1  數(shù)據(jù)準(zhǔn)備 15 1.3.2  案例比較 16 1.4  感受不同的表設(shè)計(jì)對(duì)性能的影響 18 1.4.1  數(shù)據(jù)準(zhǔn)備 19 1.4.2  案例比較 21 1.5  調(diào)優(yōu)其實(shí)不難 24 第2章  Hive問(wèn)題排查與調(diào)優(yōu)思路 25 2.1  小白推演Hive的優(yōu)化方法 25 2.1.1  類比關(guān)系型數(shù)據(jù)庫(kù)的調(diào)優(yōu) 25 2.1.2  學(xué)習(xí)大數(shù)據(jù)分布式計(jì)算的基本原理 28 2.1.3  學(xué)習(xí)使用YARN提供的日志 31 2.1.4  干預(yù)SQL的運(yùn)行方式 33 2.2  老工對(duì)Hive的調(diào)優(yōu)理解 36 2.2.1  從一個(gè)過(guò)度優(yōu)化案例說(shuō)起 36 2.2.2  編碼和調(diào)優(yōu)的原則 43 2.2.3  Hive程序相關(guān)規(guī)范 49 2.3  總結(jié)調(diào)優(yōu)的一般性過(guò)程 51 第3章  環(huán)境搭建 53 3.1  Docker基礎(chǔ) 53 3.1.1  Docker介紹 54 3.1.2  安裝Docker 56 3.1.3  常見(jiàn)的Docker使用與管理命令 58 3.1.4  使用Dockerfile構(gòu)建服務(wù)鏡像 60 3.1.5  Dockerfile語(yǔ)法 63 3.2  Cloudera Docker搭建偽分布式環(huán)境 66 3.3  Docker搭建分布式集群 68 3.3.1  構(gòu)建JDK鏡像 69 3.3.2  構(gòu)建Hadoop鏡像 70 3.3.3  構(gòu)建Hive鏡像 72 3.3.4  啟動(dòng)集群 73 3.4  CDM搭建分布式集群 75 3.4.1  Cloudera Manager組件 75 3.4.2  Docker構(gòu)建軟件安裝內(nèi)部源 76 3.4.3  CDM安裝分布式集群 79 3.5  使用GitHub開(kāi)源項(xiàng)目構(gòu)建集群 87 第4章  Hive及其相關(guān)大數(shù)據(jù)組件 89 4.1  Hive架構(gòu) 89 4.1.1  Hive 1.x版本基本結(jié)構(gòu) 89 4.1.2  Hive元數(shù)據(jù) 91 4.2  YARN組件 97 4.2.1  YARN的優(yōu)點(diǎn) 97 4.2.2  YARN基本組成 97 4.2.3  YARN工作流程 99 4.2.4  YARN資源調(diào)度器 100 4.3  HDFS架構(gòu) 102 4.3.1  常見(jiàn)HDFS優(yōu)化 102 4.3.2  HDFS基本架構(gòu)和讀寫(xiě)流程 103 4.3.3  HDFS高可用架構(gòu) 105 4.3.4  NameNode聯(lián)盟 107 4.4  計(jì)算引擎 109 4.4.1  MapReduce計(jì)算引擎 109 4.4.2  Tez計(jì)算引擎 111 4.4.3  LLAP長(zhǎng)時(shí)在線與處理程序 113 4.4.4  Spark計(jì)算引擎 115 第5章  深入MapReduce計(jì)算引擎 117 5.1  MapReduce整體處理過(guò)程 117 5.2  MapReduce作業(yè)輸入 118 5.2.1  輸入格式類InputFormat 118 5.2.2  InputFormat在Hive中的使用 120 5.3  MapReduce的Mapper 121 5.3.1  Mapper類 121 5.3.2  Hive中與Mapper相關(guān)的配置 123 5.4  MapReduce的Reducer 125 5.4.1  Reducer類 126 5.4.2  Hive中與Reducer相關(guān)的配置 127 5.5  MapReduce的Shuffle 128 5.6  MapReduce的Map端聚合 129 5.6.1  Combiner類 129 5.6.2  Map端的聚合與Hive配置 130 5.7  MapReduce作業(yè)輸出 131 5.7.1  OutputFormat作業(yè)輸出 132 5.7.2  Hive配置與作業(yè)輸出 133 5.8  MapReduce作業(yè)與Hive配置 134 5.9  MapReduce與Tez對(duì)比 135 5.9.1  通過(guò)案例代碼對(duì)比MapReduce和Tez 135 5.9.2  Hive中Tez和LLAP相關(guān)的配置 141 第6章  HiveSQL執(zhí)行計(jì)劃 143 6.1  查看SQL的執(zhí)行計(jì)劃 143 6.1.1  查看執(zhí)行計(jì)劃的基本信息 144 6.1.2  查看執(zhí)行計(jì)劃的擴(kuò)展信息 148 6.1.3  查看SQL數(shù)據(jù)輸入依賴的信息 148 6.1.4  查看SQL操作涉及的相關(guān)權(quán)限信息 152 6.1.5  查看SQL的向量化描述信息 152 6.2  簡(jiǎn)單SQL的執(zhí)行計(jì)劃解讀 158 6.3  帶普通函數(shù)/操作符SQL的執(zhí)行計(jì)劃解讀 161 6.3.1  執(zhí)行計(jì)劃解讀 161 6.3.2  普通函數(shù)和操作符 162 6.4  帶聚合函數(shù)的SQL執(zhí)行計(jì)劃解讀 164 6.4.1  在Reduce階段聚合的SQL 164 6.4.2  在Map和Reduce階段聚合的SQL 167 6.4.3  高級(jí)分組聚合 169 6.5  帶窗口/分析函數(shù)的SQL執(zhí)行計(jì)劃解讀 172 6.6  表連接的SQL執(zhí)行計(jì)劃解讀 175 6.6.1  Hive表連接的類型 175 6.6.2  內(nèi)連接和外連接 176 6.6.3  左半連接 178 第7章  Hive數(shù)據(jù)處理模式 181 7.1  過(guò)濾模式 181 7.1.1  where子句過(guò)濾模式 182 7.1.2  having子句過(guò)濾 183 7.1.3  distinct子句過(guò)濾 184 7.1.4  表過(guò)濾 186 7.1.5  分區(qū)過(guò)濾 188 7.1.6  分桶過(guò)濾 189 7.1.7  索引過(guò)濾 191 7.1.8  列過(guò)濾 191 7.2  聚合模式 192 7.2.1  distinct模式 193 7.2.2  count(列)、count(*)、count(1)行計(jì)數(shù)聚合模式 194 7.2.3  可計(jì)算中間結(jié)果的聚合模式 197 7.2.4  不可計(jì)算中間結(jié)果的聚合模式 199 7.3  連接模式 200 7.3.1  普通Map連接 201 7.3.2  桶的Map連接和排序合并桶的Map連接 207 7.3.3  傾斜連接 209 7.3.4  表連接與基于成本的優(yōu)化器 210 第8章  YARN日志 212 8.1  查看YARN日志的方式 212 8.1.1  ResourceManager Web UI界面 212 8.1.2  JobHistory Web UI界面 215 8.2  快速查看集群概況 216 8.2.1  Cluster Metrics集群度量指標(biāo) 217 8.2.2  Cluster Node Metrics集群節(jié)點(diǎn)的度量信息 218 8.2.3  Cluster Overview集群概況 220 8.3  查看集群節(jié)點(diǎn)概況 221 8.3.1  節(jié)點(diǎn)列表概況 221 8.3.2  節(jié)點(diǎn)詳細(xì)信息 223 8.3.3  節(jié)點(diǎn)作業(yè)信息 224 8.4  查看集群的隊(duì)列調(diào)度情況 226 8.5  查看集群作業(yè)運(yùn)行信息 230 8.5.1  集群作業(yè)運(yùn)行狀態(tài) 230 8.5.2  查看作業(yè)運(yùn)行的基本信息 231 8.5.3  查看作業(yè)計(jì)數(shù)器 232 第9章  數(shù)據(jù)存儲(chǔ) 236 9.1  文件存儲(chǔ)格式之Apache ORC 236 9.1.1  ORC的結(jié)構(gòu) 237 9.1.2  ORC的數(shù)據(jù)類型 238 9.1.3  ACID事務(wù)的支持 240 9.2  與ORC相關(guān)的Hive配置 241 9.2.1  表配置屬性 241 9.2.2  Hive表的配置屬性 241 9.3  文件存儲(chǔ)格式之Apache Parquet 242 9.3.1  Parquet基本結(jié)構(gòu) 243 9.3.2  Parquet的相關(guān)配置 245 9.4  數(shù)據(jù)歸檔 245 第10章  發(fā)現(xiàn)并優(yōu)化Hive中的性能問(wèn)題 247 10.1  監(jiān)控Hive數(shù)據(jù)庫(kù)的狀態(tài) 247 10.2  監(jiān)控當(dāng)前集群狀態(tài) 253 10.3  定位性能瓶頸 258 10.3.1  使用HS2 WebUI排除非大數(shù)據(jù)組件的問(wèn)題 258 10.3.2  排查長(zhǎng)時(shí)等待調(diào)度 260 10.3.3  Map任務(wù)讀取小文件和大文件 261 10.3.4  Reduce的數(shù)據(jù)傾斜 262 10.3.5  緩慢的Shuffle 264 10.3.6  集群資源的限制 265 10.4  數(shù)據(jù)傾斜 266 10.4.1  不可拆分大文件引發(fā)的數(shù)據(jù)傾斜 266 10.4.2  業(yè)務(wù)無(wú)關(guān)的數(shù)據(jù)引發(fā)的數(shù)據(jù)傾斜 267 10.4.3  多維聚合計(jì)算數(shù)據(jù)膨脹引起的數(shù)據(jù)傾斜 268 10.4.4  無(wú)法削減中間結(jié)果的數(shù)據(jù)量引發(fā)的數(shù)據(jù)傾斜 268 10.4.5  兩個(gè)Hive數(shù)據(jù)表連接時(shí)引發(fā)的數(shù)據(jù)傾斜 269 第11章  Hive知識(shí)體系總結(jié) 270 11.1  Hive知識(shí)體系 270 11.2  數(shù)據(jù)粒度 271 11.3  SQL相關(guān) 275 11.3.1  select查詢語(yǔ)句 276 11.3.2  數(shù)據(jù)定義語(yǔ)言(DDL) 276 11.3.3  數(shù)據(jù)控制語(yǔ)言(DML) 279 11.3.4  用戶自定義函數(shù)(UDF) 280 11.4  文件操作 281

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)