注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫(kù)Presto技術(shù)內(nèi)幕

Presto技術(shù)內(nèi)幕

Presto技術(shù)內(nèi)幕

定 價(jià):¥69.00

作 者: JD-Presto 研發(fā)團(tuán)隊(duì)
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

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


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

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

  Presto是專(zhuān)門(mén)為大數(shù)據(jù)實(shí)時(shí)查詢(xún)計(jì)算而設(shè)計(jì)和開(kāi)發(fā)的產(chǎn)品。由于Presto是基于Java語(yǔ)言開(kāi)發(fā)的,因此,對(duì)使用者和開(kāi)發(fā)者而言,Presto極易學(xué)習(xí)、使用并針對(duì)特定的業(yè)務(wù)場(chǎng)景進(jìn)行改造開(kāi)發(fā)和性能優(yōu)化。無(wú)論是對(duì)多數(shù)據(jù)源支持,還是高性能、易用性、可擴(kuò)展性等方面, Presto都是大數(shù)據(jù)實(shí)時(shí)查詢(xún)計(jì)算產(chǎn)品中的佼佼者?!禤resto技術(shù)內(nèi)幕》按照由淺入深的順序?qū)resto進(jìn)行了全方位的細(xì)致講解,具體內(nèi)容包括Presto概述、 Presto安裝與部署、 Presto RESTful框架解析、提交查詢(xún)、生成查詢(xún)執(zhí)行計(jì)劃、查詢(xún)調(diào)度、查詢(xún)執(zhí)行、隊(duì)列、System Connector、 Hive Connector、 Kafka Connector、 Connector開(kāi)發(fā)、 Functions開(kāi)發(fā)、 JD-Presto功能改造、 Presto性能調(diào)優(yōu)、 Presto應(yīng)用場(chǎng)景。

作者簡(jiǎn)介

  翁志:現(xiàn)任京東首席技術(shù)顧問(wèn),信息安全部負(fù)責(zé)人,硅谷研發(fā)中心負(fù)責(zé)人,主要負(fù)責(zé)京東的技術(shù)創(chuàng)新,信息安全以及對(duì)外技術(shù)交流合作等,兼任全國(guó)信息安全標(biāo)準(zhǔn)化技術(shù)委員會(huì)委員。擁有近20年IT技術(shù)開(kāi)發(fā)經(jīng)驗(yàn),擁有十余項(xiàng)國(guó)內(nèi)外專(zhuān)利。2013年加入京東,領(lǐng)導(dǎo)京東大數(shù)據(jù)開(kāi)源計(jì)算框架Presto榮獲“2015COPU開(kāi)源優(yōu)秀項(xiàng)目獎(jiǎng)”,本人獲“中國(guó)開(kāi)源杰出人物”稱(chēng)號(hào)。機(jī)構(gòu)負(fù)責(zé)人-戴東東:時(shí)任京東數(shù)據(jù)庫(kù)管理部負(fù)責(zé)人,負(fù)責(zé)數(shù)據(jù)庫(kù)、大數(shù)據(jù)等新技術(shù)研究工作,擁有近15年IT技術(shù)研發(fā)及團(tuán)隊(duì)管理經(jīng)驗(yàn),側(cè)重于海量數(shù)據(jù)庫(kù)、大數(shù)據(jù)、機(jī)器學(xué)習(xí)等技術(shù)領(lǐng)域的研究。2012年加入京東,組建并帶領(lǐng)JD-Presto研發(fā)團(tuán)隊(duì)榮獲多個(gè)國(guó)內(nèi)外獎(jiǎng)項(xiàng)。高級(jí)架構(gòu)師-呂信:Presto中國(guó)社區(qū)創(chuàng)建者與管理者,主要從事Hadoop、JD-Presto大數(shù)據(jù)開(kāi)源產(chǎn)品及京東數(shù)據(jù)云的研發(fā)與架構(gòu)設(shè)計(jì),具有豐富的大數(shù)據(jù)解決方案及大數(shù)據(jù)公有云解決方案的設(shè)計(jì)及開(kāi)發(fā)經(jīng)驗(yàn)。架構(gòu)師-郭李明:2012年入職京東,一直從事與大數(shù)據(jù)分布式架構(gòu)相關(guān)的技術(shù)研究,參與并主導(dǎo)了Presto京東開(kāi)源版本的核心功能開(kāi)發(fā),致力于大數(shù)據(jù)計(jì)算的解決方案研究。高級(jí)工程師-袁安峰:擅長(zhǎng)Presto性能調(diào)優(yōu)與Bug修復(fù),對(duì)Presto的SQL優(yōu)化器有深入研究, 同時(shí)一直致力于對(duì)Presto底層實(shí)現(xiàn)原理的研究和探索。負(fù)責(zé)CSDN極客社區(qū)Presto板塊維護(hù),熱衷于分享研究Presto技術(shù)原理的文章以及對(duì)Presto使用的心得和體會(huì)。高級(jí)工程師-孔云龍:對(duì)HDFS、MapReduce、Hive等Hadoop生態(tài)系統(tǒng)中的技術(shù)有比較深入研究,在分布式查詢(xún)引擎Presto和分布式消息系統(tǒng)Kafka的功能改造和優(yōu)化方面積累了豐富的經(jīng)驗(yàn)。目前正在京東公有云部門(mén)從事數(shù)據(jù)計(jì)算服務(wù)相關(guān)研發(fā)工作。

