|
ClickHouse性能之巔:從架構設計解讀性能之謎
|
|
|
|
|
|
|
|
|
ISBN |
9787111716587 |
定价 |
RMB89.00 |
售价 |
RM97.90 |
优惠价 |
RM68.53 * (-30%)
|
作者 |
陳峰
|
出版社 |
機械工業出版社
|
出版日期 |
2022-12-24 |
装订 |
平裝. 單色印刷. 175 页. 26. |
库存量 |
購買後立即進貨 下单时可选择“空运”或“海运”(空运和海运需独立下单)。空运费每本书/CD是RM24.00。 空运需时8-11个工作天,海运需时约30个工作天。 (以上预计时间不包括出版社调货的时间以及尚未出版的预购商品) 库存有限或需要调货,订购时间可能延长。如无法订购则将通知进行退款。 |
|
我要订购 有现货时通知我 |
|
放入下次购买清单 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
購買中國簡體書籍請注意:
1. 因裝幀品質及貨運條件未臻完善,中國簡體書可能有出現磨痕、凹痕、折痕等問題,故簡體字館除封面破損、內頁脫落、缺頁等較嚴重的狀態外,其餘所有商品將正常出貨。
|
|
|
|
|
|
|
|
|
目錄
讚譽
序1
序2
自序
前言
第一部分 架構篇
第1章 資料倉庫的核心技術 3
1.1 OLAP和OLTP的本質區別 4
1.1.1 數據三範式 4
1.1.2 規範化的意義 6
1.1.3 規範化的局限 7
1.1.4 數倉建模的本質 7
1.1.5 OLAP和OLTP的底層資料模型 8
1.1.6 維度建模 8
1.2 典型大資料數倉技術及其核心思路 10
1.2.1 Hive 10
1.2.2 HBase 11
1.2.3 Kylin 12
1.2.4 其他數倉 13
1.3 傳統數倉的缺陷 13
1.3.1 效率低 13
1.3.2 延遲高 14
1.3.3 成本高 14
1.4 ClickHouse查詢性能的優勢 15
1.4.1 向量化引擎 15
1.4.2 高效的資料壓縮 16
1.4.3 高效的I/O優化 17
1.5 本章小結 18
第2章 ClickHouse簡介 19
2.1 ClickHouse的4個標籤 19
2.1.1 性能強大 19
2.1.2 單機處理能力強 20
2.1.3 成本低 21
2.1.4 不支援事務 21
2.2 ClickHouse的3個適用場景 22
2.2.1 BI報表的互動式分析 22
2.2.2 互聯網日誌分析 22
2.2.3 廣告行銷 23
2.3 本章小結 24
第3章 ClickHouse架構概覽 25
3.1 ClickHouse架構簡介 26
3.2 ClickHouse的核心抽象 27
3.2.1 列和欄位 27
3.2.2 資料類型 28
3.2.3 塊 32
3.2.4 表 33
3.3 ClickHouse的運作過程 35
3.3.1 資料插入過程 35
3.3.2 資料查詢過程 35
3.3.3 資料更新和資料刪除過程 36
3.4 本章小結 37
第4章 MergeTree存儲引擎架構 39
4.1 MergeTree存儲引擎的三大特點 40
4.2 MergeTree的資料組織 41
4.2.1 塊 41
4.2.2 資料堆放方式 41
4.3 MergeTree的檔組織 43
4.3.1 資料檔案、中繼資料檔、索引檔和其他檔 45
4.3.2 分區 47
4.3.3 資料庫和表 48
4.4 索引 49
4.4.1 主鍵索引 49
4.4.2 標記 49
4.5 與交易資料庫存儲引擎的對比 50
4.6 存儲引擎如何影響查詢速度 52
4.6.1 預排序 52
4.6.2 列存 52
4.6.3 壓縮 53
4.7 MergeTree存儲引擎的工作過程 53
4.7.1 資料庫、資料表的創建過程 54
4.7.2 資料插入過程 54
4.7.3 分區合併和刪除過程 54
4.7.4 資料讀取過程 56
4.8 本章小結 59
第5章 ClickHouse計算引擎架構 61
5.1 ClickHouse計算引擎的架構簡介與設計思想 61
5.1.1 整體架構 62
5.1.2 SQL解析器 62
5.1.3 解譯器 63
5.1.4 執行器 63
5.1.5 設計思想 64
5.2 火山模型 65
5.2.1 火山模型概述 65
5.2.2 火山模型的原理 66
5.2.3 火山模型的優點與缺點 67
5.3 向量化引擎 67
5.3.1 向量化引擎的實現方式 68
5.3.2 ClickHouse中的向量化運算元 69
5.3.3 向量化引擎的前提 70
5.4 計算引擎如何影響查詢速度 72
5.4.1 ClickHouse查詢速度快的前提 72
5.4.2 ClickHouse查詢速度快的本質 74
5.5 本章小結 74
第6章 ClickHouse與其他數倉架構的對比 75
6.1 ClickHouse與Hive的對比 75
6.1.1 Hive的資料檔案 76
6.1.2 Hive的存儲系統 82
6.1.3 Hive計算引擎與ClickHouse計算引擎的差異 84
6.1.4 ClickHouse比Hive查詢速度快的原因 85
6.2 ClickHouse與HBase的對比 86
6.2.1 HBase的資料模型 86
6.2.2 HBase的存儲系統與ClickHouse的異同 87
6.2.3 HBase的適用場景及ClickHouse不適合的原因 87
6.3 ClickHouse與Kylin的對比 88
6.3.1 Kylin的架構 88
6.3.2 Kylin解決性能問題的思路 88
6.3.3 Kylin方案的缺陷 89
6.3.4 ClickHouse的方案 89
6.4 本章小結 91
第7章 深度思考:決定外在能力的因素 93
7.1 從架構層面分析ClickHouse 93
7.1.1 ClickHouse速度快的前提 93
7.1.2 對ClickHouse的一些誤解 94
7.2 結構決定功能 95
7.2.1 方法論 96
7.2.2 意義 97
7.2.3 不要過度設計 98
7.3 從ClickHouse的設計來理解 99
7.3.1 結構決定能力的上限 99
7.3.2 結構決定應用層演算法 99
7.4 本章小結 100
第二部分 實戰篇
第8章 ClickHouse使用技巧 105
8.1 資料導入、匯出技巧 105
8.1.1 外部文件導入、匯出技巧 105
8.1.2 靈活使用集成表引擎導入、匯出資料 109
8.2 建表技巧 117
8.2.1 表引擎選擇技巧 118
8.2.2 分區鍵選擇技巧 120
8.2.3 資料結構選擇技巧 120
8.2.4 分區技巧 121
8.3 高級技巧 121
8.3.1 物化視圖 121
8.3.2 投影 122
8.3.3 點陣圖 122
8.3.4 變更數據捕獲 123
8.4 常見報錯及處理方法 123
8.5 本章小結 124
第9章 ClickHouse實現使用者畫像系統 125
9.1 用戶畫像概述 125
9.1.1 使用者畫像系統介紹 125
9.1.2 使用者畫像系統的需求描述 127
9.1.3 使用者畫像系統的需求分析 127
9.1.4 使用者畫像系統的架構 128
9.2 使用者畫像系統的關鍵技術實現 129
9.2.1 技術選型 129
9.2.2 分析階段 130
9.2.3 運營階段 136
9.3 基於ClickHouse的使用者畫像系統的優點 137
9.4 本章小結 139
第10章 ClickHouse的存算分離架構 141
10.1 存算分離架構背景 141
10.1.1 相關概述 141
10.1.2 存算分離的典型架構 142
10.1.3 存算分離的意義 143
10.1.4 存算分離的局限 145
10.2 ClickHouse中的存算分離 147
10.2.1 實現方式 147
10.2.2 注意事項 150
10.3 存算分離架構給ClickHouse帶來的優勢 151
10.4 本章小結 152
第11章 ClickHouse的分散式架構 153
11.1 架構特點及對比 153
11.1.1 ClickHouse分散式架構的優點 154
11.1.2 ClickHouse分散式架構的缺點 155
11.1.3 ClickHouse與Hadoop的分散式架構對比 156
11.2 基本概念 156
11.2.1 集群 157
11.2.2 副本 158
11.2.3 分片 159
11.3 ClickHouse的複製表引擎 160
11.3.1 創建複製錶 160
11.3.2 複製錶複製 161
11.3.3 複製錶查詢 161
11.4 ClickHouse分散式表引擎 162
11.4.1 創建分散式表 162
11.4.2 分散式表查詢原理 163
11.4.3 分散式表的資料寫入方案 165
11.4.4 分散式表中副本的處理方式 165
11.5 本章小結 166
第12章 ClickHouse性能優化 167
12.1 性能優化的原則 167
12.2 資料結構優化 168
12.3 記憶體優化 171
12.4 磁片優化 171
12.5 網路優化 173
12.6 CPU優化 173
12.7 查詢優化 174
12.8 資料移轉優化 176
12.9 本章小結 177 |
|
|
|
|
|
|
|
|
|
|
|