注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)ClickHouse原理解析與應(yīng)用實(shí)踐

ClickHouse原理解析與應(yīng)用實(shí)踐

ClickHouse原理解析與應(yīng)用實(shí)踐

定 價(jià):¥79.00

作 者: 朱凱 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 數(shù)據(jù)庫(kù)技術(shù)叢書(shū)
標(biāo) 簽: 暫缺

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


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

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

  這是一本可幫助讀者深度理解并全面掌握ClickHouse運(yùn)行原理并進(jìn)行實(shí)踐開(kāi)發(fā)的工具書(shū),涵蓋了ClickHouse的時(shí)代背景、發(fā)展歷程、核心概念、基礎(chǔ)功能、運(yùn)行原理、實(shí)踐指導(dǎo)等多個(gè)維度的內(nèi)容,尤其是在ClickHouse最核心的部分——MergeTree表引擎與分布式方面,書(shū)中對(duì)其實(shí)現(xiàn)原理和應(yīng)用技巧進(jìn)行了詳細(xì)解讀。本書(shū)采用淺顯易懂的語(yǔ)言+大量演示案例+大量示意圖例的形式呈現(xiàn),以求讓讀者在最短的時(shí)間內(nèi),以最舒服的方式,獲得最核心的知識(shí)。本書(shū)的理論觀點(diǎn)來(lái)自作者在OLAP領(lǐng)域10余年的工作思考與總結(jié);功能與實(shí)操的素材來(lái)自作者在工作中對(duì)ClickHouse的深度應(yīng)用與實(shí)踐;原理解析部分的素材來(lái)自對(duì)大量專業(yè)文獻(xiàn)的鉆研與源碼級(jí)的調(diào)試與解讀。本書(shū)在邏輯上分為三大部分:第1~2章從宏觀的角度出發(fā),描述了時(shí)代背景、ClickHouse的發(fā)展歷程及其核心特點(diǎn)。其中,對(duì)MOLAP、ROLAP和HOLAP三種架構(gòu)形態(tài)的優(yōu)缺點(diǎn)進(jìn)行了詳細(xì)解讀,對(duì)ClickHouse的發(fā)展歷程和架構(gòu)形態(tài)進(jìn)行了深度剖析,目的是幫助讀者從根本上了解ClickHouse為什么具有這么高的性能。第3~5章從實(shí)踐應(yīng)用的角度出發(fā),詳細(xì)介紹了ClickHouse基礎(chǔ)功能的使用方法和技巧,其中包括對(duì)數(shù)據(jù)庫(kù)、數(shù)據(jù)表、視圖、數(shù)據(jù)字典等重點(diǎn)功能的剖析和演示。第6~11章從原理的角度出發(fā),解析了ClickHouse核心功能的運(yùn)行機(jī)理。重點(diǎn)介紹了六大類數(shù)十種表引擎的主要特點(diǎn)與使用方法。其中對(duì)MergeTree的原理進(jìn)行了深度解析,對(duì)它的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)、分區(qū)索引、一級(jí)索引、二級(jí)索引、壓縮數(shù)據(jù)塊、數(shù)據(jù)標(biāo)記等重要概念進(jìn)行了解讀;對(duì)副本與分片的運(yùn)行原理也進(jìn)行了詳細(xì)剖析;對(duì)它的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)、分布式DDL、分布式協(xié)同的核心操作過(guò)程等進(jìn)行了解讀。

