最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

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

2023-07-07 23:52 作者:流浪在銀河邊緣的阿強  | 我要投稿

鏈接:https://pan.baidu.com/s/1-WeUSOllvSXtoeeZbFasOw?pwd=f14v?

提取碼:f14v

朱凱

ClickHouse貢獻者之一,ClickHouse布道者,資深架構(gòu)師,騰訊云*具價值專家TVP,開源愛好者,Apache DolphinScheduler Committer,《企業(yè)級大數(shù)據(jù)平臺構(gòu)建:架構(gòu)與實現(xiàn)》作者,公眾號“ClickHouse的秘密基地”運營者。

十多年IT從業(yè)經(jīng)驗,對大數(shù)據(jù)領(lǐng)域主流技術(shù)與解決方案有深入研究,擅長分布式系統(tǒng)的架構(gòu)設(shè)計與整合。曾主導(dǎo)過多款大數(shù)據(jù)平臺級產(chǎn)品的規(guī)劃、設(shè)計與研發(fā)工作,一線實戰(zhàn)經(jīng)驗豐富?,F(xiàn)就職于遠光軟件股份有限公司,任大數(shù)據(jù)事業(yè)部平臺開發(fā)部總經(jīng)理。

精彩書評

ClickHouse可能是目前開源項目里運行得最快的OLAP引擎,它既強大又神秘,且讓很多初學(xué)者無從下手。相信這本書的出現(xiàn)能很大程度上改變這種狀況。從運行原理到使用方法再到安裝部署和運維監(jiān)控,本書詳細介紹了關(guān)于ClickHouse的方方面面。對于ClickHouse的使用者、運維人員以及技術(shù)愛好者來說,本書都是很好的參考書。

——騰訊開源聯(lián)盟主席、數(shù)據(jù)平臺部總監(jiān)/Apache Hadoop PMC 堵俊平


ClickHouse成為我們的AIOps項目裝上的“極速引擎”,很大程度上解決了海量數(shù)據(jù)吞吐、低成本存儲與快速分析的問題。從調(diào)研、測試到大規(guī)模使用,在這個過程中我們踩了很多坑,現(xiàn)在能有這樣一本深入淺出、生動幽默地介紹ClickHouse的工具書,一定可以幫你快速上手這匹數(shù)據(jù)分析領(lǐng)域的“黑馬”。

——新浪智能運維數(shù)據(jù)分析平臺主管 高鵬


對于海量數(shù)據(jù)交互式分析,ClickHouse無疑是很好的選擇。本書對ClickHouse的基本概念、架構(gòu)和常用技巧進行了詳細描述,尤其對ClickHouse的精華——MergeTree表引擎進行了深入講解。推薦閱讀。

——蘇寧大數(shù)據(jù)高級架構(gòu)師/ClickHouse Contributor 楊兆輝


本書內(nèi)容專業(yè)且詳盡,特別是介紹MergeTree的相關(guān)章節(jié)。你值得擁有!

——趣頭條大數(shù)據(jù)平臺負責(zé)人 王金海


本書深入淺出,全面介紹了ClickHouse的使用方法與核心原理,是學(xué)習(xí)ClickHouse的必備資料。推薦大家閱讀本書。

——祺曜互娛資深技術(shù)專家 李根


目錄

目  錄 Contents

推薦序一

推薦序二

推薦序三

推薦序四

推薦序五

贊譽

前言

第1章 ClickHouse的前世今生1

1.1 傳統(tǒng)BI系統(tǒng)之殤2

1.2 現(xiàn)代BI系統(tǒng)的新思潮2

1.3 OLAP常見架構(gòu)分類4

1.4 OLAP實現(xiàn)技術(shù)的演進6

1.5 一匹橫空出世的黑馬7

1.5.1 天下武功唯快不破8

1.5.2 社區(qū)活躍8

1.6 ClickHouse的發(fā)展歷程8

1.6.1 順理成章的MySQL時期9

1.6.2 另辟蹊徑的Metrage時期10

1.6.3 自我突破的OLAPServer時期10

1.6.4 水到渠成的ClickHouse時代11

1.7 ClickHouse的名稱含義12

1.8 ClickHouse適用的場景12

1.9 ClickHouse不適用的場景13

1.10 有誰在使用ClickHouse13

1.11 本章小結(jié)13

第2章 ClickHouse架構(gòu)概述14

2.1 ClickHouse的核心特性14

2.1.1 完備的DBMS功能15

2.1.2 列式存儲與數(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è)計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 特定場景,特殊優(yōu)化25