圖書(shū)目錄

第一部分 基礎(chǔ)篇第 1 章 Presto概述21.1 Presto 背景及發(fā)展21.2 Presto 特點(diǎn)21.3 基本概念31.3.1 Presto 服務(wù)進(jìn)程31.3.2 Presto 模型41.3.3 Presto 查詢(xún)執(zhí)行模型 51.4 Presto 整體架構(gòu)91.4.1 硬件架構(gòu)91.4.2 軟件架構(gòu)91.5 小結(jié)11第 2 章 Presto 安裝與部署122.1 環(huán)境說(shuō)明 122.2 準(zhǔn)備工作132.2.1 建立 SSH 信任關(guān)系132.2.2 安裝 Java 172.2.3 安裝 Maven 172.2.4 安裝 Hive 182.3 源碼編譯212.3.1 下載源碼 212.3.2 源碼結(jié)構(gòu)說(shuō)明 222.3.3 編譯 262.4 部署 302.4.1 服務(wù)部署 302.4.2 客戶(hù)端部署 382.4.3 JDBC 使用 402.5 小結(jié) 42第二部分 核心設(shè)計(jì)篇第 3 章 Presto RESTful 框架解析 443.1 Statement 服務(wù)接口 443.2 Query 服務(wù)接口 473.3 Stage 服務(wù)接口483.4 Task 服務(wù)接口493.5 小結(jié) 52第 4 章 提交查詢(xún) 534.1 提交查詢(xún)的步驟 534.2 源碼解析 534.3 提交查詢(xún)的流程 604.4 小結(jié) 61第 5 章 生成查詢(xún)執(zhí)行計(jì)劃 625.1 基本概念 635.1.1 Node 635.1.2 Metadata API 675.2 詞法與語(yǔ)法分析 685.2.1 語(yǔ)法規(guī)則 695.2.2 詞法分析 695.2.3 語(yǔ)法分析 715.3 獲取 QueryExecution 725.3.1 獲取 QueryExecutionFactory 725.3.2 創(chuàng)建 QueryExecution 735.3.3 啟動(dòng) QueryExecution 745.4 語(yǔ)義分析 775.4.1 Statement 分析 775.4.2 Relation 分析845.4.3 表達(dá)式分析 915.5 執(zhí)行計(jì)劃生成915.5.1 執(zhí)行計(jì)劃節(jié)點(diǎn) 915.5.2 SQL 執(zhí)行計(jì)劃935.5.3 Relation 執(zhí)行計(jì)劃955.5.4 Query 執(zhí)行計(jì)劃 995.6 執(zhí)行計(jì)劃優(yōu)化1025.6.1 ImplementSampleAsFilter 1025.6.2 CanonicalizeExpressions 1025.6.3 SimplifyExpressions 1025.6.4 UnaliasSymbolReferences 1035.6.5 PruneRedundantProjections 1035.6.6 SetFlatteningOptimizer 1035.6.7 LimitPushDown 1045.6.8 PredicatePushDown 1045.6.9 MergeProjections 1045.6.10 ProjectionPushDown 1045.6.11 IndexJoinOptimizer1055.6.12 CountConstantOptimizer 1055.6.13 WindowFilterPushDown 1055.6.14 HashGenerationOptimizer 1055.6.15 PruneUnreferencedOutputs 1065.6.16 MetadataQueryOptimizer 1065.6.17 SingleDistinctOptimizer 1065.6.18 BeginTableWrite 1065.6.19 AddExchanges 1075.6.20 PickLayout 1075.7 執(zhí)行計(jì)劃分段1075.7.1 Source 1075.7.2 Fixed 1075.7.3 Single 1075.7.4 Coordinator_only 1075.8 示例1085.8.1 Count 執(zhí)行計(jì)劃1085.8.2 Join 執(zhí)行計(jì)劃1085.9 小結(jié)110第 6 章 查詢(xún)調(diào)度 1116.1 生成調(diào)度執(zhí)行器 1116.2 查詢(xún)調(diào)度過(guò)程 1136.2.1 NodeManager 1146.2.2 NodeSelector 1156.3 小結(jié) 118第 7 章 查詢(xún)執(zhí)行 1197.1 查詢(xún)執(zhí)行邏輯 1207.2 Task 調(diào)度1207.2.1 Source Task 調(diào)度1207.2.2 Fixed Task 調(diào)度1267.2.3 Single Task 調(diào)度 1287.2.4 Coordinator_Only Task 調(diào)度 1287.3 Task 執(zhí)行1297.3.1 創(chuàng)建 Task 1297.3.2 更新 Task 1357.3.3 運(yùn)行 Task 1407.4 小結(jié) 147第 8 章 隊(duì)列 1488.1 配置說(shuō)明 1488.1.1 queues 隊(duì)列定義1498.1.2 rules 規(guī)則定義 1498.2 隊(duì)列加載 1508.3 隊(duì)列匹配 1518.4 小結(jié) 154第 9 章 System Connector 1559.1 System Connector 使用1559.1.1 Information_schema 1559.1.2 Metadata 1579.1.3 Runtime 1579.2 System Connector 實(shí)現(xiàn)1599.2.1 Information_schema 實(shí)現(xiàn)1609.2.2 System Connector 實(shí)現(xiàn)1639.3 小結(jié) 168第 10 章 Hive Connector 16910.1 與 Hive 的結(jié)合 17010.2 Split 分片管理  17510.3 數(shù)據(jù)讀取17910.4 Create Table As Select 的實(shí)現(xiàn) 18210.5 小結(jié)186第 11 章 Kafka Connector 18711.1 認(rèn)識(shí) Kafka Connector 18711.1.1 配置18711.1.2 配置屬性18711.1.3 內(nèi)置字段18911.1.4 表定義文件19011.1.5 Kafka 中的 key 和 message 19111.1.6 行解碼19211.1.7 日期和時(shí)間解碼器19411.1.8 文本解碼器19411.1.9 數(shù)值解碼器19411.2 Kafka 連接器使用教程19411.2.1 安裝 Apache Kafka19511.2.2 下載數(shù)據(jù)19511.2.3 在 Presto 中配置 Kafka topics 19711.2.4 基本數(shù)據(jù)查詢(xún)19711.2.5 添加表定義文件19911.2.6 將 message 中所有值映射到不同列20011.2.7 使用實(shí)時(shí)數(shù)據(jù)20211.3 Kafka Connector 獲取數(shù)據(jù) 20711.3.1 Split 分片管理20711.3.2 數(shù)據(jù)讀取20911.4 小結(jié)210第 12 章 Connector 開(kāi)發(fā)21112.1 創(chuàng)建 Maven 工程 21112.2 注冊(cè) Plugin 21312.3 Connector 21312.4 Metadata 21512.5 SplitManager 21712.6 RecordSetProvider 21812.7 小結(jié) 219第 13 章 Functions 開(kāi)發(fā)22013.1 Function 注冊(cè) 22013.2 窗口函數(shù) 22513.3 聚合函數(shù) 22913.4 小結(jié) 232第三部分 高級(jí)篇第 14 章 JD-Presto 功能改造23414.1 PDBO 功能開(kāi)發(fā)23414.1.1 JDBC Split 剖析23514.1.2 JdbcRecordCursor 剖析 23814.1.3 分批次讀取實(shí)現(xiàn)原理 24014.1.4 動(dòng)態(tài)步長(zhǎng)實(shí)現(xiàn)原理 24314.1.5 條件下發(fā) 24514.1.6 PDBO 配置定義 24714.2 DDL 及 DML 支持 25014.2.1 Hive 連接器 Insert 功能 25014.2.2 Hive 連接器 CTAS 動(dòng)態(tài)分區(qū)表功能 25214.3 動(dòng)態(tài)增加、修改、刪除 Catalog 25414.3.1 目的 25414.3.2 現(xiàn)狀 25414.3.3 實(shí)現(xiàn) 25514.3.4 效果 25814.4 小結(jié) 258第 15 章 Presto 性能調(diào)優(yōu)25915.1 合理設(shè)計(jì)分區(qū) 25915.2 Group By 字句優(yōu)化 25915.3 使用模糊聚合函數(shù) 25915.4 合并多條 Like 子句為一條 regexp_like 子句26015.5 大表放在 Join 子句左邊26015.6 關(guān)閉 distributed hash join 26115.7 使用 ORC 存儲(chǔ) 26115.8 小結(jié) 262第 16 章 Presto 應(yīng)用場(chǎng)景 26316.1 ETL 26316.2 實(shí)時(shí)數(shù)據(jù)計(jì)算26416.3 Ad-Hoc 查詢(xún)26616.4 實(shí)時(shí)數(shù)據(jù)流分析26616.5 小結(jié)268附錄 A 常見(jiàn)問(wèn)題及解決辦法269A.1 同時(shí)訪(fǎng)問(wèn)兩個(gè) Hadoop 集群269A.2 Kafka 集群重啟后無(wú)法獲取數(shù)據(jù)272A.3 Task exceeded max memory size 277A.4 SQL 中 In 子句太長(zhǎng)導(dǎo)致棧溢出錯(cuò)誤278A.5 高并發(fā)導(dǎo)致大量查詢(xún)出錯(cuò)279附錄 B Presto 配置參數(shù)說(shuō)明 282附錄 C Presto 執(zhí)行信息說(shuō)明289

本目錄推薦

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