作者簡(jiǎn)介

  朱凱 ClickHouse貢獻(xiàn)者之一,ClickHouse布道者,資深架構(gòu)師,騰訊云*具價(jià)值專家TVP,開(kāi)源愛(ài)好者,Apache DolphinScheduler Committer,《企業(yè)級(jí)大數(shù)據(jù)平臺(tái)構(gòu)建:架構(gòu)與實(shí)現(xiàn)》作者,公眾號(hào)“ClickHouse的秘密基地”運(yùn)營(yíng)者。十多年IT從業(yè)經(jīng)驗(yàn),對(duì)大數(shù)據(jù)領(lǐng)域主流技術(shù)與解決方案有深入研究,擅長(zhǎng)分布式系統(tǒng)的架構(gòu)設(shè)計(jì)與整合。曾主導(dǎo)過(guò)多款大數(shù)據(jù)平臺(tái)級(jí)產(chǎn)品的規(guī)劃、設(shè)計(jì)與研發(fā)工作,一線實(shí)戰(zhàn)經(jīng)驗(yàn)豐富?,F(xiàn)就職于遠(yuǎn)光軟件股份有限公司,任大數(shù)據(jù)事業(yè)部平臺(tái)開(kāi)發(fā)部總經(jīng)理。

圖書(shū)目錄