2.3.5 持續(xù)測試,持續(xù)改進25

2.4 本章小結(jié)26

第3章 安裝與部署27

3.1 ClickHouse的安裝過程27

3.1.1 環(huán)境準(zhǔn)備27

3.1.2 安裝ClickHouse28

3.2 客戶端的訪問接口31

3.2.1 CLI31

3.2.2 JDBC33

3.3 內(nèi)置的實用工具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ù)庫49

4.2.2 數(shù)據(jù)表50

4.2.3 默認值表達式52

4.2.4 臨時表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 移動數(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)置字典配置說明65

5.1.2 使用內(nèi)置字典67

5.2 外部擴展字典67

5.2.1 準(zhǔn)備字典數(shù)據(jù)67

5.2.2 擴展字典配置文件的元素組成68

5.2.3 擴展字典的數(shù)據(jù)結(jié)構(gòu)69

5.2.4 擴展字典的類型71

5.2.5 擴展字典的數(shù)據(jù)源79

5.2.6 擴展字典的數(shù)據(jù)更新策略84

5.2.7 擴展字典的基本操作85

5.3 本章小結(jié)87

第6章 MergeTree原理解析88

6.1 MergeTree的創(chuàng)建方式與存儲結(jié)構(gòu)89

6.1.1 MergeTree的創(chuàng)建方式89

6.1.2 MergeTree的存儲結(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ū)目錄的合并過程95

6.3 一級索引98

6.3.1 稀疏索引98

6.3.2 索引粒度99

6.3.3 索引數(shù)據(jù)的生成規(guī)則99

6.3.4 索引的查詢過程101

6.4 二級索引102

6.4.1 granularity與index_granularity的關(guān)系104

6.4.2 跳數(shù)索引的類型105

6.5 數(shù)據(jù)存儲106

6.5.1 各列獨立存儲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 對于分區(qū)、索引、標(biāo)記和壓縮數(shù)據(jù)的協(xié)同總結(jié)113

6.7.1 寫入過程113

6.7.2 查詢過程114

6.7.3 數(shù)據(jù)標(biāo)記與壓縮數(shù)據(jù)塊的對應(yīng)關(guān)系114

6.8 本章小結(jié)116

第7章 MergeTree系列表引擎117

7.1 MergeTree117

7.1.1 數(shù)據(jù)TTL117

7.1.2 多路徑存儲策略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章 其他常見類型表引擎145

8.1 外部存儲類型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 注意事項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í)行計劃203

9.16 本章小結(jié)207

第10章 副本與分片208

10.1 概述208

10.2 數(shù)據(jù)副本209

10.2.1 副本的特點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 基于集群實現(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章 管理與運維252

11.1 用戶配置252

11.1.1 用戶profile252

11.1.2 配置約束253

11.1.3 用戶定義254

11.2 權(quán)限管理257

11.2.1 訪問權(quán)限257

11.2.2 查詢權(quán)限258

11.2.3 數(shù)據(jù)行級權(quán)限259

11.3 熔斷機制261

11.4 數(shù)據(jù)備份263

11.4.1 導(dǎo)出文件備份263

11.4.2 通過快照表備份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

查看全部↓

前言/序言

為什么要寫這本書

生生不息,“折騰”不止。為什么新的技術(shù)層出不窮,一直會更替變換?因為人們總是樂于追求更加美好的事物,因此業(yè)務(wù)總會產(chǎn)生新的訴求。

在軟件領(lǐng)域,技術(shù)與業(yè)務(wù)猶如一對不可拆分的雙軌車道,承載著產(chǎn)品這輛火車穩(wěn)步向前。一方面,業(yè)務(wù)的訴求必須得到滿足,所以它倒逼技術(shù)提升;另一方面,技術(shù)的提升又為業(yè)務(wù)模式帶來了新的可能。


ClickHouse原理解析與應(yīng)用實踐的評論 (共 條)

分享到微博請遵守國家法律
崇阳县| 贵州省| 太谷县| 孟州市| 潞西市| 宣威市| 呼玛县| 电白县| 临朐县| 辽宁省| 古浪县| 邵阳市| 汉沽区| 拜泉县| 广西| 泗洪县| 莎车县| 宿迁市| 通海县| 嘉定区| 滨州市| 丽江市| 沛县| 措美县| 长兴县| 蕲春县| 昌黎县| 固原市| 高雄县| 蓬安县| 邯郸县| 平陆县| 北安市| 博罗县| 兰西县| 鹤壁市| 莲花县| 平阴县| 台北县| 沙湾县| 资兴市|