预购商品
书目分类
特别推荐
讚譽 序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
最近浏览商品
客服公告
热门活动
订阅电子报