目  錄 Contents
推薦序一
推薦序二
推薦序三
推薦序四
推薦序五
贊譽(yù)
前言
第1章 ClickHouse的前世今生1
1.1 傳統(tǒng)BI系統(tǒng)之殤2
1.2 現(xiàn)代BI系統(tǒng)的新思潮2
1.3 OLAP常見(jiàn)架構(gòu)分類4
1.4 OLAP實(shí)現(xiàn)技術(shù)的演進(jìn)6
1.5 一匹橫空出世的黑馬7
1.5.1 天下武功唯快不破8
1.5.2 社區(qū)活躍8
1.6 ClickHouse的發(fā)展歷程8
1.6.1 順理成章的MySQL時(shí)期9
1.6.2 另辟蹊徑的Metrage時(shí)期10
1.6.3 自我突破的OLAPServer時(shí)期10
1.6.4 水到渠成的ClickHouse時(shí)代11
1.7 ClickHouse的名稱含義12
1.8 ClickHouse適用的場(chǎng)景12
1.9 ClickHouse不適用的場(chǎng)景13
1.10 有誰(shuí)在使用ClickHouse13
1.11 本章小結(jié)13
第2章 ClickHouse架構(gòu)概述14
2.1 ClickHouse的核心特性14
2.1.1 完備的DBMS功能15
2.1.2 列式存儲(chǔ)與數(shù)據(jù)壓縮15
2.1.3 向量化執(zhí)行引擎16
2.1.4 關(guān)系模型與SQL查詢17
2.1.5 多樣化的表引擎18
2.1.6 多線程與分布式18
2.1.7 多主架構(gòu)19
2.1.8 在線查詢19
2.1.9 數(shù)據(jù)分片與分布式查詢 19
2.2 ClickHouse的架構(gòu)設(shè)計(jì)20
2.2.1 Column與Field20
2.2.2 DataType20
2.2.3 Block與Block流21
2.2.4 Table22
2.2.5 Parser與Interpreter22
2.2.6 Functions 與Aggregate Functions22
2.2.7 Cluster與Replication23
2.3 ClickHouse為何如此之快24
2.3.1 著眼硬件,先想后做24
2.3.2 算法在前,抽象在后24
2.3.3 勇于嘗鮮,不行就換25
2.3.4 特定場(chǎng)景,特殊優(yōu)化25
2.3.5 持續(xù)測(cè)試,持續(xù)改進(jìn)25
2.4 本章小結(jié)26
第3章 安裝與部署27
3.1 ClickHouse的安裝過(guò)程27
3.1.1 環(huán)境準(zhǔn)備27
3.1.2 安裝ClickHouse28
3.2 客戶端的訪問(wèn)接口31
3.2.1 CLI31
3.2.2 JDBC33
3.3 內(nèi)置的實(shí)用工具35
3.3.1 clickhouse-local35
3.3.2 clickhouse-benchmark36
3.4 本章小結(jié)38
第4章 數(shù)據(jù)定義39
4.1 ClickHouse的數(shù)據(jù)類型39
4.1.1 基礎(chǔ)類型40
4.1.2 復(fù)合類型45
4.1.3 特殊類型48
4.2 如何定義數(shù)據(jù)表49
4.2.1 數(shù)據(jù)庫(kù)49
4.2.2 數(shù)據(jù)表50
4.2.3 默認(rèn)值表達(dá)式52
4.2.4 臨時(shí)表53
4.2.5 分區(qū)表54
4.2.6 視圖55
4.3 數(shù)據(jù)表的基本操作56
4.3.1 追加新字段56
4.3.2 修改數(shù)據(jù)類型56
4.3.3 修改備注56
4.3.4 刪除已有字段57
4.3.5 移動(dòng)數(shù)據(jù)表57
4.3.6 清空數(shù)據(jù)表58
4.4 數(shù)據(jù)分區(qū)的基本操作58
4.4.1 查詢分區(qū)信息58
4.4.2 刪除指定分區(qū)58
4.4.3 復(fù)制分區(qū)數(shù)據(jù)59
4.4.4 重置分區(qū)數(shù)據(jù)60
4.4.5 卸載與裝載分區(qū)60
4.4.6 備份與還原分區(qū)61
4.5 分布式DDL執(zhí)行61
4.6 數(shù)據(jù)的寫入61
4.7 數(shù)據(jù)的刪除與修改63
4.8 本章小結(jié)64
第5章 數(shù)據(jù)字典65
5.1 內(nèi)置字典65
5.1.1 內(nèi)置字典配置說(shuō)明65
5.1.2 使用內(nèi)置字典67
5.2 外部擴(kuò)展字典67
5.2.1 準(zhǔn)備字典數(shù)據(jù)67
5.2.2 擴(kuò)展字典配置文件的元素組成68
5.2.3 擴(kuò)展字典的數(shù)據(jù)結(jié)構(gòu)69
5.2.4 擴(kuò)展字典的類型71
5.2.5 擴(kuò)展字典的數(shù)據(jù)源79
5.2.6 擴(kuò)展字典的數(shù)據(jù)更新策略84
5.2.7 擴(kuò)展字典的基本操作85
5.3 本章小結(jié)87
第6章 MergeTree原理解析88
6.1 MergeTree的創(chuàng)建方式與存儲(chǔ)結(jié)構(gòu)89
6.1.1 MergeTree的創(chuàng)建方式89
6.1.2 MergeTree的存儲(chǔ)結(jié)構(gòu)91
6.2 數(shù)據(jù)分區(qū)93
6.2.1 數(shù)據(jù)的分區(qū)規(guī)則93
6.2.2 分區(qū)目錄的命名規(guī)則94
6.2.3 分區(qū)目錄的合并過(guò)程95
6.3 一級(jí)索引98
6.3.1 稀疏索引98
6.3.2 索引粒度99
6.3.3 索引數(shù)據(jù)的生成規(guī)則99
6.3.4 索引的查詢過(guò)程101
6.4 二級(jí)索引102
6.4.1 granularity與index_granularity的關(guān)系104
6.4.2 跳數(shù)索引的類型105
6.5 數(shù)據(jù)存儲(chǔ)106
6.5.1 各列獨(dú)立存儲(chǔ)106
6.5.2 壓縮數(shù)據(jù)塊106
6.6 數(shù)據(jù)標(biāo)記109
6.6.1 數(shù)據(jù)標(biāo)記的生成規(guī)則109
6.6.2 數(shù)據(jù)標(biāo)記的工作方式110
6.7 對(duì)于分區(qū)、索引、標(biāo)記和壓縮數(shù)據(jù)的協(xié)同總結(jié)113
6.7.1 寫入過(guò)程113
6.7.2 查詢過(guò)程114
6.7.3 數(shù)據(jù)標(biāo)記與壓縮數(shù)據(jù)塊的對(duì)應(yīng)關(guān)系114
6.8 本章小結(jié)116
第7章 MergeTree系列表引擎117
7.1 MergeTree117
7.1.1 數(shù)據(jù)TTL117
7.1.2 多路徑存儲(chǔ)策略121
7.2 ReplacingMergeTree128
7.3 SummingMergeTree130
7.4 AggregatingMergeTree134
7.5 CollapsingMergeTree137
7.6 VersionedCollapsingMergeTree140
7.7 各種MergeTree之間的關(guān)系總結(jié)141
7.7.1 繼承關(guān)系141
7.7.2 組合關(guān)系143
7.8 本章小結(jié)144
第8章 其他常見(jiàn)類型表引擎145
8.1 外部存儲(chǔ)類型145
8.1.1 HDFS145
8.1.2 MySQL149
8.1.3 JDBC150
8.1.4 Kafka152
8.1.5 File157
8.2 內(nèi)存類型158
8.2.1 Memory159
8.2.2 Set159
8.2.3 Join160
8.2.4 Buffer162
8.3 日志類型164
8.3.1 TinyLog164
8.3.2 StripeLog165
8.3.3 Log166
8.4 接口類型167
8.4.1 Merge167
8.4.2 Dictionary168
8.4.3 Distributed169
8.5 其他類型170
8.5.1 Live View170
8.5.2 Null171
8.5.3 URL171
8.6 本章小結(jié)173
第9章 數(shù)據(jù)查詢174
9.1 WITH子句175
9.2 FROM子句177
9.3 SAMPLE子句178
9.4 ARRAY JOIN子句180
9.5 JOIN子句183
9.5.1 連接精度184
9.5.2 連接類型186
9.5.3 多表連接189
9.5.4 注意事項(xiàng)190
9.6 WHERE與PREWHERE子句190
9.7 GROUP BY子句193
9.7.1 WITH ROLLUP194
9.7.2 WITH CUBE194
9.7.3 WITH TOTALS195
9.8 HAVING子句195
9.9 ORDER BY子句197
9.10 LIMIT BY子句198
9.11 LIMIT子句199
9.12 SELECT子句200
9.13 DISTINCT子句200
9.14 UNION ALL子句202
9.15 查看SQL執(zhí)行計(jì)劃203
9.16 本章小結(jié)207
第10章 副本與分片208
10.1 概述208
10.2 數(shù)據(jù)副本209
10.2.1 副本的特點(diǎn)212
10.2.2 ZooKeeper的配置方式212
10.2.3 副本的定義形式213
10.3 ReplicatedMergeTree原理解析214
10.3.1 數(shù)據(jù)結(jié)構(gòu)215
10.3.2 副本協(xié)同的核心流程217
10.4 數(shù)據(jù)分片228
10.4.1 集群的配置方式228
10.4.2 基于集群實(shí)現(xiàn)分布式DDL232
10.5 Distributed原理解析236
10.5.1 定義形式236
10.5.2 查詢的分類237
10.5.3 分片規(guī)則238
10.5.4 分布式寫入的核心流程239
10.5.5 分布式查詢的核心流程245
10.6 本章小結(jié)251
第11章 管理與運(yùn)維252
11.1 用戶配置252
11.1.1 用戶profile252
11.1.2 配置約束253
11.1.3 用戶定義254
11.2 權(quán)限管理257
11.2.1 訪問(wèn)權(quán)限257
11.2.2 查詢權(quán)限258
11.2.3 數(shù)據(jù)行級(jí)權(quán)限259
11.3 熔斷機(jī)制261
11.4 數(shù)據(jù)備份263
11.4.1 導(dǎo)出文件備份263
11.4.2 通過(guò)快照表備份264
11.4.3 按分區(qū)備份264
11.5 服務(wù)監(jiān)控265
11.5.1 系統(tǒng)表266
11.5.2 查詢?nèi)罩?67
11.6 本章小結(jié)270

本目錄推薦

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